Dropout katmanlarının, genelleştirme, sağlamlık ve model performansını artırarak sinir ağlarında aşırı öğrenmeyi nasıl önlediğini keşfedin.
Bir bırakma katmanı temel bir kullanılan düzenli hale getirme tekniği yaygın sorunu önlemek için sinir ağları (NN) aşırı uyum. Bir model bir veri kümesi üzerinde eğitildiğinde, gürültüsünü ve özel ayrıntılarını öğrenme riskini taşır. temel genel veriler yerine eğitim verileri kalıpları. Bu ezberleme yeni, görülmemiş veriler üzerinde düşük performansa yol açar. Dropout bunu rastgele bir şekilde ele alır Eğitimin her aşamasında bir katmandaki nöronların bir kısmının devre dışı bırakılması ya da "bırakılması" süreci. Bu basit ama etkili strateji bir Geoffrey Hinton ve arkadaşlarının ufuk açıcı araştırma makalesi alanını önemli ölçüde ilerleten meslektaşları derin öğrenme (DL).
Bir bırakma katmanının arkasındaki mekanizma basit ama güçlüdür. sırasında model eğitim aşamasında, katman bir bırakma oranı olarak bilinen belirli bir olasılığa dayalı olarak sıfırlar ve birler maskesi. Eğer oran 0,5 olarak ayarlanırsa, nöronların yaklaşık %50'si bu ileri ve geri geçiş sırasında geçici olarak göz ardı edilir. Bu zorlar Kalan aktif nöronların öne çıkıp sağlam özellikleri bağımsız olarak öğrenmesi, ağın çok fazla güvenmesini önler olarak bilinen bir fenomen olan tek bir nöron üzerinde ağır ortak adaptasyon.
Çıkarım veya test aşaması sırasında bırakma katmanı tipik olarak kapalıdır. Eğitilen modelin tam kapasitesini kullanmak için tüm nöronlar aktiftir. için toplam aktivasyon değerlerinin eğitim aşamasıyla tutarlı kalmasını sağlamak için, ağırlıklar genellikle ölçeklendirilir çerçeve tarafından otomatik olarak. Gibi modern kütüphaneler PyTorch bu işlemleri sorunsuz bir şekilde bırakma uygulaması.
Kullanıcılar için ultralytics paketi gibi bir modele dropout uygulayarak
YOLO11 bir eğitim argümanını ayarlamak kadar basittir.
from ultralytics import YOLO
# Load a standard YOLO11 model
model = YOLO("yolo11n.pt")
# Train the model on a dataset with a custom dropout rate of 0.2
# This helps prevent overfitting on smaller datasets
results = model.train(data="coco8.yaml", epochs=10, dropout=0.2)
Bırakma, çeşitli alanlarda vazgeçilmezdir yapay zeka (AI) nerede modeller, çok sayıda parametre veya sınırlı veri nedeniyle aşırı uyuma eğilimlidir.
Bırakmanın diğer tekniklerden nasıl farklılaştığını anlamak, etkili hiperparametre ayarı.
