Sözlük

Kaybolan Gradyan

Derin öğrenmede kaybolan gradyan problemini, bunun sinir ağları üzerindeki etkisini ve ReLU, ResNets ve daha fazlası gibi etkili çözümleri keşfedin.

YOLO modellerini Ultralytics HUB ile basitçe
eğitin

Daha fazla bilgi edinin

Kaybolan Gradyan, derin sinir ağlarının (NN ' ler), özellikle de Tekrarlayan Sinir Ağları (RNN 'ler) ve derin ileri beslemeli ağlar gibi çok katmanlı olanların eğitimi sırasında karşılaşılan yaygın bir zorluktur. Geriye yayılma işlemi sırasında, ağın ağırlıklarına göre kayıp fonksiyonunun gradyanlarının, çıktı katmanından önceki katmanlara doğru geriye doğru yayıldıkça son derece küçük hale geldiği durumlarda ortaya çıkar. Bu gradyanlar yok denecek kadar küçük hale geldiğinde, ilk katmanlardaki model ağırlıklarına yapılan güncellemeler ihmal edilebilir hale gelir ve bu katmanların öğrenmesini etkili bir şekilde durdurur. Bu durum, ağın karmaşık örüntüleri öğrenme ve verilerdeki uzun menzilli bağımlılıkları yakalama becerisini engeller ki bu da birçok derin öğrenme (DL) görevi için çok önemlidir.

Kaybolan Gradyanlar Neden Sorunludur?

Kaybolan gradyanlarla ilgili temel sorun, öğrenme sürecini durdurmalarıdır. Makine öğrenimi (ML) modelleri, Gradient Descent veya Adam gibi varyantları gibi optimizasyon algoritmaları kullanılarak hesaplanan hata sinyaline (gradyan) dayalı olarak dahili parametrelerini ayarlayarak öğrenir. Gradyan sıfıra yakınsa, parametre güncellemeleri minimumdur veya hiç yoktur. Derin ağlarda bu sorun daha da artar çünkü gradyan sinyali katmanlar arasında geri giderken tekrar tekrar küçük sayılarla çarpılır. Sonuç olarak, girişe en yakın katmanlar çıkışa daha yakın katmanlardan çok daha yavaş öğrenir veya hiç öğrenmeyebilir. Bu durum ağın optimum çözüme yaklaşmasını engeller ve genel performansını ve doğruluğunu sınırlar. Bu olguyu anlamak, etkili model eğitimi için çok önemlidir.

Patlayan Gradyanların Nedenleri ve Karşılaştırılması

Kaybolan gradyanlar genellikle şu nedenlerle ortaya çıkar:

  1. Aktivasyon Fonksiyonlarının Seçimi: Sigmoid veya hiperbolik tanjant (tanh) gibi bazı aktivasyon fonksiyonları, özellikle doygunluk bölgelerinde 1'den küçük türevlere sahiptir. Geriye yayılma sırasında, bu küçük türevlerin birçok katman boyunca çarpılması gradyanın üstel olarak küçülmesine neden olur.
  2. Derin Mimariler: Modern ağların derinliği, gradyanların çarpılma sayısını artırarak kaybolan gradyanları daha olası hale getirir.
  3. Ağırlık Başlatma: Ağırlıkların kötü başlatılması da soruna katkıda bulunabilir.

Kaybolan gradyanları ilgili problemden ayırt etmek önemlidir. Patlayan Gradyanlar. Patlayan gradyanlar, gradyanlar aşırı büyük olduğunda ortaya çıkar ve kararsız eğitime ve büyük, salınımlı ağırlık güncellemelerine yol açar. Bu durum tipik olarak gradyanlar tekrar tekrar 1'den büyük sayılarla çarpıldığında meydana gelir. Kaybolan gradyanlar öğrenmeyi engellerken, patlayan gradyanlar öğrenmenin sapmasına neden olur. Gradyan kırpma gibi teknikler genellikle patlayan gradyanlarla mücadele etmek için kullanılır.

Hafifletme Teknikleri

Kaybolan gradyan sorununu ele almak için çeşitli stratejiler geliştirilmiştir:

  • ReLU ve Varyantları: ReLU (Rectified Linear Unit) ve varyasyonları(Leaky ReLU, GELU, SiLU) gibi aktivasyon fonksiyonlarının kullanılması yardımcı olur çünkü türevleri pozitif girdiler için 1'dir ve gradyanın bu bölgelerde küçülmesini önler.
  • Özelleşmiş Mimariler: Artık Ağlar (ResNet) gibi mimariler, gradyanların katmanları atlamasına izin vererek geriye yayılma sırasında daha kısa bir yol sağlayan "atlama bağlantıları" sunar. Sıralı veriler için, Uzun Kısa Süreli Bellek (LSTM) ve Geçitli Tekrarlayan Birimler (GRU ) bilgi akışını kontrol etmek ve uzun diziler boyunca gradyanları korumak için geçitleme mekanizmaları kullanır.
  • Ağırlık Başlatma: He başlatma veya Xavier/Glorot başlatma gibi uygun başlatma şemaları, katmanlar arasında gradyan varyansının korunmasına yardımcı olur.
  • Toplu Normalleştirme: Toplu Normal leştirme, katman girdilerini normalleştirerek öğrenmeyi stabilize etmeye yardımcı olur, bu da dolaylı olarak kaybolan (ve patlayan) gradyanları azaltabilir.
  • Degrade Kırpma: Öncelikle degradeleri patlatmak için olsa da, degradeler için maksimum bir eşik belirlemek bazen büyük salınımlardan sonra çok küçük olmalarını önlemeye yardımcı olabilir.

Gerçek Dünyadaki Etkiler ve Örnekler

Kaybolan gradyanların ele alınması, yapay zekadaki ilerlemeler için çok önemli olmuştur:

  1. Doğal Dil İşleme (NLP): İlk RNN 'ler, kaybolan gradyanlar nedeniyle makine çevirisi veya duygu analizi gibi görevlerde uzun cümlelerle mücadele etti. LSTM'lerin ve GRU 'ların geliştirilmesi, modellerin uzun menzilli bağımlılıkları öğrenmesini sağlayarak performansı önemli ölçüde artırdı. Transformer gibi modern mimariler, öz dikkat gibi mekanizmalar kullanarak bunu daha da aşmaktadır.
  2. Bilgisayarla Görme: ResNet gibi mimariler ortaya çıkana kadar çok derin Evrişimsel Sinir Ağlarını (CNN'ler) eğitmek zordu. ResNets, yüzlerce hatta binlerce katmana sahip ağları mümkün kılarak görüntü sınıflandırma, nesne algılama (aşağıdaki gibi modellerde kullanıldığı gibi Ultralytics YOLO) ve görüntü segmentasyonu. Bu modelleri eğitmek için kullanılan çeşitli bilgisayarla görme veri kümelerini keşfedebilirsiniz.

Kaybolan gradyanları anlamak ve azaltmak, etkili derin öğrenme modelleri tasarlamanın ve eğitmenin önemli bir yönü olmaya devam ediyor ve bugün gördüğümüz, genellikle Ultralytics HUB gibi platformlar kullanılarak yönetilen ve dağıtılan güçlü AI uygulamalarını mümkün kılıyor.

Tümünü okuyun