Friday, June 14, 2024

Anlam yapay sinir ağlarında nasıl gerçeğe dönüşür

 


Anlam bağlam içinde belirlenir.  Anlam bağlam içinde var olur.  Bebek annesi ile ilişkisinde sevgi kavramını öğrenir.  Daha sonra sevgi kelimesini... 

 

Bir anlam, bir kelimenin anlamı, kişinin bildiği bütün kelimeler içinde o kelime ile ilişkiye sahip olan kelimelerin oluşturduğu bir yakınlıktır.  İlişkili kelime ne kadar çok onunla birlikte kullanılırsa anlam üzerinde o ilişkili kelimenin etkisi o kadar güçlenir(Hebbian plasticity, sık sık "birlikte ateşleyen hücreler birlikte bağlanır" şeklinde özetlenir).

 

Yapay sinir ağlarında anlam Embedding ile gerçekleştirilir.  İlk olarak büyük bir sözlük oluşturmak için Corpus denilen metin dağarcığı hazırlanır.  Daha sonra bu metin dağarcığında bulunan kelimeler tek tek ayırılır ve işlenmeye hazır hale getirilir.  Kelimeler takları ile birlikte dikkate alınır.  Stopword denilen ve, veya vb gibi anlam açısından kendi başlarına önem taşımayan kelimeler dikkate alınmaz.

 

Sözlük hazırlandıktan sonra her kelime sözlük içindeki konumuna göre bir sayı ile eşleştirilir.  Bu veri kullanılarak sözlükteki kelimelere iki tür erişim imkanı oluşturulur.  Konum sayısından kelimeye erişmek ve kelimeden konum sayısına erişmek.  Böylece her kelime bir tek sayı ile eşleştirilir.

 

Daha sonra kelimeler arasındaki ilişkileri tespit etmek için ana metin içinde tek tek her cümlede tek tek her kelimenin en yakınındaki kelimeler tespit edilir.  Yakınlığın ölçütü bir pencere büyüklüğü olarak geçer.  Örneği ‘Ali okula otobüs ile gitti.’ Cümlesinde yakınlık pencersi 2 olarak tespit edersek Ali ile ilişkili kelimeler okula ve otobüs olur. 

 

Ayrı bir sözlükte(bağlam sözlüğü) tek tek her kelimeye karşı düşen ilişkili kelimeler listesi saklanır.  Bir kelime istendiğinde bu kelime ile ilişkili bütün kelimeler bu kelimeye özgün ilişkili kelimeler listesinden alınabilir.

 

Anlam bağlam içinde oluşur.  Bir kelime genellikle belirli bir yakınlık taşıyan kelimeler civarında bulunur.  Yapay sinir ağlarında bağlamı belirleyen kullandığımız yakınlık penceresidir.  Sözlük içinde var olan herbir kelime için kullandığımız metin dağarcığında bulunan bütün cümleler taranarak ilişkili kelimeler listesini çıkarabiliriz.  Üstelik bu listeler bulunan her ilişkili kelimenin hem kendisini hem de sözlük içindeki konumunu belirleyen sayısal bilgiyi içerir.

 

Daha sonra bu bilgi yığınından sözlükteki herbir kelimenin soyut anlamının matematiksel karşılığını çıkarmak için çok basit bir yapay sinir ağı oluştururuz.  Bu yapay sinir ağı bir giriş(W1) ve bir saklı(hidden W2)  ağırlıklar katmanlarından oluşur.  Her iki katmanın öğrenme aşaması başlangıcında ağırlık değerleri rasgele verilir.  Bebeğin başlangıçta kafasında hiç bir kelime ilişkisi olmaması ve seslerin ses dizilerinin tekrarı ile giderek kavramları öğrenmesi gibi...

 

Oluşturduğumuz bu yapay sinir ağına, giriş olarak belirli bir kelimeye ilşkin bağlam sözlüğünde sakladığımız bütün kelimelerin matematiksel toplamı verilir.  Oluşan çıkış seçtiğimiz belirli kelime ile karşılaştırılır.  Her iki kelime de sayısal değerleri ile temsil edilir.  Oluşan farka göre sinir ağının ağırlıkları çıkıştan girişe doğru, elde edilen sonucun yanlışlık farkı ile orantılı olarak değiştirilir (backpropagation). Buraya kadar olan denemeye öğrenme aşaması(epoch) denir.  Aynı giriş kelimesi verilerek yine belirli kelimenin bulunup bulunmadığına bakılır eğer fark belirli bir sınır altında değilse öğrenme aşaması tekrarlanır.

 

Bir belirli kelime için öğrenme tamamlanınca sözlükteki diğer bütün kelimele için tek tek bu işlem tekrarlanır.  Böylece, sözlükteki bütün kelimeler arasındaki ilişkilere göre yapay sinir ağının ağırlıkları değştirilir.

 

İşte eğittiğimiz bu yapay sinir ağının ağırlıkları dağarcığımızdaki bütün kelimelerin ilişkilerini sayısal olarak depolamış olur.  Her kelimeye karşı düşen her bir kısım o kelimenin sayısal ifadesini içerir.

 

Son ama en önemsiz olmayan bir not:  Kullandığımız yapay sinir ağının katmanlarının boyutu oluşan embedding değerlerinin, yani anlamın kalitesini belirler.  ‘İnsan algılamasında boyutun rolü ve yapay sinir ağlarında Embedding’  adlı yeni makalemi yakın bir zamanda burada bulabilirsiniz.