Focal Loss'un nesne algılamada sınıf dengesizliğinin üstesinden nasıl geldiğini keşfedin - dengesiz veri kümelerinde doğruluğu artırmak için eğitimi zor örneklere odaklayın.
Odak Kaybı, model eğitimi sırasında aşırı sınıf dengesizliği sorununu ele almak için öncelikle bilgisayar görme görevlerinde kullanılan özel bir amaç fonksiyonudur. Özellikle, arka plan örneklerinin (negatif örnekler) sayısı ilgi konusu nesnelerin (pozitif örnekler) sayısını büyük ölçüde aştığı nesne algılama senaryolarında çok değerlidir. Her örneğe atanan cezayı dinamik olarak ölçeklendirerek, Odak Kaybı "kolay" örneklerin ağırlığını etkili bir şekilde azaltır örneklerin classify optimizasyon sürecinin classify zor olan "zor" örnekler üzerinde yoğunlaşmasını sağlar. Bu hedefli yaklaşım, çok sayıda kolay negatif örneğin eğitim sinyalini bastırmasını önler ve böylece seyrek ancak kritik nesneler üzerinde modelin doğruluğunu artırır. Nesne algılama görevlerinde, arka plan örneklerinin sayısı genellikle ilgi nesnelerinin sayısından çok daha fazladır. Bu durum, model eğitimi sırasında sınıf dengesizliği sorununa yol açar.
Birçok derin öğrenme (DL) uygulamasında, özellikle tek aşamalı nesne algılayıcılarda, eğitim süreci bir görüntüdeki binlerce aday konumun değerlendirilmesini içerir. Bu konumların çoğu hiçbir nesne içermez ve arka plan olarak kolayca tanımlanır. Çapraz Entropi Kaybı gibi standart işlevler tüm yanlış sınıflandırmaları eşit şekilde ele alır. Sonuç olarak, binlerce kolay arka plan örneğinden biriken hata, birkaç zor pozitif örneğin sinyalini bastırabilir ve çoğunluk sınıfına yönelik önyargılı bir modele yol açabilir.
Odak Kaybı, genellikle gama ($\gamma$) olarak gösterilen bir odaklama parametresi ekleyerek standart kayıp hesaplamasını değiştirir. Doğru sınıfın olasılığı arttıkça (örneğin "kolay" olduğu anlamına gelir), modülasyon faktörü kayıp katkısını sıfıra yakın bir değere indirir. Tersine, yanlış sınıflandırılmış veya belirsiz örnekler ("zor" durumlar) için kayıp önemli ölçüde kalır. Bu mekanizma, optimizasyon algoritmasının, modelin zaten bildiği bilgileri doğrulamak yerine, gerçekten iyileştirme gerektiren örnekleri temel alarak model ağırlıklarını güncellemesini sağlar.
Dengesiz veri kümelerini işleme yeteneği, Focal Loss'u güvenlik açısından kritik ve yüksek hassasiyet gerektiren alanlarda modern AI çözümlerinin temel taşı haline getirir.
Bu ultralytics kütüphane, eğitim desteklemek için kayıp fonksiyonlarının optimize edilmiş uygulamalarını içerir
en son teknoloji modelleri gibi YOLO26. Üst düzey
eğitim, Ultralytics Platformu, geliştiriciler
özel boru hatları için belirli kayıp bileşenlerine erişebilirler.
Aşağıdaki örnek, Focal Loss'u nasıl başlatacağınızı ve tahmin puanları ile
hedef etiketleri arasındaki hatayı ultralytics yardımcı paket.
import torch
from ultralytics.utils.loss import FocalLoss
# Initialize Focal Loss with a standard gamma value
# Gamma=1.5 aggressively down-weights easy examples
criterion = FocalLoss(gamma=1.5)
# Example: Predictions (logits) and binary Ground Truth labels
predictions = torch.tensor([[0.8], [-1.5], [0.1]], requires_grad=True)
targets = torch.tensor([[1.0], [0.0], [1.0]])
# Calculate the loss
loss = criterion(predictions, targets)
print(f"Computed Focal Loss: {loss.item():.4f}")
Odak Kaybının hata ölçümünün daha geniş kapsamına nasıl uyduğunu anlamak, doğru eğitim stratejisini seçmek için yararlıdır.