Düzenlileştirme
L1, L2, dropout ve erken durdurma gibi düzenlileştirme teknikleriyle aşırı öğrenmeyi önleyin ve model genellemesini iyileştirin. Daha fazla bilgi edinin!
Düzenlileştirme, makine öğreniminde (ML) yaygın bir sorun olan aşırı uyumu önlemek için kullanılan bir dizi tekniktir. Bir model aşırı uyum sağladığında, eğitim verilerini, gürültüsü ve rastgele dalgalanmaları da dahil olmak üzere çok iyi öğrenir; bu da genelleme yeteneğini olumsuz etkiler ve yeni, görülmemiş veriler üzerinde doğru tahminler yapmasını engeller. Düzenlileştirme, kayıp fonksiyonuna model karmaşıklığı için bir ceza ekleyerek, modelin aşırı karmaşık desenler öğrenmesini engelleyerek çalışır. Bu, hem eğitim hem de doğrulama verileri üzerinde daha iyi performans gösteren daha basit, daha genellenebilir bir model oluşturmaya yardımcı olur.
Yaygın Düzenlileştirme Teknikleri
Model performansını ve sağlamlığını iyileştirmeye yardımcı olan çeşitli yaygın olarak kullanılan düzenlileştirme teknikleri vardır:
- L1 ve L2 Düzenlileştirme (L1 and L2 Regularization): Bunlar, en yaygın düzenlileştirme biçimleridir. Modelin ağırlıklarının boyutuna göre kayıp fonksiyonuna bir ceza eklerler. L1 düzenlileştirme (Lasso), daha az önemli özellik ağırlıklarını tam olarak sıfıra düşürme eğilimindedir ve bu da etkili bir şekilde özellik seçimi gerçekleştirir. L2 düzenlileştirme (Ridge veya Weight Decay), ağırlıkları küçük olmaya zorlar, ancak nadiren sıfır olur. Matematiksel farklılıklara daha derinlemesine bir bakış, Stanford CS229 ders notları gibi kaynaklarda bulunabilir.
- Dropout Katmanı: Bu teknik, sinir ağlarına özgüdür. Eğitim sırasında, her güncelleme adımında nöron aktivasyonlarının bir kısmı rastgele olarak sıfıra ayarlanır. Bu, nöronların aşırı uyum sağlamasını önler ve ağın daha sağlam özellikler öğrenmesini sağlar. Bu kavram, oldukça etkili bir araştırma makalesinde tanıtılmıştır.
- Veri Artırma (Data Augmentation): Eğitim verilerinin boyutunu ve çeşitliliğini yapay olarak genişleterek, veri artırma modelin küçük değişikliklere karşı daha değişmez hale gelmesine yardımcı olur. Yaygın teknikler arasında görüntüleri döndürme, kırpma, ölçekleme ve renkleri kaydırma bulunur. Ultralytics, modelin sağlamlığını artırmak için yerleşik YOLO veri artırma yöntemleri sunar.
- Erken Durdurma: Bu, modelin bir doğrulama kümesi üzerindeki performansının eğitim sırasında izlendiği pratik bir yöntemdir. Doğrulama performansı iyileşmeyi bıraktığında eğitim süreci durdurulur ve modelin daha sonraki evrelerde aşırı uyum sağlaması önlenir. Erken durdurmayı uygulama hakkında pratik bir kılavuz PyTorch belgelerinde mevcuttur.
Gerçek Dünya Uygulamaları
Düzenlileştirme, çeşitli alanlarda etkili derin öğrenme (DL) modelleri geliştirmek için temeldir.
- Bilgisayarlı Görü: Ultralytics YOLO gibi nesne tespiti modellerinde, düzenlileştirme COCO gibi veri kümelerinden gerçek dünya uygulamalarına genelleme yapmak için çok önemlidir. Örneğin, otomotiv çözümleri için yapay zekada, L2 düzenlileştirmesi ve dropout, bir trafik işareti dedektörünün farklı aydınlatma ve hava koşullarında güvenilir bir şekilde çalışmasına yardımcı olarak, eğitim sırasında görülen belirli örnekleri ezberlemesini önler.
- Doğal Dil İşleme (DDİ): Büyük Dil Modelleri (LLM'ler), çok sayıda parametreye sahip oldukları için aşırı öğrenmeye yatkındır. Makine çevirisi gibi uygulamalarda, modelin eğitim verilerinden yalnızca belirli cümle çiftlerini ezberlemek yerine dilbilgisi kurallarını ve semantik ilişkileri öğrenmesini sağlamak için Transformer mimarileri içinde dropout kullanılır.
Düzenlileştirme ve Diğer Kavramlar
Düzenlileştirmeyi (regularization) ML'deki diğer ilgili kavramlardan ayırmak önemlidir:
- Düzenlileştirme - Normalleştirme Karşılaştırması: Normalleştirme, girdi özelliklerini standart bir aralığa (örneğin, 0 ila 1) ölçeklendiren bir veri ön işleme tekniğidir. Ölçeği nedeniyle hiçbir özelliğin öğrenme sürecine hakim olmamasını sağlar. Düzenlileştirme ise, aşırı uyumu önlemek için eğitim sırasında modelin karmaşıklığını kısıtlayan bir tekniktir. Her ikisi de model performansını artırsa da, normalleştirme verilere odaklanırken, düzenlileştirme modelin kendisine odaklanır. Batch Normalization, katman bazında bir normalleştirme tekniğidir ve ayrıca hafif bir düzenlileştirme etkisi sağlar.
- Düzenlileştirme - Hiperparametre Ayarlama Karşılaştırması: Düzenlileştirme tekniklerinin, L1/L2'deki düzenlileştirme gücü (lambda) veya bırakma oranı gibi kendi hiperparametreleri vardır. Hiperparametre ayarlama, bu ayarlar için optimum değerleri bulma işlemidir ve genellikle Ultralytics Tuner sınıfı gibi araçlarla otomatikleştirilir. Kısacası, düzenlileştirmeyi uygulamanın en iyi yolunu bulmak için hiperparametre ayarlamayı kullanırsınız. Ultralytics HUB gibi platformlar, bu işlem için gereken deneyleri yönetmeye yardımcı olabilir.