04.08. Artificial Neural Network (Yapay Sinir Ağı)

Yapay sinir ağları basit biyolojik sinir sisteminin çalışma şekli simüle edilerek tasarlanan programlama yaklaşımıdır. Simüle edilen sinir hücreleri (nöronlar) içerirler ve bu nöronlar çeşitli şekillerde birbirlerine bağlanarak ağı oluştururlar.[more] Bu ağlar öğrenme, hafızaya alma ve veriler arasındaki ilişkiyi ortaya çıkarma kapasitesine sahiptirler. Diğer bir ifadeyle, sinir ağları, normalde bir insanın düşünme ve gözlemlemeye yönelik doğal yeteneklerini gerektiren problemlere çözüm üretmektedir. Bir insanın, düşünme ve gözlemleme yeteneklerini gerektiren problemlere yönelik çözümler üretebilmesinin temel sebebi ise insan beyninin ve dolayısıyla insanın sahip olduğu yaşayarak veya deneyerek öğrenme yeteneğidir.

Yapay sinir ağları, ağırlıklandırılmış şekilde birbirlerine bağlanmış birçok işlem biriminden (nöronlar) oluşan matematiksel sistemlerdir. Bir işlem birimi, aslında sık sık transfer fonksiyonu olarak anılan bir denklemdir. Bu işlem birimi, diğer nöronlardan sinyalleri alır; bunları birleştirir, dönüştürür ve sayısal bir sonuç ortaya çıkartır. Genelde, işlem birimleri kabaca gerçek nöronlara karşılık gelirler ve bir ağ içinde birbirlerine bağlanırlar; bu yapı da sinir ağlarını oluşturmaktadır.
Yapay sinir ağlarının ana öğesi olan matematiksel fonksiyon, ağın mimarisi tarafından şekillendirilir. Daha açık bir şekilde ifade etmek gerekirse, fonksiyonun temel yapısını ağırlıkların büyüklüğü ve işlem elemanlarının işlem şekli belirler. Sinir ağlarının davranışları, yani girdi veriyi çıktı veriye nasıl ilişkilendirdikleri, ilk olarak nöronların transfer fonksiyonlarından, nasıl birbirlerine bağlandıklarından ve bu bağlantıların ağırlıklarından etkilenir.
Yapay sinir ağları üzerine Hebb Kuralı veya Öğrenmesi(Hebb Rule / Hebbian Learning), Perceptron Öğrenme, Çok Katmanlı Perceptron Öğrenme(Multilayer Perceptron Learning), Uyarlanabilir Rezonans Teorisi(Adaptive Resonance Theory), Geriye-Çoğalma (Back-Propagation), İki Yönlü Çağrışımlı Öğrenme(Bi-Directional Associative Memory), Olaslıklı Ağlar(Probalistic Networks) ve Destek Karar Makinesi(Support Vector Machine) birçok yöntem geliştirilmiştir. Çok Katmanlı Perceptron Öğrenme ve Destek Karar Makinesi yöntemleri ileri ki blog yazılarında anlatmayı düşünüyorum.