Geri Yayılım Algoritması – Genel Bir Bakış

Yayınlanan: 2021-10-15

Yapay sinir ağları, yapay zeka teknolojisi dünyasında en trend olan kelime olmuştur. Ve sinir ağlarından bahsederken, geri yayılım üzerinde durulması gereken bir kelimedir. Geri yayılım algoritması, sinir ağının temel bloklarından biridir. Herhangi bir sinir ağının görevin yerine getirilmesi için eğitilmesi gerektiğinden, geri yayılım, sinir ağının eğitimi için kullanılan bir algoritmadır. Bir Yapay Sinir Ağında birden çok katmanın algılayıcılarını eğitmek için kullanılan denetimli öğrenme için bir algoritma şeklidir.

Verilerin eklendiği ve programlamanın mantığının gerçekleştirildiği yerde tipik programlama düşünülür. İşlem yapılırken çıktı kullanıcı tarafından alınır. Ancak bu çıktı bir şekilde programlamanın mantığını etkileyebilir. Geri yayılım algoritmasının yaptığı şey budur. Çıktı, mantığı etkileyecek ve daha iyi bir çıktı ile sonuçlanacaktır.

Makale, geri yayılım algoritması ve çalışma sürecine odaklanacaktır.

İçindekiler

Geri yayılımın önemi

Geri yayılımın önemi, sinir ağlarında kullanılmasında yatmaktadır. Sinir ağlarının tasarımı, ağırlıkların yalnızca başlangıçta başlatılmasını gerektirir. Bu ağırlıklar, ağırlıkları başlatmak için düşünülen bazı rastgele değerler veya herhangi bir rastgele değişkendir. Ağırlıklar rastgele yerleştirildiğinden, ağırlıkların doğru olmama ihtimali vardır. Bu, ağırlıkların modele uymadığı anlamına gelir. Modelin çıktısı, beklenen çıktıdan farklı olabilir. Sonuç olarak, yüksek bir hata değeri vardır. Ancak hatayı azaltmak her zaman önemlidir ve hatayı azaltmanın yollarını düşünmek bir meydan okumadır. Modelin, bu tür senaryolar meydana geldiğinde parametreleri buna göre değiştirmesi gerektiği konusunda eğitilmesi gerekir. Ve parametrelerin değişmesi ile hata değeri azalacaktır.

Bu nedenle, modelin eğitimi gereklidir ve geri yayılım, minimum hata değerleri olacak şekilde bir modelin eğitilmesinin yollarından biridir.

Sinir ağlarında geri yayılım algoritmasının birkaç adımı aşağıda özetlenebilir:

● Hata hesaplama: Model çıktısının, modelin gerçek çıktısından sapmasını hesaplayacaktır.

● Minimum hata: Bu adımda oluşan hatanın minimize edilip edilmediği kontrol edilecektir.

● Parametre güncelleme: Adım, model parametrelerinin güncellenmesi içindir. Model çok yüksek bir hata değeri üretiyorsa parametrelerini güncellemesi gerekir,

ağırlıklar ve önyargılar gibi. Model hata için tekrar kontrol edilir ve üretilen hata minimize edilinceye kadar süreç tekrarlanır.

● Son model: Tekrarlanan bir kontrol ve güncelleme sürecinden sonra hata en aza indirilir ve model artık girdiler için hazırdır. Girdiler modele beslenebilir ve modelden çıktılar analiz edilebilir.

Geri yayılım sinir ağı

Herhangi bir sinir ağında, geri yayılım algoritması minimum hata değerini arar. Bu, ağırlık uzayından minimum hata fonksiyonunun arandığı gradyan iniş tekniği veya delta kuralı ile yapılır. Hata fonksiyonunu azaltan ağırlıklar belirlendikten sonra, öğrenme probleminin çözümü olarak kabul edilir. 1960'larda önce algoritmanın tanıtılması, ardından sonraki yıllarda algoritmanın popülaritesi arttı. Sinir ağı, zincir kuralının bir yöntemi kullanılarak bu algoritma aracılığıyla etkin bir şekilde eğitilebilir. Sinir ağından ileriye doğru bir geçiş varsa, o zaman modelin parametresi tarafından önyargılar ve ağırlıklar gibi parametreleri ayarlayarak geriye doğru bir geçiş gerçekleştirilir. Geri yayılım algoritmasının çalışması için öncelikle sinir ağı tanımlanmalıdır.

sinir ağı modeli

Sinir ağının 4 katmanlı bir modeli düşünülürse, katmanlardan oluşacaktır; giriş katmanı, gizli katmanlar için tasarlanmış 4 nöron ve çıkış katmanı için tasarlanmış 1 nöron olacaktır.

Girdi katmanı: Girdi katmanı basit olabileceği gibi karmaşık da olabilir. Basit bir girdi katmanı, skalerleri içerecek ve karmaşık bir girdi katmanı, çok boyutlu matrislerden veya vektörlerden oluşacaktır. İlk aktivasyon setlerinin giriş değerlerine eşit olduğu kabul edilir.

Aktivasyon terimi, aktivasyon fonksiyonunun uygulanmasından sonra ortaya çıkan nöronun değeri anlamına gelir.

Gizli katmanlar: l katmanlarında z^l gibi belirli ağırlıklı girdileri ve aynı katman l'de a^l aktivasyonlarını kullanma. Bu katmanlar için katman 2 ve katman 3 gibi denklemler oluşturulur.

Katmanlar için aktivasyonlar, aktivasyon fonksiyonu f kullanılarak hesaplanır. Aktivasyon işlevi “f”, verilerde bulunan karmaşık kalıpların ağ tarafından öğrenilmesini sağlayan doğrusal olmayan bir işlevdir.

(n,m) şeklinde bir ağırlık matrisi oluşturulur; burada “n” sayısı çıkış nöronlarını, “m” ise sinir ağının giriş nöronlarını gösterir. Yukarıda bahsedilen katmanların modelinde n sayısı 2, m sayısı 4 olacaktır. Ayrıca ağırlığın alt indisindeki ilk sayı, bir sonraki katmandaki nöronun indeksi ile eşleşmelidir. İkinci sayı, ağın önceki katmanının nöronal indeksiyle eşleşmelidir.

Çıktı katmanı: Çıktı katmanı , sinir ağının son katmanıdır. Modelin değerini tahmin eder. Denklemin sadeleştirilmesi için bir matris gösterimi kullanılır.

Sinir ağının ileriye doğru yayılması ve değerlendirilmesi

Sinir ağının tanımlanmasında üretilen denklemler, ağın ileriye doğru yayılmasını oluşturur. Modelin çıktısını tahmin eder. Bir ileri yayılma algoritmasında, ilgili son adım, beklenen çıktıya karşı tahmin edilen çıktının değerlendirilmesidir. Öngörülen çıktı "s" ise ve beklenen çıktı "y" ise, o zaman s, y'ye karşı değerlendirilecektir. Eğitim veri kümesi (x,y) için x girdidir ve y çıktıdır.

s'nin y'ye karşı değerlendirilmesi için bir maliyet fonksiyonu "C" kullanılır. Maliyet fonksiyonu, ortalama karesel hata (MSE) gibi basit bir fonksiyon olabilir veya çapraz entropi gibi karmaşık bir fonksiyon olabilir. Model, C'nin değerine dayanarak, beklenen çıktıya, yani y'ye yaklaşmak için parametrelerin ne kadar ayarlanması gerektiğini öğrenir. Bu, geri yayılım algoritması ile yapılır.

Geri yayılım algoritması

Geri yayılım algoritması , modelin çıktıları ile beklenen çıktı arasındaki farkı en aza indirmek için ağ bağlantılarındaki ağırlıkların ayarlanmasını tekrar tekrar yapar. Ağda yeni ve kullanışlı özelliklerin oluşturulabilmesi de geri yayılım algoritmasındadır.

Geri yayılım algoritması ayrıca ağın tanımlanan maliyet fonksiyonunu, yani C'yi azaltmayı veya en aza indirmeyi amaçlar. Bu, önyargılar ve ağırlıklar gibi parametrelerdeki ayarlamalar yoluyla yapılır. Parametrelerde yapılacak bu düzeltme, tüm bu parametrelere göre maliyet fonksiyonları gradyanları aracılığıyla belirlenir.

C fonksiyonunun x noktasındaki gradyanı, x'teki C maliyet fonksiyonundaki tüm kısmi türevlerin vektörü olarak tanımlanır.

Bir fonksiyonun değerindeki değişime duyarlılık, x bağımsız değişkenindeki değişime göre C fonksiyonunun türeviyle ölçülür. Bu, C maliyet fonksiyonunun nereye hareket ettiğini söyleyenin türev olduğu anlamına gelir.

x parametresindeki değişiklik, gradyan tarafından tanımlanır. C'yi minimize etmek için x parametresinde gerekli olan değişiklikleri gösterir. Degradeleri hesaplamak için zincir kuralı kullanılır. Parametrelerin optimizasyonunu sağlayan gradyandır.

Geri yayılım algoritması, sinir ağının iyileştirilmesi ve eğitiminde bu şekilde çalışır. Makine öğrenimi yönlerinin önemli bir parçası olmaya hizmet eder. Sinir ağı eğitiminin önemli bir parçası olan geri yayılım algoritmasını anlamak esastır. Makine öğrenimi ve yapay zeka konusunda uzman olmak istiyorsanız upGrad tarafından sunulan “Master of Science in Machine Learning & Yapay Zeka” kursuna göz atabilirsiniz. Herhangi bir çalışan profesyonel kurs için uygundur. IIIT Bangalore'den ve ayrıca LJMU'dan uzman fakülteler aracılığıyla eğitileceksiniz. 650+ saatlik içerik öğrenimi, kendinizi gelecekteki AI geleceğine hazırlamanıza yardımcı olacaktır. Kursla ilgili tüm sorularınızı bekliyoruz.

Geri yayılım algoritmasında kullanılan yöntem nedir?

Geri yayılım algoritmasında kullanılan yöntem zincir kuralıdır.

Geri yayılım algoritması neden kullanılır?

Modelin hatasını en aza indirmek için geri yayılım algoritması kullanılır.

Geri yayılım algoritması ağın hatasını nasıl en aza indirir?

Geri yayılım algoritması, parametreleri buna göre ayarlamaya çalışır ve bu da hatanın en aza indirilmesini sağlar.