Bu yazıda, yapay sinir ağlarının temel taşlarından biri olan Adaline (Adaptif Doğrusal Nöron) modelini detaylıca inceleyeceğiz. Adaline'in ne olduğu, mimarisi, çalışma prensibi ve öğrenme kuralı (delta kuralı) hakkında kapsamlı bilgiler sunduktan sonra, bir sonraki yazıda Adaline ile zaman serisi tahmini örneği paylaşacağım.
Adaline (Adaptif Doğrusal Nöron) Nedir? Yapay Sinir Ağları ve Öğrenme Kuralı
Adaline (Adaptive Linear Neuron), 1960 yılında Stanford Üniversitesi'nden Prof. Bernard Widrow ve öğrencisi Ted Hoff tarafından geliştirilmiş, denetimli (danışmanlı) öğrenme algoritmasına sahip erken dönem bir yapay sinir ağı modelidir. Tarihsel olarak, Frank Rosenblatt'in algılayıcı (Perceptron) modelinden hemen sonra gelir ve onun bir evrimi niteliğindedir.
Adaline'in temel özellikleri şunlardır:
-
Tanım: Adaline, Uyarlanabilir Doğrusal Nöron olarak bilinir. "Uyarlanabilir" sıfatı, ağırlıklarını girdilere göre dinamik olarak güncellemesinden gelir.
-
Yapı: Adaline, tek bir doğrusal birime (nöron) sahip basit bir sinir ağıdır.
-
Öğrenme Kuralı: Perceptron'dan farklı olarak, Adaline Delta Kuralı (Widrow-Hoff öğrenme kuralı veya En Küçük Ortalama Kareler - LMS kuralı olarak da bilinir) ile eğitilir. Bu, onu Perceptron'dan ayıran en önemli özelliktir.
Adaline ile Perceptron Arasındaki Fark Nedir?
Bu iki model sıklıkla karıştırılır. Temel fark, öğrenme sırasında kullanılan çıktıdadır:
-
Perceptron: Hata sinyalini hesaplamak için adım fonksiyonunun çıktısını (0 veya 1) kullanır. Bu nedenle, yalnızca doğrusı olarak ayrılabilir problemleri çözebilir.
-
Adaline: Hata sinyalini hesaplamak için doğrusal birleştiricinin çıktısını (net girdiyi, yani aktivasyonu) kullanır. Bu, ağırlık güncellemelerinin daha hassas olmasını sağlar. Adım fonksiyonu (veya herhangi bir niceleyici) sadece eğitim tamamlandıktan sonra tahmin aşamasında kullanılır.
Adaline Sinir Ağı Mimarisi
Adaline'in mimarisi oldukça basittir ve günümüzdeki karmaşık ağların temelini oluşturur:
-
Giriş Katmanı: Birden fazla giriş birimi (x1,x2,...,xn) bulunur. Bu girişler genellikle ikili değerlerdir (+1 veya -1).
-
Ağırlıklar: Her giriş birimi, eğitilebilir bir ağırlık (w1,w2,...,wn) ile çarpılır. Ağırlıklar pozitif veya negatif olabilir.
-
Bias (Eşik): Mimaride ayrıca bir bias (önyargı, b) birimi bulunur. Bias, aktivasyon fonksiyonunun eşik değerini kaydırarak modelin esnekliğini artırır.
-
Toplama Fonksiyonu (Doğrusal Birleştirici): Tüm ağırlıklı girişler ve bias toplanarak net girdi (net input) hesaplanır. Bu, Adaline'in doğrusal çıktısıdır.
net=b+∑i=1n(xi∗wi) -
Transfer / Aktivasyon Fonksiyonu (Niceleyici): Başlangıçta ağırlıklar rastgele atanır. Hesaplanan net girdi, eğitim sırasında doğrudan hata hesaplamasında kullanılır. Ancak ağın nihai çıktısını (y) üretmek için net girdi, bir niceleyici transfer fonksiyonuna (genellikle signum fonksiyonu, yani işaret fonksiyonu) sokulur. Bu fonksiyon, net girdiyi +1 veya -1'e dönüştürür.
y=f(net)={+1eğer net≥0−1eğer net<0
Adaline Öğrenme Kuralı (Delta Kuralı) Algoritması
Adaline'in eğitimi, gerçek çıktı ile hedef çıktı arasındaki hatayı minimize etmeye dayanır. İşte adım adım eğitim algoritması:
Adım 0: Başlangıç (İnit)
-
Ağırlıklar (wi) ve bias (b) küçük rastgele değerler ile başlatılır (genellikle sıfır olmayan).
-
Öğrenme hızı parametresi (α, 0 < α ≤ 1) belirlenir.
-
Maksimum epoch sayısı veya hedef hata toleransı gibi durdurma koşulları tanımlanır.
Adım 1: Döngü Başlangıcı
-
Durdurma koşulu sağlanana kadar (örneğin, maksimum epoch sayısına ulaşılana veya hata toleransın altına inene kadar) Adım 2-6 tekrarlanır.
Adım 2: Eğitim Verisi Döngüsü
-
Her bir eğitim çifti (giriş vektörü x ve hedef çıktı t) için Adım 3-5 uygulanır.
Adım 3: Girişlerin Ayarlanması
-
Giriş birimlerinin aktivasyonları, giriş vektörü olarak atanır.
Adım 4: Net Girdinin Hesaplanması
-
Çıkış birimine gelen net girdi (net) hesaplanır.
net=b+∑i=1n(xi∗wi)
Adım 5: Ağırlıkların ve Biasın Güncellenmesi (Delta Kuralı)
-
Hata () hesaplanır: δ=t−net (Dikkat: Hedef ile net girdi arasındaki fark!)
-
Ağırlıklar güncellenir: wi(yeni)=wi(eski)+α∗δ∗xi
-
Bias güncellenir: b(yeni)=b(eski)+α∗δ (Bias için giriş değeri her zaman +1'dir.)
Adım 6: Durdurma Koşulunun Kontrolü
-
Bir epoch sonunda, tüm eğitim verisi için hesaplanan hataların kareleri toplamı (MSE) veya ağırlıklardaki maksimum değişim miktarı kontrol edilir. Bu değer, önceden belirlenen tolerans değerinden küçükse eğitim durdurulur, aksi takdirle Adım 1'e dönülür.
Adaline Test Algoritması
Eğitim tamamlandıktan sonra ağın performansını test etmek için aşağıdaki prosedür izlenir. Artık tahmin aşamasında olduğumuz için işaret (signum) fonksiyonu devreye girer.
Adım 0: Ağırlıkların Yüklenmesi
-
Eğitim algoritması sonucu elde edilen nihai ağırlıklar (wi) ve bias (b) yüklenir.
Adım 1: Test Verisi Döngüsü
-
Test edilecek her bir giriş vektörü () için Adım 2-4 uygulanır.
Adım 2: Girişlerin Ayarlanması
-
Giriş birimlerinin aktivasyonları, test giriş vektörü x olarak atanır.
Adım 3: Net Girdinin Hesaplanması
-
Çıkış birimine gelen net girdi (net) hesaplanır.
net=b+∑i=1n(xi∗wi)
Adım 4: Aktivasyon (Transfer) Fonksiyonunun Uygulanması
-
Ağın nihai çıktısı () bulmak için net girdiye işaret fonksiyonu uygulanır.
-
Eğer net ≥ 0 ise, çıktı y=+1
-
Eğer net< 0 ise, çıktı y=−1
-
--->>>Yapay Sinir Ağı nedir, matlab yapay sinir ağı, yapay sinir ağı ÖRNEK 1 için TIKLAYINIZ<<<---
--->>>Artificial Neural Network Example, Yapay Sinir Ağları Uygulamaları ÖRNEK 2 için TIKLAYINIZ <<<---
--->>>Matlab Yapay sinir ağları, YSA, Yapay sinir ağı algoritmaları ÖRNEK 3 için TIKLAYINIZ<<<---
--->>>Yapay sinir ağı örnekleri, yapay sinir ağları, Artificial Neural Network ÖRNEK 4 için TIKLAYINIZ <<<---
Sitede, yapay sinir ağı, yapay sinir ağları nelerdir, derin öğrenme nedir, deep learning nedir, bulanık mantık nedir, fuzzy logic nedir, yapay sinir ağları uygulamaları, makine öğrenmesi, yapay sinir ağı algoritmaları, makine öğrenmesi ve derin öğrenme, regresyon, machine learning nedir, matlab, matlab örnekleri, matlab machine learning gibi soruların cevaplarına yönelik içerikler yer almaktadır.
‘Yapay sinir ağı’, ‘yapay sinir ağları nedir’, ‘derin öğrenme nedir’, ‘deep learning nedir’, ’bulanık mantık nedir’, ‘fuzzy logic nedir’, ‘yapay sinir ağları uygulamaları’, ‘makine öğrenmesi’, ‘yapay sinir ağı algoritmaları’, ‘makine öğrenmesi ve derin öğrenme’, regresyon, ‘machine learning nedir’, matlab, ‘matlab örnekleri’, ‘matlab machine learning’, ‘artificial neural networks’
