Yapay Sinir Ağı - Yapı Taşları
YSA'nın işlenmesi aşağıdaki üç yapı taşına bağlıdır:
- Ağ topolojisi
- Ağırlık Ayarlamaları veya Öğrenme
- Aktivasyon Fonksiyonları
Bu bölümde, YSA'nın bu üç yapı taşı hakkında ayrıntılı olarak tartışacağız.
Ağ topolojisi
Bir ağ topolojisi, bir ağın düğümleri ve bağlantı hatları ile birlikte düzenlenmesidir. Topolojiye göre YSA aşağıdaki türler olarak sınıflandırılabilir -
Feedforward Ağı
Katmanlarda işlem birimleri / düğümleri olan ve bir katmandaki tüm düğümler, önceki katmanların düğümlerine bağlanan, yinelenmeyen bir ağdır. Bağlantının üzerlerinde farklı ağırlıkları vardır. Geri besleme döngüsü yoktur, sinyalin girişten çıkışa yalnızca tek yönde akabileceği anlamına gelir. Aşağıdaki iki türe ayrılabilir -
Single layer feedforward network- Kavram, yalnızca bir ağırlıklı katmana sahip ileri beslemeli YSA'dır. Başka bir deyişle, giriş katmanının çıkış katmanına tamamen bağlı olduğunu söyleyebiliriz.
Multilayer feedforward network- Kavram, birden fazla ağırlıklı katmana sahip ileri beslemeli YSA'dır. Bu ağ, giriş ve çıkış katmanı arasında bir veya daha fazla katmana sahip olduğundan, buna gizli katmanlar denir.
Geri Bildirim Ağı
Adından da anlaşılacağı gibi, bir geribildirim ağının geribildirim yolları vardır, bu da sinyalin döngüleri kullanarak her iki yönde de akabileceği anlamına gelir. Bu, onu bir denge durumuna ulaşana kadar sürekli değişen doğrusal olmayan dinamik bir sistem yapar. Aşağıdaki türlere ayrılabilir -
Recurrent networks- Kapalı döngülere sahip geribildirim ağlarıdır. Aşağıda iki tür tekrarlayan ağ bulunmaktadır.
Fully recurrent network - En basit sinir ağı mimarisidir çünkü tüm düğümler diğer tüm düğümlere bağlıdır ve her düğüm hem giriş hem de çıkış olarak çalışır.
Jordan network - Aşağıdaki şemada gösterildiği gibi çıkışın geri besleme olarak tekrar girişe gideceği kapalı döngü bir ağdır.
Ağırlık Ayarlamaları veya Öğrenme
Yapay sinir ağında öğrenme, belirli bir ağın nöronları arasındaki bağlantıların ağırlıklarını değiştirme yöntemidir. YSA'da öğrenme, denetimli öğrenme, denetimsiz öğrenme ve pekiştirmeli öğrenme olmak üzere üç kategoriye ayrılabilir.
Denetimli Öğrenme
Adından da anlaşılacağı gibi, bu tür bir öğrenme, bir öğretmenin gözetiminde yapılır. Bu öğrenme süreci bağımlıdır.
YSA'nın denetimli öğrenme altındaki eğitimi sırasında, bir çıktı vektörü verecek olan giriş vektörü ağa sunulur. Bu çıktı vektörü, istenen çıktı vektörüyle karşılaştırılır. Gerçek çıkış ile istenen çıkış vektörü arasında bir fark varsa, bir hata sinyali üretilir. Bu hata sinyali temelinde, gerçek çıktı istenen çıktıyla eşleşene kadar ağırlıklar ayarlanır.
Denetimsiz Öğrenme
Adından da anlaşılacağı gibi, bu tür öğrenme, bir öğretmenin gözetimi olmadan yapılır. Bu öğrenme süreci bağımsızdır.
Denetimsiz öğrenme altında YSA eğitimi sırasında, benzer tipteki girdi vektörleri kümeler oluşturmak için birleştirilir. Yeni bir giriş modeli uygulandığında, sinir ağı, giriş modelinin ait olduğu sınıfı belirten bir çıktı yanıtı verir.
Ortamdan istenen çıktının ne olması gerektiği ve bunun doğru mu yanlış mı olduğu konusunda herhangi bir geri bildirim yoktur. Bu nedenle, bu tür öğrenmede, ağın kendisi giriş verilerinden örüntüleri ve özellikleri ve çıktı üzerindeki giriş verilerinin ilişkisini keşfetmelidir.
Takviye Öğrenme
Adından da anlaşılacağı gibi, bu tür öğrenme, ağı bazı kritik bilgiler üzerinden güçlendirmek veya güçlendirmek için kullanılır. Bu öğrenme süreci denetimli öğrenmeye benzer, ancak çok daha az bilgiye sahip olabiliriz.
Güçlendirmeli öğrenme altında ağ eğitimi sırasında, ağ çevreden bazı geri bildirimler alır. Bu, onu denetimli öğrenmeye biraz benzer kılar. Bununla birlikte, burada elde edilen geri bildirim öğretici değil değerlendiricidir, yani denetimli öğrenmede olduğu gibi öğretmen yoktur. Geri bildirimi aldıktan sonra ağ, gelecekte daha iyi kritik bilgileri elde etmek için ağırlık ayarlamaları yapar.
Aktivasyon Fonksiyonları
Kesin bir çıktı elde etmek için girdiye uygulanan ekstra kuvvet veya çaba olarak tanımlanabilir. YSA'da, kesin çıktıyı elde etmek için girdinin üzerine etkinleştirme işlevlerini de uygulayabiliriz. Aşağıda, ilgilenilen bazı etkinleştirme işlevleri verilmiştir -
Doğrusal Aktivasyon Fonksiyonu
Giriş düzenlemesi yapmadığı için kimlik işlevi olarak da adlandırılır. Şu şekilde tanımlanabilir -
$$ F (x) \: = \: x $$
Sigmoid Aktivasyon Fonksiyonu
Aşağıdaki gibi iki tiptir -
Binary sigmoidal function- Bu aktivasyon işlevi 0 ile 1 arasında giriş düzenlemesi yapar. Doğası gereği pozitiftir. Her zaman sınırlıdır, bu da çıktısının 0'dan küçük ve 1'den fazla olamayacağı anlamına gelir. Ayrıca doğası gereği kesinlikle artmaktadır, bu da daha fazla girdinin çıktı olacağı anlamına gelir. Olarak tanımlanabilir
$$ F (x) \: = \: sigm (x) \: = \: \ frac {1} {1 \: + \: exp (-x)} $$
Bipolar sigmoidal function- Bu aktivasyon işlevi -1 ile 1 arasında girdi düzenleme gerçekleştirir. Doğası gereği pozitif veya negatif olabilir. Her zaman sınırlıdır, yani çıktısı -1'den küçük ve 1'den fazla olamaz. Ayrıca sigmoid işlevi gibi doğası gereği kesinlikle artmaktadır. Olarak tanımlanabilir
$$ F (x) \: = \: sigm (x) \: = \: \ frac {2} {1 \: + \: exp (-x)} \: - \: 1 \: = \: \ frac {1 \: - \: exp (x)} {1 \: + \: exp (x)} $$