• Sonuç bulunamadı

Yapay sinir ağının gerçekleştirdiği öğrenme, çok parametrelerin bulunduğu, matematiksel olarak karmaşık yapıların olduğu zor bir işlemler zinciridir. Yaygın olarak kullanılan öğrenme kurallarında öğrenme işleminin basitleştirme çalışmaları yapılarak farklı formatlarda ifade edilmiştir. Oluşturulan öğrenme algoritmaları temel alınan Hebb, Hopfield, Delta, Kohonen öğrenme kurallarından türetilmiştir. Bunlar, Yapay sinir ağları literatür

Yapay Sinir Ağı Eğitim ve Anımsama Süreci

w1

-Toplam Fonksiyon

-Kümülatif Toplam Fonksiyon -Çarpım Fonksiyon -Maksimum Fonksiyon -Minimum Fonksiyon -Çoğunluk Fonksiyon -Doğrusal Fonksiyon -Sigmoid Fonksiyon

-Simetrik Sigmoid Fonksiyon -Hiperbolik Tanjant Fonksiyon -Sinüs ve Kosinüs Fonksiyon Eğitim Döngüsü w2 wn Çıktı Girdiler Toplam İşlem Fonksiyonları Aktivasyon İşlem Fonksiyonları

araştırmasında, çok sayıda öğrenme kuralının olduğu tespit edilmiştir. Geliştirilen öğrenme kuralları en eskisi ve en çok bilineni olan Hebb Öğrenme Kuralı temel alınarak oluşturulmuştur. Uygulamalarda kullanılmakta olan bazı önemli öğrenme kuralları aşağıda verilmiştir.

2.9.1 Hebb Öğrenme Kuralı

Bu kural Donald Hebb tarafından 1949 yılında geliştirilmiş ve kural Hebb’in “The Organization of Behaviour” isimli yazmış olduğu kitapta yer almıştır. Hebb’in biyolojik öğrenmeyi esin kaynağı olarak temel aldığı ve geliştirdiği kural en eski öğrenme kuralı kabul edilmektedir (Anderson ve McNeill, 1992: 30). Kuralın çalışma prensibini özetlemek istersek şöyledir: Eğer sinyal alıcı nöron ile sinyal gönderici nöron arası sinaptik ağırlık her ikisinde matematiksel anlamda aynı işaretli ise bu iki nöron arası bağ kuvvetlendirilmeli diğer durumda zayıflatılmalıdır (Hebb, 1949: 62).

2.9.2 Hopfield Öğrenme Kuralı

Hopfield öğrenme kuralı, Hebb kuralını temel alarak geliştirilmiş kuraldır. Bu kuralda Hebb kuralından farklı olarak bağlantı ağırlıklarına yapılacak sayısal atamaların büyüklüğünün belirlenmesi işlemi yapılmıştır. Bu işlem, girdi değeri ve çıktı değeri aynı matematiksel işaretli ise bağlantı ağırlığı öğrenme katsayısı oranında arttırılmalı, aksi taktirde öğrenme katsayısı oranında azaltılmaktadır. Hopfield kuralında öğrenme katsayısı oranı 0-1 arasında uygulayıcının atamış olduğu pozitif veya sabit sayılardan oluşmaktadır.

Hebb kuralına benzerlik gösteren bu kural ile yapay sinir ağı elemanlarının bağlantılarının ne kadar kuvvetlendirilmesi veya zayıflatılması gerektiği belirlenmektedir. Kuralın çalışma şeklinde, girdi değişkenleri ve ibeklenilen çıktı değişkenleri aktif veya aktif değil ise, bağlantı ağırlık değerleri öğrenme katsayı miktarınca artırılmakta, aksi taktirde öğrenme katsayısı miktarınca azaltılmaktadır (Hopfield, 1982: 2557).

2.9.3 Delta Öğrenme Kuralı

Delta öğrenme kuralı, Widrow ve Hoff’ın Hebb öğrenme kuralının geliştirilmiş halidir. Delta öğrenme kuralı en yaygın kullanılan kurallardan biri olup, çalışma şekli olarak YSA’da sinir hücresinin gerçek değeri ile tahmin çıktı değeri arasındaki farkın azaltılması için işlemci elemanlar arasında ağırlıklandırma sürekli yenilenme ilkesi ile çalışmaktadır. Bu öğrenme kuralında, gerçek değer ile tahmin değeri arasındaki hata karesinin minimize edilmesi için En Küçük Kareler yöntem mantığı kullanılmaktadır. Buradaki temel düşünce; YSA modelinin hata kareler toplamını en aza indirmektir (Widrow ve Hoff, 1960: 96).

2.9.3.1 Delta Öğrenme Kuralının Algoritması

Girdi verileri çıktı verilerine doğrudan bağlıdır ve indisler şu şekilde ifade edilir. Girdi verileri 𝑋𝑖 = ( 𝑥1, 𝑥2, 𝑥3, … , 𝑥𝑛) olarak, girdilerin ağırlıkları 𝑊𝑖𝑗 = (𝑤1𝑗, 𝑤2𝑗, 𝑤3𝑗, … , 𝑤𝑛𝑗) ağırlık fonksiyonları olarak, 𝑡𝑖: (𝑡1, 𝑡2, 𝑡3, … , 𝑡𝑛) gerçek değerlere karşılık beklenilen tahmin değerleri ve hata kareleri 𝐸 = ∑𝑛𝑖=1(𝑡𝑖 − 𝑔𝑖)2 = ∑𝑛𝑖=1𝑒𝑖2 olarak, 𝜃: eşik değeri olarak, 𝜀 ve 𝑑 sabit değerler olarak ifade edilir. Algoritma adımları:

Adım 1: 𝐸𝑖 = 0 − (𝑎1𝑤𝑖1+ 𝑎2𝑤𝑖2+ 𝑎3𝑤𝑖3+ ⋯ + 𝑎𝑗𝑤𝑖𝑗− 𝜃)

Adım 2: (𝐸𝑖+ 𝜀)𝑑 (düzeltme faktörü)

Adım 3: Etkinliklere başlayacak nöronlar için,

𝑒ğ𝑒𝑟 𝑥𝑖 = 0 𝑣𝑒 𝑑𝑖 = 1 𝑖𝑠𝑒 𝑤𝑖 = 𝑤𝑖 + (𝐸𝑖 + 𝜀)𝑑 𝑒ğ𝑒𝑟 𝑥𝑖 = 0 𝑣𝑒 𝑑𝑖 = 0 𝑖𝑠𝑒 𝑤𝑖 = 𝑤𝑖 − (𝐸𝑖 + 𝜀)𝑑

Adım 4: Çıktı değerleri yeniden hesaplanır.

2.9.3.2 Delta-Bar-Delta Öğrenme Modeli Algoritması

Delta-bar-delta algoritması ağın ağırlıklarının ayarlanması için kullanılır ve 𝑘 ’ıncı iterasyonun 𝑖. ve 𝑗. indislerdeki nöron hücreleri arasındaki bağlantı ağırlık değişimleri 𝛥𝑤𝑗𝑖(𝑘) (Güler ve Übeyli, 2006) şöyle ifade edilir:

𝛥𝑤𝑖𝑗(𝑘) = −𝛼𝑗𝑖(𝑘)𝜕𝑤𝜕𝐸

𝑗𝑖(𝑘)

Denklemde 𝛼𝑗𝑖(𝑘) ifade edilen katsayı 𝑖. ve 𝑗. indislerdeki nöron hücreleri arasındaki öğrenme katsayısıdır. Öğrenme katsayısındaki değişim şu şekilde formül edilir:

𝛥𝛼𝑗𝑖(𝑘) = { 𝐴, 𝐷𝑗𝑖(𝑘 − 1)𝜕𝑤𝜕𝐸 𝑗𝑖(𝑘)> 0 −𝜑𝛼𝑗𝑖(𝑘), 𝐷𝑗𝑖(𝑘 − 1)𝜕𝑤𝜕𝐸 𝑗𝑖(𝑘)< 0 0, 𝑑𝑖ğ𝑒𝑟 𝑑𝑢𝑟𝑢𝑚𝑙𝑎𝑟 Denklemde 𝐷𝑗𝑖(𝑘 − 1), 𝜕𝑤𝜕𝐸 𝑗𝑖(𝑘−1) ve 𝜕𝐸

𝜕𝑤𝑗𝑖(𝑘−2) ağırlık ortalamalarını şu şekilde

hesaplanır:

𝐷𝑗𝑖(𝑘 − 1) = (1 − 𝜃)𝜕𝑤𝑗𝑖(𝑘−1)𝜕𝐸 + 𝜃𝜕𝑤∂𝐸

𝑗𝑖(𝑘−2) 𝜃, 𝜑 𝑣𝑒 𝐴 sabit değerlerdir.

Delta-bar algoritmasında öğrenme katsayıları doğrusal olarak arttırılmakta ve geometrik olarak azaltılmaktadır.

2.9.3.2.1 Genişletilmiş Delta-Bar-Delta Model Algoritması

Genişletilmiş delta-bar-delta algoritması delta-bar-delta algoritmasının genelleştirilmiş formunu oluşturur (Güler ve Übeyli, 2006). Algoritmada nöron hücreleri arasındaki bağlantı ağırlık değişimleri şu şekilde yapılır:

𝛥𝑤𝑗𝑖(𝑘) = −𝛼𝑗𝑖(𝑘)𝜕𝑤𝜕𝐸(𝑘)

𝑗𝑖(𝑘)+ 𝜇𝑗𝑖(𝑘)𝛥𝑤𝑗𝑖(𝑘 − 1)

Denklemde 𝛼𝑗𝑖(𝑘) öğrenme katsayısını, 𝜇𝑗𝑖(𝑘) momentum katsayısını göstermektedir. Genişletilmiş delta-bar-delta algoritmasında momentum katsayısını kullanarak öğrenme katsayısındaki değişim şu şekilde hesaplanır:

𝛥𝛼𝑗𝑖(𝑘) = { 𝐴𝛼𝑒(−𝛾𝛼|𝐷𝑗𝑖(𝑘)|), 𝐷𝑗𝑖(𝑘 − 1) 𝜕𝐸(𝑘) 𝜕𝑤𝑗𝑖(𝑘)> 0 −𝜑𝛼𝛼𝑗𝑖(𝑘), 𝐷𝑗𝑖(𝑘 − 1)𝜕𝑤𝜕𝐸(𝑘) 𝑗𝑖(𝑘)< 0 0, 𝑑𝑖ğ𝑒𝑟 𝑑𝑢𝑟𝑢𝑚𝑙𝑎𝑟

𝐴𝛼 , 𝜑𝛼 ve 𝛾𝛼 sabit pozitif değerlerdir. Algoritma öğrenme katsayısı artış değeri sabit olmayıp, 𝐷𝑗𝑖(𝑘) değerinin üstel azalan fonksiyon değerine karşılık gelmektedir. Ağırlık değerlerinin salınım aralıkları 𝛼𝑗𝑖(𝑘) , 𝜇𝑗𝑖(𝑘) önceden belirtilen 𝛼 𝑚𝑎𝑥 ve 𝜇 𝑚𝑎𝑥 üstel değerlerin altında tutulur.

2.9.3.3 Hızlı Yayılımlı Algoritma Modeli

Hızlı Yayılımlı Algoritma Modelinde ağın ağırlıklarının ayarlanması için kullanılır ve 𝑘. iterasyonun 𝑖. ve 𝑗. indislerdeki nöron hücreleri arasındaki bağlantı ağırlık değişimleri 𝛥𝑤𝑗𝑖(𝑘) (Güler ve Übeyli, 2006) şöyle ifade edilir:

𝛥𝑤𝑗𝑖(𝑘) = −𝛼𝑗𝑖(𝑘)𝜕𝑤𝜕𝐸(𝑘)

𝑗𝑖(𝑘)+ 𝜇𝑗𝑖(𝑘)𝛥𝑤𝑗𝑖(𝑘 − 1) (1)

Denklemde 𝛼𝑗𝑖(𝑘) öğrenme katsayısını, 𝛥𝑤𝑗𝑖(𝑘 − 1) bir önceki iterasyonun ağırlık değişim miktarını ve 𝜇𝑗𝑖(𝑘) momentum katsayısını göstermektedir. 𝜇𝑗𝑖(𝑘) şu formül ile hesaplanır: μji(k) = ∂E ∂wji(k) ∂E ∂wji(k − 1) − ∂E ∂wji(k) (2)

2.9.4 Kohonen Öğrenme Kuralı

Kohonen Öğrenme Kuralı, Teuvo Kohonen tarafından biyolojik öğrenme sistemleri esin kaynağı olarak oluşturulmuştur. Kuralın temel mantığına bakıldığında YSA nöron

hücreleri öğrenme işlemini gerçekleştirmek için sürekli bir rekabet içerisinde bulunmaktadırlar, bu rekabet ağırlıkların sürekli değişimine dayandığı düşünülmektedir. Kurala göre beklenen çıktı gerçek çıktıya en yakın sonucu üreten nöron hücresi diğer hücrelere göre daha güçlü olup bağlantılarının kuvvetlendirilmesi gerekmektedir. Bu kural, kendi kendine öğrenme kuralı veya danışmansız öğrenme kuralı olarak bilinmektedir (Kohonen, 1990: 1464).