Hiç Bilmeyenler İçin Yapay Sinir Ağlarına Giriş
Yapay sinir ağlarının temelinde
yatan en önemli kavram modellemedir. İnternette aradığınızda karşınıza çıkan
bütün Neural Networks örneklerinde bir model bölümü olduğunu göreceksiniz.
Neural network’ler genellikle veri hazırlama, model oluşturma, modelin
eğitilmesi ve sonuç alma (prediction) aşamalarından oluşur.
Model, gerçek dünyadaki bir
sistemin veya sürecin matematiksel denklemlerle ifade edilmesidir. Yapay sinir
ağlarını geliştiren öncülerden Geoffrey Hinton’ın Stanford’daki kursu,
modellemeye bir örnekle başlar.
Örneğin, belirli büyüklükte bir ev
almak istendiğinde, daha önce satılmış evlerin fiyatları listelenir ve iki
boyutlu bir grafik üzerinde gösterilir. Bu grafikte her nokta, yatay eksende
evin büyüklüğünü ve düşey eksende evin fiyatını temsil eder.
Büyüklük(ft2) Fiyat(1000USD)
2104 400
1600 330
2400 369
1416 232
3000 540
. .
. .
. .
Her bir noktanın, yani elimizdeki
satış bilgilerinin, bu doğruya olan uzaklıklarını hesaplayarak çizdiğimiz
doğrunun ne kadar gerçeğe yakın olduğunu, sistemimizin ne kadar doğru
çalıştığını belirleriz. Amacımız bu toplam uzaklık değerini mümkün olan en
küçük değere indirmektir. Bu doğrultuda, Y = aX + b şeklinde ifade ettiğimiz
doğruyu biraz daha eğmek, dikleştirmek veya Y eksenini kaydırmak gibi
değişiklikler yaparız. Her değişiklik sonrası, doğruya olan uzaklıkları
hesaplayarak bu süreci tekrar ederiz. Amacımız, en uygun doğruyu bularak
optimal sistemi elde etmektir.
Neural networks, gerçek dünyayı
modellerken vektörlerden faydalanır. Vektör, matematik ve fizik gibi bilim
dallarında yaygın olarak kullanılan, hem büyüklüğü (magnitude) hem de yönü
(direction) olan bir niceliktir. Skaler niceliklerden (yalnızca büyüklüğü olan,
örneğin sıcaklık veya kütle gibi) farklı olarak, vektörlerin yönü de önemlidir.
Örneğin, işsizlik konusunu
modellemek istediğimizde, konunun sosyal, ekonomik, eğitimsel, teknolojik gibi
her bir YÖNÜ bir vektör olarak seçilebilir ve bu vektörlerin büyüklükleri
ağırlıklarına göre belirlenir. Bu tür bir modellemede vektörler, çeşitli
özellikleri temsil eder. Örneğin, ev fiyatlarını modellerken, oda sayısını
dikkate almak istiyorsak, model çıktımız [3500, 540, 5] gibi bir vektör
olabilir. Burada, her bir değer, evin büyüklüğü, fiyatı ve oda sayısını temsil
eder.
Neural networklerde model
oluştururken her giriş değeri, bir yön ve büyüklük (ağırlık) ifade edecek
şekilde vektörlerle temsil edilir. Modellemeye çalıştığımız konu çok
boyutluysa, giriş değerlerimizi belirten vektörler de çok boyutlu olmalıdır.