Backpropagation
Geri yayılımın temellerini keşfet. Bu temel algoritmanın sinir ağlarını nasıl eğittiğini, Ultralytics YOLO26'yı nasıl optimize ettiğini ve modern yapay zekâ sistemlerini nasıl desteklediğini öğren.
"Hataların geriye yayılımı" ifadesinin kısaltması olan geri yayılım, modern yapay zekâ sistemlerinin verilerden öğrenmesini sağlayan temel algoritmadır. Model eğitimi sürecinde matematiksel bir haberci görevi görerek, bir sinir ağındaki her parametrenin hatalı bir tahmine ne ölçüde katkıda bulunduğunu tam olarak hesaplar. Kayıp fonksiyonunun her ağırlığa göre gradyanını belirleyen geri yayılım, ağın kendisini ayarlamasını ve zaman içinde doğruluğunu artırmasını sağlayan gerekli geri bildirimi sunar. Türevleri hesaplamaya yönelik bu verimli yöntem olmadan, derin ve karmaşık modelleri eğitmek hesaplama açısından uygulanabilir olmazdı.
Öğrenmenin Mekaniği#
Geri yayılımı anlamak için onu bir döngünün parçası olarak görmek faydalıdır. Bir sinir ağı bir görüntüyü veya metni işlediğinde, tahminde bulunmak için bir "ileri geçiş" gerçekleştirir. Ardından sistem, hatayı nicel olarak ifade eden bir kayıp fonksiyonu kullanarak bu tahmini doğru yanıtla karşılaştırır.
Geri yayılım, çıktı katmanında başlar ve ağ katmanları boyunca geriye doğru ilerler. Gradyanları hesaplamak için kalkülüsün zincir kuralından yararlanır. Bu gradyanlar, sisteme etkili bir şekilde "Hatayı azaltmak için bu ağırlığı biraz artır" veya "bu yanlılığı önemli ölçüde azalt" mesajını verir. Bu bilgi, milyonlarca parametrenin aynı anda ince ayarlanması gereken Evrişimli Sinir Ağları (CNNs) gibi derin mimariler için vazgeçilmezdir.
Geri Yayılım ve Optimizasyon Karşılaştırması#
Yeni başlayanların geri yayılımı optimizasyon adımıyla karıştırması yaygındır; ancak bunlar eğitim döngüsü içindeki farklı süreçlerdir.
- Geri yayılım tanılama aracıdır. Hata yüzeyinin eğimini gösteren bir harita oluşturarak gradyanları hesaplar. "Hatayı azaltmak için hangi yönde ilerlemeliyiz?" sorusunu yanıtlar.
- Optimizasyon eylemdir. Stokastik Gradyan İnişi (SGD) veya Adam optimizer gibi algoritmalar, geri yayılım tarafından sağlanan gradyanları alır ve ağırlıkları günceller. Geri yayılım haritaysa optimizer adımları atan yürüyüşçüdür.
Yapay Zekâda Gerçek Dünya Uygulamaları#
Geri yayılım, neredeyse tüm modern yapay zekâ başarılarının temel mekanizmasıdır ve modellerin eğitim verilerinden yeni, daha önce görülmemiş girdilere genelleme yapmasını sağlar.
- Bilgisayarlı Görü: YOLO26 gibi modellerin kullanıldığı nesne algılama görevlerinde geri yayılım, ağın uzamsal hiyerarşileri öğrenmesini sağlar. Modelin belirli kenarların şekilleri, bu şekillerin de otomobil veya yaya gibi nesneleri oluşturduğunu anlamasına yardımcı olur. İleriye dönük olarak Ultralytics Platform, kullanıcıların üretimdeki kusurları doğru şekilde tespit edebilen veya tarımda mahsul sağlığını izleyebilen özel modeller oluşturmasına yardımcı olmak için bu eğitim tekniklerinden yararlanır.
- Doğal Dil İşleme (NLP): OpenAI tarafından geliştirilenler gibi Büyük Dil Modelleri (LLMs) için geri yayılım, sistemin bir cümledeki sonraki kelimenin olasılığını öğrenmesini sağlar. Model, hatalı metin tahminlerinden kaynaklanan hataları yayarak, makine çevirisi gibi uygulamalar için gerekli olan incelikli dil bilgisi ve bağlamı öğrenir.
Derin Ağlardaki Zorluklar#
Güçlü olmasına rağmen algoritma, çok derin ağlarda zorluklarla karşılaşır. Kaybolan gradyan sorunu, gradyanlar geriye doğru ilerlerken çok küçüldüğünde ortaya çıkar ve erken katmanların öğrenmeyi durdurmasına neden olur. Buna karşılık patlayan gradyan, gradyanların büyük ölçüde kararsız değerlere birikmesini ifade eder. Bu sorunları azaltmak için Batch Normalization gibi teknikler ve ResNet gibi özel mimariler sıklıkla kullanılır.
Python Kod Örneği#
ultralytics gibi üst düzey kütüphaneler eğitim sırasında bu süreci soyutlasa da PyTorch framework'ü, mekanizmayı doğrudan görmene olanak tanır. .backward() yöntemi geri yayılım sürecini tetikleyerek requires_grad=True bulunan tüm tensörler için türevleri hesaplar.
import torch
# Create a tensor that tracks operations for backpropagation
w = torch.tensor([2.0], requires_grad=True)
x = torch.tensor([3.0])
# Forward pass: compute prediction and loss (simple example)
# Let's assume the target value is 10.0
loss = (w * x - 10.0) ** 2
# Backward pass: This command executes backpropagation
loss.backward()
# The gradient is now stored in w.grad, showing how to adjust 'w'
# This tells us the slope of the loss with respect to w
print(f"Gradient (dL/dw): {w.grad.item()}")Ek Okuma#
Geri yayılımın yapay zekâ geliştirmenin daha geniş kapsamına nasıl oturduğunu anlamak için veri artırma kavramını incelemek faydalıdır; çünkü veri artırma, algoritmanın etkili bir şekilde genelleme yapması için gereken çeşitli örnekleri sağlar. Ayrıca ortalama hassasiyet (mAP) gibi eğitimin başarısını değerlendirmek için kullanılan belirli metrikleri anlamak, geri yayılım sürecinin modeli ne kadar iyi optimize ettiğini yorumlamana yardımcı olur. Daha derin bir teorik inceleme için Stanford CS231n ders notları, ilgili kalkülüsün mükemmel bir teknik açıklamasını sunar.









