• Sonuç bulunamadı

Yapay sinir ağları yöntemini diğer tahmin yöntemlerinden ayıran en önemli özellik, öğrenme yeteneğine sahip olmasıdır. Yapay sinir ağında öğrenme, esas olarak, istenilen çıktıları elde edebilmek amacıyla bağlantı ağırlıklarının değiştirilmesi ve çıktıların üretilmesini sağlayacak ağırlık değerlerinin bulunmasıdır. Başlangıçta rassal olarak ya da belirli bir aralıkta atanan ağırlıklar, ağın eğitimi tamamlandıktan sonra uygun çıktıyı üretebilecek değerlere erişirler. Genel olarak amaç, hedeflenen çıktı ile üretilen çıktı değeri arasındaki farkın (hata) minimize edilmesidir (Demuth, 2008: 46).

Gizli katmanda üretilen çıktı değerleri, hedeflenen çıktıya yaklaşıncaya kadar iterasyona devam edilerek ağın eğitimi tamamlanır. Yapay sinir ağı istenilen çıktıları

ürettiğinde öğrenme gerçekleşmiş olur. Öğrenmede kullanılan yöntemin görevi, istenen çıktıları üretmesi için yapay sinir ağının ağırlıklar üzerinde düzeltmeler yapmasıdır.

Öğrenme algoritmaları temelde iki türlüdür: Öğreticili algoritmalar ve öğreticisiz algoritmalar (Yıldız, 2006: 62). Öğreticili öğrenme algoritmalarında, öğrenilmesi gereken girdiler ağa sunulur ve bu girdilerle yapay sinir ağının çıktıları karşılaştırılarak aradaki fark hesaplanır. Farkın düzeyine göre ağırlıklar değiştirilerek istenilen çıktılar elde edilmeye çalışılır. Öğreticisiz öğrenmede, yalnızca girdi değerleri ağa tanıtılır ve yapay sinir ağının bu verileri sınıflandırmasıyla çıktı değeri üretilir. Bu yüzden ağırlıklar yalnızca giriş verilerine bağlı olarak değişir. Öğreticisiz öğrenme yöntemlerinin kullanımı yaygın değildir (Şen, 2004: 32).

Yapay sinir ağlarında kullanılan öğrenme kuralları çok parametreli, karmaşık ve matematiksel olarak ifade edilmesi zor bir işlemdir. Kullanılan yöntemler, bu işlemin basitleştirilmiş veya farklı formatta ifade edilmiş biçimleridir. Kullanılan algoritmalardan Hebb Öğrenme Kuralı ilk ve en bilinen öğrenme kuralı olup, diğer öğrenme kurallarına temel oluşturmuştur.

Çizelge 4. 1. Problem Tiplerine Uygun Öğrenme Algoritmaları

Problem Tipleri Öğrenme Algoritması

Tahmin - Backpropagation (Geri Yayılma)

- Delta Bar Delta - Self Organization Map

- Higher Order Neural Networks

Sınıflandırma - Learning Vector Quantization

- Counter Propagation

- Probabilistic Neural Network

Veri İlişkisi - Hopfield

- Boltzman Machine Bidirectional

- Spantion – Temproal Pattern Recognition

- Kohonen

Veri Kavramlaştırma - Adaptive Resonance Network

- Self Organizing Kaynak: Yıldız, 2009: 63

Çizelge 4.1’de probleme uygun olarak öğrenme yöntemleri gösterilmiştir. Yaygın olarak kullanılan öğrenme kuralları Hebb Öğrenme Kuralı, Delta Öğrenme Kuralı, Hopfield Öğrenme Kuralı, Kohonen Öğrenme Kuralı, Geri Yayılma Öğrenme Kuralı, Levenberg-Marquardt Öğrenme Kuralı’dır.

4.4.1. Hebb Kuralı

1949 yılında Donald Hebb tarafından geliştirilen Hebb Kuralı, “The Organization of Behaviour” adlı kitabında “eğer sinyal ile gönderen nöronlar arasındaki sinaptik ağırlıkların ikisi de matematiksel olarak aynı işarete sahipse, bu iki nöron arasındaki ağ kuvvetlendirilmelidir. Aksi halde bağın kuvveti azaltılmalıdır” şeklinde

özetlenmektedir. Bilinen en eski öğrenme kuralı olan Hebb Öğrenme Kuralı, diğer öğrenme kurallarının temelini oluşturmaktadır. Hebb Öğrenme Kuralına göre öğrenme sinyali hücre çıkışına eşittir. Yani bir hücre aktif ise bağlı olduğu hücreyi aktif, pasif ise hücreyi pasif yapma eğilimindedir (Haykin, 2005: 77).

4.4.2. Delta Kuralı

Delta Öğrenme Kuralı, Hebb Öğrenme Kuralı’nın geliştirilmiş şeklidir. Günümüzde en yaygın kullanılan öğrenme kurallarından birisi olan Delta Öğrenme Kuralı’nda, gerçek çıktı ile beklenen çıktı arasındaki fark (delta) en aza indirilmeye çalışılmaktadır. İlke olarak, yapay sinir hücresinin gerçek çıktısı ile beklenen çıktı arasındaki farkı azaltmak için yapay sinir ağlarının işlemci elemanları arasındaki bağlantı ağırlık değerlerinin sürekli değiştirilmesine dayanır

4.4.3. Hopfield Kuralı

Hebb Kuralı’na benzeyen Hopfield Kuralı’na göre, yapay sinir ağı elemanlarının bağlantılarının ne kadar zayıflatılması, ne kadar kuvvetlendirilmesi gerektiği belirlenir. Eğer beklenen çıktı ve girdilerin ikisi de aktif/pasif ise, öğrenme katsayısı kadar ağırlık değerleri kuvvetlendir/zayıflat denmektedir. Yani ağılıkların zayıflatılması / kuvvetlendirilmesi öğrenme katsayısı yardımı ile gerçekleştirilmektedir. Öğrenme katsayısı 0 ile 1 arasında kullanıcı tarafından atanan sabit ve pozitif bir değerdir (Öztemel, 2006: 26).

4.4.4. Kohonen Kuralı

Kohonen Kuralı’na göre ağın hücreleri ağırlıklarını değiştirmek için birbirleriyle yarışırlar. En büyük çıktıyı üreten hücre kazanan hücre olmakla beraber, bağlantı ağırlıklarını da değiştirmektedir. Bu, o hücrenin, yakınındaki hücrelere karşı daha kuvvetli hale gelmesi demektir (Öztemel, 2006: 27).

4.4.5. Geriye Yayılma Öğrenme Kuralı (Traingdm)

Geofrey Hinton James Mcclelland tarafından geliştirilen Geriye Yayılma Öğrenme Kuralı, hataları çıkıştan girişe geriye doğru azaltmaya çalışmasından dolayı bu ismi almıştır. Öngörü için kullanılan yapay sinir ağlarında sıkça kullanılan bir öğrenme algoritmasıdır. Geri yayılım algoritması verilen bir x giriş vektörü için beklenen çıkışın bilindiği ağlar için uygundur ve çok katmanlı bir ağ mimarisi gerektirmektedir. Çok katmanlı ağlar giriş, çıkış ve en az bir gizli katman olmak üzere üç katmandan oluşurlar. Gizli katman sayısı ve bu katmandaki nöron sayısı değiştirilebilir. Nöron sayısı arttıkça, öğrenme işleminin süresi de artar (Elmas, 2007: 114). Eğer az sayıda gizli katman kullanılırsa ağ öğrenmeyi başaramaz. Gereğinden fazla gizli katman bulunması halinde ise ağ ezberler ve istenilen sonuçlara ulaşılamaz.

Öğrenme algoritması olarak geri yayılım algoritması seçildiğinde iki parametre önem kazanmaktadır. Bunlardan birisi; öğrenme katsayısı (lr), diğeri ise momentum katsayısı (mc)’dır. Öğrenme katsayısı, ağırlıkların bir sonraki düzeltmede hangi oranda değiştirileceğini göstermektedir. Öğrenme katsayısı için tipik değerler, 0,01 ve 0,9 arasında değişir. Momentum terimi ağdaki salınımları engellemeye ve ağın hata yüzeyindeki bölgesel minimum noktalardan kaçarak daha dip noktalara ulaşmasına yardımcı olur (Demirkoparan, 2010: 51-52).

4.4.6. Levenberg-Marquardt Öğrenme Kuralı (Trainlm)

Son yıllarda kullanılan en popüler öğrenme algoritması Levenberg-Marquardt Öğrenme Kuralı hızlı ve yüksek performansından dolayı kullanıcılar tarafından tercih edilmektedir. Levenberg-Marquardt öğrenme algoritmasına göre, hata değeri bulunduktan sonra nöronlar kendi hatalarını azaltmak için ağırlıklarını ayarlamak durumundadır. Ağırlık değiştirme ayarları da ağdaki performans fonksiyonunu en aza indirecek şekilde düzenlenirler. Diğer bir ifadeyle bu algoritmaya maksimum komşuluk fikri üzerine kurulmuş en küçük kareler tahmin metodu da denilebilir (Doğan, 2010: 61). Çok hızlı çözümlere ulaşmasına karşın çok fazla bellek gerektirmektedir.

4.5. YAPAY SİNİR AĞLARI YÖNTEMİNDE UYGULAMA