Sanat Yapan Yapay Zeka

Kendi bilincimizi tanıdığımız kadarıyla, sanatçı olmanın ölçülebilir sayısal bir girdisi yok. Sanatçılık “Yazmak zorundaydım yoksa çıldıracaktım” dedirtecek kadar bilincimizin derinliklerinde. Bir takım sanatçıların kafasına elektrotlar bağlayıp ilham perisinin neler söylediğini keşfedecek bir teknoloji de henüz bilmiyoruz. O yüzden bildiğimiz yerlerden, matematikten, giderek aşkı, öfkeyi, hayal kırıklığını ve daha nicelerini notalara dökecek YZ modellerini nasıl geliştirebiliriz buyrun anlatayım.

Aşağıda gördüğünüz bir auto encoder-decoder yapay sinir ağı mimarisi. Sol taraftan çok boyutlu bir girdi alıyor, “encoder” denilen kısmı bunu adım adım az sayıda parametreye düşürüyor. Daha sonra “decoder” kısmı bu parametrelerden girdiyle eşit boyutlu bir çıktı oluşturuyor.

nn2

 

Bu mimaride bir yapay sinir ağına Picasso’nun resimlerini versek ve çıktı olarak verdiğimiz resimlerin aynısını bize geri vermesini istesek (yani $x=d(e(x))$ koşuluyla eğitsek), yapay zekamız önce resmin tamamını az sayıda parametreye indirip (encoding) sonra da bu az sayıda parametreye bakarak resmin tamamını yeniden oluşturmayı (decoding) öğrenmiş olur. Yukarıdaki mimari ortaya doğru daraldığı için model her adımda resmin tamamını aktaramıyor, mecburen resimlerin içerisinde kendince önemli bulduğu bir takım özellikleri öğrenmek zorunda kalıyor. Eh ortadaki az sayıda özelliğe bakarak resmin tamamını oluşturmayı da öğrendiğine göre, elimizde Picasso gibi resim yapmayı bilen bir YZ var diyebilir miyiz? Hemencik değil, şöyle ki:

Ortadaki parametrelerin sadece tek bir sayı olduğunu düşünelim. Yani Picassonun her bir resmine bir sayı denk gelsin. Bu durumda encoder her bir Picasso resmine bir sayı verir (1. resim, 2. resim vs.), sonra da decoder kısmı kaçıncı resim olduğuna bakıp doğru resmi oluşturur. YZ’miz Picasso gibi resim yapmayı değil, Picasso resimlerini numaralandırıp, verilen numaradan doğru resmi göstermeyi öğrendi. Pek sanatkar bir YZ değil.

Bu sorunu çözmek için sadece ortadaki parametre sayısını arttırmak yetmez, buna ek olarak ortadaki parametreleri birer sayı değil birer olasılık dağılımı gibi görelim. Bu durumda, mesela şekilleri öğrenen bir model her bir şekli farklı bir noktayla değil aşağıdaki gibi bir dağılım olarak öğrenebilir.

nn3

Yukarıdaki gibi üçgen, daire  ve kareyi olasılık dağılımı olarak öğrenen bir modele bu parametrelerin ortasından bir noktayı verirsek bize üçgen gibi, ama biraz da kare gibi ama biraz da yuvarlak gibi bir resim çizecektir.

Teoride güzel ama sinir ağında sayılar yerine olasılık dağılımları koyduk, olasılık dağılımlarıyla nasıl işlem yapacağız? Dahası girdileri sayılar değil, olasılık dağılımları olan fonksiyonları nasıl minimize edeceğiz? Kolaycacık değil ama mümkün, ta 1600’lerde fizikten gelen soruları çözmek için bunlar üzerinde çalışılmış, adı variational calculus.

Bütün bunlar gerçekte ne kadar işe yarıyor derseniz, buyrun buradan kendiniz karar verin.

 

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

*

Şu HTML etiketlerini ve özelliklerini kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>