• Sonuç bulunamadı

6. YAPAY SĐNĐR AĞI MODELLERĐ

6.5. Geri Dönüşümlü (Recurrent) Ağlar

Geri dönüşlü ağlarda, proses elemanlarının çıktıları, aynı işlem elemanına veya daha önceki katmanlardakine geri döner. Böylece, her iki yönde ileri ve geri veri akışı olabilir. Geri dönüşlü ağların, belli bir andaki çıktının o andaki girdi ile daha önceki girdi ve çıktıları da yansıtan dinamik bir hafızası vardır. Bu tip ağlarda hesaplama, birimlerin sabit bir noktaya ulaşılıncaya kadar güncellendiği ve sonraki güncellemelerin hiçbir etkisinin olmadığı bir süreçtir. Bu yüzden geri dönüşlü ağlar en iyileyicilerdir Geri dönüşümlü ağlar iki şekilde olabilir;

Tam geri dönüşümlü ağlar: Bu ağlar gelişigüzel ileri ve geri bağlantıları olan ağlardır.

Bu bağlantıların hepsi eğitilebilirdir.

Kısmi geri dönüşümlü ağlar: Bu ağlarda ağın proses elemanlarına ek olarak içerik (content) elemanları vardır. Bu ağlar, temelde ileri beslemelidirler. Đleri bağlantılar eğitilebilirler. Geri dönüşüm sadece içerik elemanları üzerinde yapılır ve bu bağlantılar eğitilemezler. Đçerik elemanları ara katman elemanlarının geçmiş durumlarını hatırlamak için kullanılırlar. Ağın çıktısı hem önceki durumlara hem de ağın o andaki durumuna bağlı olarak oluşturulmaktadır. (Öztemel, 2003).

6.5.1. Elman Ağı

Elman ağı çok katlı algılayıcı ağının öğrenme kuralına göre öğrenmektedir. Elman ağının 4 çeşit proses elemanı vardır. Bunlar; girdi elemanları, ara katman elemanları, çıktı elemanları ve içerik elemanlarıdır. Çıktı ünitelerinin bilgi işleme fonksiyonları doğrusaldır. Sadece kendilerine gelen bilgileri toplarlar. Ara katman elemanları ise hem doğrusal hem de doğrusal olmayan aktivasyon fonksiyonlarına sahip olabilirler. Đçerik elemanları ara katman elemanlarının önceki aktivite değerlerini hatırlamak için kullanılmaktadır. Bu elemanlar bir adım gecikmeyi (one step time delay) içermektedirler. Bir önceki iterasyondaki aktivasyon değerlerini bir sonraki iterasyona girdi olarak taşırlar. Đleri beslemeli bağlantıların ağırlıkları ise sabittir.

Elman ağındaki, herhangi bir t zamanında hem t zamanındaki girdi değerleri hem de ara katmanların (t-1). zamandaki aktivite değerleri ağa girdi olarak verilirler. Ağın girdileri belirlendikten sonra ağ artık ileri beslemeli çok katmanlı algılayıcıya dönüşmektedir. Bu girdiler kullanılarak ileri doğru ağın çıktıları belirlenir. Bunu belirlemek için çok katmanlı algılayıcı öğrenme kuralı kullanılmaktadır. Bu ileri doğru hesaplamadan sonra ağın ara katmanlarının aktivasyon değerleri geriye doğru içerik elemanlarına girdi olarak gönderilir ve orada bir sonraki iterasyonda kullanılmak üzere saklanır. Başlangıçta ara katmanların aktivasyon değerleri bilinmediğinden içerik elemanlarının başlangıç değerlerinin belirlenmesi gerekir. Bunun için, genel olarak bir ara katmanın alabileceği maksimum değerin yarısı içerik elemanlarının başlangıç girdi değerleri olarak atanır. Eğer sigmoid fonksiyonu kullanılacak ise genellikle bu elemanlar başlangıçta girdi olarak 0.5 değerini alırlar. Hiperbolik Tanjant fonksiyonu için ise 0 değeri başlangıç girdi değerleri olarak atanmaktadır.

Şekil 6.15’de, u(k); k. zaman dilimindeki dış dünyadan gelen girdiyi, y(k); k. zaman diliminde üretilen çıktıyı, x(k); k. zaman dilimindeki ara katman elemanlarının çıktılarını, x(k-1) ise bir önceki zaman diliminde ara katman elemanlarının çıktılarını göstermektedir.

Şekil 6.15. Elman ağı

Şekil 6.16’da 1 girdi 2 ara katman ve 1 çıktı elemanından oluşan bir Elman ağının ağırlıkları gösterilmiştir. Girdi elemanı ile ara katman arasındaki ağırlıklar Ag ile içerik elemanı ile ara katman arasındaki ağırlıklar Ai,Aa ile gösterilmiştir. Ara katmandan içerik elemanlarına geri dönüşüm bağlantı ağırlıkları ise Asile gösterilmiştir. Bu ağırlıklar değiştirilmez ve değerleri sabit olup 1’e eşittir. (Öztemel, 2003).

Şekil 6.16. Elman ağı bağlantı ağırlıkları

6.5.2. Elman Ağının Öğrenmesi

Elman ağının öğrenmesi Çok Katmanlı Algılayıcılarda anlatılan Genelleştirilmiş Delta öğrenme kuralına göre gerçekleşmektedir. Ara katmanda bulunan elemanlara gelen net girdi değeri girdi katmanındaki elemanın girdi değeri (u) ile ağırlığının (Ag) çarpılıp toplanması sonucu bulunan değerlere içerik elemanından gelen bağlantı değerlerinin ara katmanlarının (Ai) bir önceki aktivite değerleri ile çarpılıp eklenmesi sonucu bulunur. Bu değer bir fonksiyondan geçirilerek (f) ara katman elemanlarının çıktısı (x) bulunur. Yani herhangi bir k zaman diliminde kullanılan aktivasyon fonksiyonunun sigmoid olması durumunda ara katman elemanlarının çıktıları;

)

şeklinde hesaplanacaktır. NET girdi ise ara katmanlardan gelecek olan geri beslemeler dikkate alınarak hesaplanır.

olacaktır. Bu formül açık olarak yazılırsa;

) seçilerek genelleştirilmiş delta kuralına göre hem proses elemanlarının çıktıları hesaplanır, hem de ağırlıkların değişim miktarları belirlenir. Ağın çıktısı ise çıktı katmanına gelen net değerin doğrusal fonksiyondan geçirilmesi ile belirlenir.

)

şeklinde hesaplanır. k. zaman diliminde çıktı katmanındaki j. elemanın çıktısı;

) örnek için beklenen çıktı (B) belirli olduğundan, k. zaman diliminde j. çıktı elemanında oluşan hata;

)

olacaktır. Bu hata, genelleştirilmiş delta kuralına göre ağın değişebilen ağırlıklarına dağıtılır. Önce bu hata değeri çıktı fonksiyonunun türevi ile çarpılarak ağırlıklara dağıtılacak hata oranları (δ) belirlenir. Çıktı fonksiyonunun sigmoid olması durumunda k. zaman diliminde ağırlıklara dağıtılacak olan hata;

[

1 ( )

]

( )

şeklinde belirlenir (Öztemel, 2003).

6.5.3. Geri dönüşümlü ağların uygulama alanları

Elman ağı özellikle birinci dereceden doğrusal sistemleri modellemekte başarılı bir şekilde uygulanmaktadır. Bu ağlar, zamana bağlı olayları işleyebilme ve önceki zamanlarda elde edilen sonuçları bir sonraki zamanlara taşıyabilme yeteneği ile özellikle konuşma, anlama ve ses tanıma problemlerinde yaygın olarak kullanılmaktadırlar. Bu ağların olayların zamana bağlı ilişkilerini dikkate almaları, olayların bugün ki gidişatlarına göre gelecekte nasıl olacaklarının tahmin edilmesinde de etkin olarak geri beslemeli ağlar, özellikle de Elman ağı kullanılmaktadır. Çünkü zamana bağlı olaylarda geçmişten geleceğe olayların gidişatının dikkate alınması gerekmektedir (Öztemel, 2003).