saplama Geri yayılım nedir? - Unite.AI
Bizimle iletişime geçin

AI 101

Geri yayılım nedir?

mm
Güncellenmiş on

Geri yayılım nedir?

Derin öğrenme sistemleri son derece karmaşık kalıpları öğrenebilir ve bunu ağırlıklarını ayarlayarak başarır. Derin bir sinir ağının ağırlıkları tam olarak nasıl ayarlanır? aracılığıyla ayarlanırlar bir süreç denilen geri yayılım. Geri yayılım olmasaydı, derin sinir ağları görüntüleri tanıma ve doğal dili yorumlama gibi görevleri yerine getiremezdi. Geri yayılımın nasıl çalıştığını anlamak, genel olarak derin sinir ağlarını anlamak açısından kritik öneme sahiptir; bu nedenle, geri yayılımı tartışalım ve sürecin bir ağın ağırlıklarını ayarlamak için nasıl kullanıldığını görelim.

Geri yayılımı anlamak zor olabilir ve geri yayılımı gerçekleştirmek için kullanılan hesaplamalar oldukça karmaşık olabilir. Bu makale, karmaşık matematikten çok az yararlanarak size geri yayılımın sezgisel bir anlayışını sağlamaya çalışacaktır. Ancak geri yayılımın ardındaki matematik hakkında biraz tartışma yapılması gerekiyor.

Geri yayılımın amacı

Geri yayılımın hedefini tanımlayarak başlayalım. Derin bir sinir ağının ağırlıkları, bir sinir ağının birimleri arasındaki bağlantıların gücüdür. Sinir ağı kurulduğunda, bir katmandaki birimlerin kendisiyle birleştirilen katmanlara nasıl bağlandığı hakkında varsayımlar yapılır. Veriler sinir ağı boyunca hareket ettikçe, ağırlıklar hesaplanır ve varsayımlar yapılır. Veriler ağın son katmanına ulaştığında, özelliklerin veri kümesindeki sınıflarla nasıl ilişkili olduğu hakkında bir tahmin yapılır. Öngörülen değerler ile gerçek değerler arasındaki fark, kayıp/hatadır ve geri yayılımın amacıdır. kaybı azaltmaktır. Bu, ağın ağırlıklarını ayarlayarak, varsayımları girdi özellikleri arasındaki gerçek ilişkilere daha çok benzeterek gerçekleştirilir.

Derin Bir Sinir Ağını Eğitmek

Geri yayılım bir üzerinde yapılmadan önce sinir ağı, bir sinir ağının düzenli/ileri eğitim geçişi gerçekleştirilmelidir. Bir sinir ağı oluşturulduğunda, bir dizi ağırlık başlatılır. Ağ eğitildikçe ağırlıkların değeri değişecektir. Bir sinir ağının ileri eğitim geçişi, üç ayrı adım olarak düşünülebilir: nöron aktivasyonu, nöron transferi ve ileri yayılım.

Derin bir sinir ağını eğitirken, birden fazla matematiksel fonksiyondan faydalanmamız gerekir. Derin bir sinir ağındaki nöronlar, gelen verilerden ve düğümü etkinleştirmek için gerekli değeri belirleyen bir aktivasyon fonksiyonundan oluşur. Bir nöronun aktivasyon değeri, girdilerin ağırlıklı toplamı olan birkaç bileşenle hesaplanır. Ağırlıklar ve giriş değerleri, aktivasyonu hesaplamak için kullanılan düğümlerin indeksine bağlıdır. Aktivasyon değeri hesaplanırken başka bir sayı, bir önyargı değeri dikkate alınmalıdır. Önyargı değerleri dalgalanmaz, dolayısıyla ağırlık ve girdilerle çarpılmazlar, sadece toplanırlar. Bütün bunlar, aktivasyon değerini hesaplamak için aşağıdaki denklemin kullanılabileceği anlamına gelir:

Aktivasyon = toplam(ağırlık * giriş) + yanlılık

Nöron etkinleştirildikten sonra, nöronun gerçek çıktısının çıktısının ne olacağını belirlemek için bir aktivasyon fonksiyonu kullanılır. Farklı aktivasyon fonksiyonları, farklı öğrenme görevleri için idealdir, ancak yaygın olarak kullanılan aktivasyon fonksiyonları arasında sigmoid fonksiyonu, Tanh fonksiyonu ve ReLU fonksiyonu yer alır.

İstenen aktivasyon fonksiyonu üzerinden aktivasyon değeri çalıştırılarak nöronun çıkışları hesaplandıktan sonra ileri yayılım yapılır. İleriye doğru yayılma, yalnızca bir katmanın çıktılarını alıp bir sonraki katmanın girdileri yapmaktır. Yeni girdiler daha sonra yeni aktivasyon fonksiyonlarını hesaplamak için kullanılır ve bu işlemin çıktısı bir sonraki katmana aktarılır. Bu süreç sinir ağının sonuna kadar devam eder.

Ağda geri yayılım

Geri yayılım süreci, bir modelin eğitim geçişinin nihai kararlarını alır ve ardından bu kararlardaki hataları belirler. Hatalar, ağın çıktıları/kararları ile ağın beklenen/istenen çıktıları karşılaştırılarak hesaplanır.

Ağın kararlarındaki hatalar hesaplandıktan sonra, bu bilgi ağ boyunca geri yayılır ve yol boyunca ağın parametreleri değiştirilir. Ağın ağırlıklarını güncellemek için kullanılan yöntem analize dayalıdır, özellikle zincir kuralına dayalıdır. Bununla birlikte, geriye yayılımın ardındaki fikri anlamak için bir analiz anlayışı gerekli değildir. Bir nörondan bir çıktı değeri sağlandığında, çıktı değerinin eğiminin bir transfer fonksiyonu ile hesaplanarak türetilmiş bir çıktı ürettiğini bilin. Geri yayılım yaparken, belirli bir nöron için hata aşağıdakine göre hesaplanır. formül:

hata = (beklenen_çıktı – gerçek_çıktı) * nöronun çıkış değerinin eğimi

Çıkış katmanındaki nöronlar üzerinde işlem yapılırken beklenen değer olarak sınıf değeri kullanılır. Hata hesaplandıktan sonra hata, gizli katmandaki nöronlar için girdi olarak kullanılır, yani bu gizli katmandaki hata, çıkış katmanında bulunan nöronların ağırlıklı hatalarıdır. Hata hesaplamaları, ağırlıklar ağı boyunca ağ boyunca geriye doğru hareket eder.

Ağa ilişkin hatalar hesaplandıktan sonra ağdaki ağırlıkların güncellenmesi gerekir. Belirtildiği gibi hatanın hesaplanması, çıkış değerinin eğiminin belirlenmesini içerir. Eğim hesaplandıktan sonra, ağdaki ağırlıkları ayarlamak için gradyan inişi olarak bilinen bir işlem kullanılabilir. Gradyan, açısı/dikliği ölçülebilen bir eğimdir. Eğim, "y üstü" veya "koşu" üzerindeki "yükseliş" grafiği çizilerek hesaplanır. Sinir ağı ve hata oranı durumunda, “y” hesaplanan hatayı, “x” ise ağın parametrelerini göstermektedir. Ağ parametrelerinin hesaplanan hata değerleriyle ilişkisi vardır ve ağın ağırlıkları ayarlandığında hata artar veya azalır.

“Gradyan iniş”, ağırlıkların hata oranını azaltacak şekilde güncellenmesi işlemidir. Geri yayılım, sinir ağının parametreleri ile ağı gradyan iniş için ayarlayan hata oranı arasındaki ilişkiyi tahmin etmek için kullanılır. Gradyan inişli bir ağı eğitmek, ileri yayılım yoluyla ağırlıkları hesaplamayı, hatayı geri yaymayı ve ardından ağın ağırlıklarını güncellemeyi içeriyordu.

Uzmanlık alanlarına sahip blogcu ve programcı Makine öğrenme ve Derin Öğrenme konular. Daniel, başkalarının yapay zekanın gücünü toplumsal fayda için kullanmasına yardım etmeyi umuyor.