• Sonuç bulunamadı

2.3. Yapay Sinir Ağları

2.3.3. Yapay Sinir Ağlarında Öğrenme

Yapay sinir ağlarının en önemli ayırt edici özelliklerinden birisi öğrenme yeteneğine sahip olmadır. Öğrenme var olan örnekler arasındaki yapının iyi bir davranış göstermesini sağlayabilecek olan bağlantı ağırlıklarının hesaplanması olarak tanımlanabilir (Şen, 2004, s. 35).

Yapay sinir ağları gibi öğrenme yöntemleri örneklerden edindiği tecrübelerle öğrenmeye dayanmaktadır. Örneklerden öğrenmeyi bir olay hakkında gerçekleşmiş örnekleri kullanarak olayın girdi ve çıktıları arasındaki ilişkileri öğrenerek bu ilişkilere göre daha sonra kurulacak olan yeni örneklerin çıktılarını belirlemektir. Bu düşüncede bir olay ile ilgili örneklerin girdi ve çıktıları arasındaki ilişkinin olayın genelini kapsayacak bilgiler içerdiği kabul edilmektedir. Farklı örneklerin olayı farklı açılardan temsil ettiği varsayılmaktadır. Değişik örnekler kullanılarak olay farklı yönlerden öğrenilebilinecektir. Bu işlemlerde bilgisayara yalnızca örnekler gösterilmektedir. Başka herhangi bir ön bilgi verilmemektedir. Öğrenmeyi sağlayacak olan sistem aradaki ilişkiyi kendi algoritmasını kullanarak keşfetmektedir (Öztemel, 2006, s. 64).

Yapay sinir ağlarında işlemci elemanlar arasındaki bağlantıların ağırlık değerlerinin değiştirilmesine “ağın eğitilmesi” denir. İlk olarak rastgele atanan bu ağırlık değerleri sonradan ağa gösterilen örnekler sayesinde değiştirilmektedir. Bunu yapılma amacı, ağa

28

gösterilen örnekler için doğru çıktıları oluşturacak ağırlık değerlerinin belirlenmesidir. Örnekler ağa birçok kez gösterilerek en doğru ağırlık değerine ulaşılmaya çalışılır. Bu değer bulunduğunda örneklerin temsil ettiği olay ile ilgili genellemeler yapabilme yeteneğine ulaşmış demektir. Bu genelleme özelliğine “ağın öğrenmesi” denir. Ağırlıkların değerlerinin değiştirilmesi bazı kurallara göre değiştirilmektedir. Bu kurallara “öğrenme kuralları” denir (Yurtoğlu, 2005).

Yapay sinir ağının eğitilmesinden sonra ağın öğrenip öğrenmediğini ölçmek için denemeler yaparak ağın test edilmesi gerekmektedir. Ağı test ederken ağın eğitimi sırasında daha önce karşılaşmadığı, veri setinden test amaçlı ayrı tutulan örnekler kullanılır. Bu örneklere “test seti” denir ve işlem sırasında ağın ağırlık değerleriyle oynanmaz. Örnekler ağa gösterilir. Ağ eğitimi esnasında belirlenen ağırlık değerlerin kullanarak daha önce karşılaşmadığı bu yeni örnekler için bir çıktı değeri üretir. Üretilen çıktıların doğruluk dereceleri ağ öğrenmesi hakkında bilgi vermektedir. Sonuç ne kadar iyi olursa ağ eğitimi o kadar iyi demektir (Öztemel, 2003, s. 80).

Eğitim ve test setleriyle alakalı en önemli sorun yeterli eğitim ve test verisi sayısının ne kadar olması gerektiğidir. Yapay sinir ağları eğitilirken olabildiğince çok sayıda veri kullanılması daha sağlıklı olacaktır. Eğitim verisinin yeterli olup olmadığını anlamanın yolu eğitim verisinin sayısını arttırarak, performans da değişiklik olup olmadığına bakmaktır. Bir diğer yol eğitim ve test verilerinin performansının yakın olması da verilerin yeterli olup olmadığı konusunda bilgi verecektir (Çırak, 2012).

2.3.3.1.Yapay Sinir Ağlarında Öğrenme Algoritmaları

Yapay sinir ağlarının öğrenmesi için iki temel yaklaşım bulunmaktadır. Bunlar danışmanlı (supervised) ve danışmansız (unsupervised) öğrenmedir.

2.3.3.1.1.Danışmanlı Öğrenme:

Danışmanlı öğrenme esnasında ağa verilen giriş değerleri için çıktı değerleri de verilir. Ağ verilen girdi değerleri için istenen çıktıları oluşturabilmek için kendi ağırlıklarını günceller. Ağın çıktıları ile beklenen çıktılar arasındaki hata oranı hesaplanarak ağın yeni ağırlıkları bu hata payına göre düzeltilir. Hata payı hesaplanırken ağın bütün çıktıları ile beklenen çıktılar

29

arasındaki fark hesaplanarak bu farka göre her nörona düşen hata payı bulunur. Sonrasında ise her nöron kendine gelen ağırlıkları günceller (Şen, 2004, s. 72).

Şekil 9. Danışmanlı öğrenme yapısı

Şekil 9’ da danışmanlı öğrenme yapısı anlatılmaktadır. Bu öğrenme yönteminde öğrenmeye dışarıdan müdahale eden bir danışman vardır. Öğrenme bu danışmanın kontrolündedir. Danışman eğitim kümesini ve hata değerini belirleyerek eğitimin ne kadar süre devam edeceğini belirler. Bu yöntemin en önemli özelliği eğitim sırasında gerçek giriş ve çıkış değerini kullanılmasıdır. Danışmanlı Öğrenme kuralları şunlardır (Şen, 2004, s. 73):

1. Algılayıcı (Perceptron) Öğrenme Kuralı 2. Delta Öğrenme Kuralı

3. Genişletilmiş Delta Öğrenme Kuralı 4. Geri Yayılımlı Öğrenme Kuralı

2.3.3.1.2.Danışmansız Öğrenme:

Danışmansız öğrenmede ağa öğrenme esnasında yalnızca örnek girdiler verilmektedir. Danışmansız öğrenmede sistemin doğru çıktı hakkında bilgisi yoktur. Girişte verilen bilgilere göre ağ her bir örneği kendi arasında sınıflandıracak şekilde kendi kurallarını oluşturur. Ağ bağlantı ağırlıklarını aynı özellikte olan dokuları ayırabilecek şekilde düzenleyerek öğrenme işlemi tamamlanır (Şen, 2004, s. 74).

30

2.3.3.2.Yapay Sinir Ağlarında Öğrenme Kuralları

Literatürde çok sayıda öğrenme kuralları kullanılır. Bunlar Hebb kuralı, Delta kuralı, Hopfield kuralı ve Kohonen kuralıdır.

2.3.3.2.1.Hebb kuralı

Hebb kuralında, bir sinir hücresi diğer bir sinir hücresinden bilgi alırsa ve eğer ikisi de matematiksel olarak aynı işareti taşıyorsa bu iki hücre arasındaki bağlantının kuvvetlendirilmesi gerekmektedir. Tam tersi durumda ise zayıflatılması gerekmektedir (Moumin, 1995).

2.3.3.2.2.Delta Kuralı

Bu kural Hebb kuralının biraz daha geliştirilmiş şeklidir. Delta kuralı, yapay sinir ağı hücresinin gerçek çıktısı ile beklenen çıktısı arasındaki farklı azaltmak için yapay sinir ağlarının işlemci elemanlarının bağlantısının ağırlık değerlerinin sürekli değiştirilmesidir. Delta kuralında, ağın oluşturduğu çıktı ile üretilmesi beklenen çıktı arasındaki hatanın karelerinin ortalamasını minimuma indirmek hedeflenmektedir (Hopgood, 1991).

2.3.3.2.3.Hopfield Kuralı

Hopfield kuralı bir farklılık dışında Hebb kuralına benzemektedir. Yapay sinir ağları elemanlarının bağlantılarının ne ölçüde güçlendirilmesi veya zayıflatılması gerektiği belirlenmektedir. Eğer beklenen girdi ve çıktılar aktif/pasif ise öğrenme katsayısı kadar ağırlık değerleri güçlendirilir/azaltılır. Ağırlıkların güçlendirilmesi ve azaltılması öğrenme katsayısının desteğiyle gerçekleştirilmektedir. Öğrenme katsayısı kullanıcı tarafından belirlenir. Genellikle 0-1 arasında sabit ve pozitif bir değerdir (Öztemel, 2006, s. 27).

2.3.3.2.4.Kohonen Kuralı

Kohonen kuralı sinir hücrelerinin ağırlıklarını değiştirmek için birbirleri ile yarışmasına dayanır. En büyük çıktıyı üreten hücre kazanır ve bağlantı ağırlıklarını değiştirir. Kazanan hücre yakınındaki hücrelere göre daha kuvvetli hale gelmektedir. Bu kuralda ağ kendini danışmana ihtiyaç duymadan eğitebilir (Öztemel, 2006, s. 27).

31

Benzer Belgeler