Focal Loss
تضبط خسارة البؤرة الانتروبيا المتقاطعة بحيث يكون أثر الأمثلة السهلة ضئيلًا، وتوجّه الأمثلة النادرة والصعبة التدريب. الصيغة وgamma وRetinaNet والمتغيرات.
الخسارة البؤرية هي دالة خسارة معدّلة للخسارة المتقاطعة تقلل وزن الأمثلة التي يصنفها النموذج جيدًا بالفعل، لكي يركز التدريب على الأمثلة الصعبة التي أسيء تصنيفها. قدمها Lin وآخرون عام 2017 في ورقة الخسارة البؤرية للكشف الكثيف عن الأجسام، مع كاشف RetinaNet، للتعامل مع الاختلال الشديد بين الخلفية والأجسام في كشف الأجسام. وتُستخدم الآن على نطاق واسع في مسائل التصنيف التي يفوق فيها عدد إحدى الفئات أعداد الفئات الأخرى بكثير.
مشكلة اختلال التوازن#
تصنّف كواشف الأجسام أحادية المرحلة كل موقع مرشح في الصورة، ويقيّم RetinaNet نحو 100,000 موقع لكل صورة. تكون جميع هذه المواقع تقريبًا خلفية يتعلم النموذج رفضها مبكرًا أثناء التدريب. في ظل الخسارة المتقاطعة القياسية، يضيف كل مثال سلبي سهل مقدارًا صغيرًا من الخسارة، لكن عددها الهائل يجعلها تهيمن على الخسارة الإجمالية وتدرجاتها، فتطغى على المواقع القليلة التي تحتوي على أجسام. تتجنب كواشف الأجسام ثنائية المرحلة ذلك بترشيح المرشحين عبر مرحلة اقتراح المناطق وأخذ عينات بنسبة ثابتة من المقدمة والخلفية، بينما اعتمدت كواشف أحادية المرحلة الأقدم على تنقيب السلبيات الصعبة. تعالج الخسارة البؤرية الاختلال ضمن دالة الخسارة نفسها، لذا يمكن التدريب على كل مرشح دون أخذ عينات.
آلية عمل الخسارة البؤرية#
اكتب p_t لاحتمال الفئة الصحيحة الذي يعيّنه النموذج. الخسارة المتقاطعة هي CE = -log(p_t)، وتضرب الخسارة البؤرية فيها عامل تعديل:
FL = -α_t (1 - p_t)^γ log(p_t)
- معامل التركيز
γ(gamma): يتحكم في سرعة انخفاض خسارة الأمثلة السهلة. عندγ = 0، تساوي الخسارة البؤرية الخسارة المتقاطعة. ومع اقترابp_tمن 1، يقترب(1 - p_t)^γمن 0، بينما يحتفظ المثال المصنّف خطأً، الذي لهp_tصغير، بمعظم خسارته المتقاطعة. وفق أفضل إعداد في الورقة،γ = 2، يحصل المثال المصنف باستخدامp_t = 0.9على خسارة أقل بمئة مرة مقارنة بالخسارة المتقاطعة. - وزن الموازنة
α_t(alpha): وزن ثابت للفئة الموجبة ومتممه للفئة السالبة. يستخدم RetinaNet القيمةα = 0.25معγ = 2، كما تطبّع الورقة الخسارة الإجمالية لكل صورة بعدد المراسي المسندة إلى الأجسام.
تطبّق الدالة sigmoid_focal_loss في torchvision الصيغة. يؤدي تعيين alpha=-1 إلى تعطيل وزن الموازنة، ما يعزل تأثير γ في مثال موجب سهل وآخر متوسط وآخر صعب:
import torch
import torch.nn.functional as F
from torchvision.ops import sigmoid_focal_loss
# Logits for three positive examples: easy, moderate, and hard
logits = torch.tensor([4.0, 1.0, -2.0])
targets = torch.ones(3)
# alpha=-1 turns off class weighting so only the gamma focusing term differs
bce = F.binary_cross_entropy_with_logits(logits, targets, reduction="none")
focal = sigmoid_focal_loss(logits, targets, alpha=-1, gamma=2.0, reduction="none")
for p, b, f in zip(logits.sigmoid(), bce, focal):
print(f"p={p:.2f} cross-entropy={b:.6f} focal={f:.6f} ratio={b / f:,.1f}x")تقلّص الخسارة البؤرية خسارة المثال السهل (p = 0.98) بعامل يقارب 3,091، وخسارة المثال المتوسط (p = 0.73) بعامل 13.8، وخسارة المثال الصعب (p = 0.12) بعامل 1.3 فقط، لذا يحمل المثال الصعب الآن معظم إشارة التدريب.
استخدامات الخسارة البؤرية#
إلى جانب RetinaNet، تدرّب الخسارة البؤرية وصيغها المتنوعة فرع التصنيف في كثير من الكواشف الكثيفة والكواشف المعتمدة على المحولات، بما فيها نماذج عائلة DETR مثل Deformable DETR. في تحليل الصور الطبية، لا تشغل الآفات سوى جزء ضئيل من البكسلات غالبًا، لذا تجمع نماذج تجزئة الصور عادةً بين الخسارة البؤرية وخسارة Dice للحيلولة دون تجاهل النتائج الصغيرة ولزيادة الاستدعاء. في Ultralytics، يقيّم مدرّب RT-DETR الفئات باستخدام Varifocal Loss، وتوفر الوحدة ultralytics.utils.loss فئة FocalLoss بالقيم الافتراضية gamma=1.5 وalpha=0.25.
الخسارة البؤرية والتقنيات المرتبطة بها#
- ترجيح الفئات: تمنح الخسارة المتقاطعة الموزونة كل مثال من فئة نادرة التعزيز الثابت نفسه بناءً على تواتر الفئة. أما الخسارة البؤرية فتزن كل مثال وفق مدى صعوبته الحالية، لذا تتغير الأوزان مع تعلم النموذج.
- تنقيب السلبيات الصعبة: يحتفظ بأعلى الأمثلة السلبية خسارةً ويتخلص من البقية. أما الخسارة البؤرية فتحتفظ بكل الأمثلة وتقلل أوزان السهلة منها بسلاسة.
- Varifocal Loss: صيغة غير متناظرة من VarifocalNet تقلل وزن السلبيات فقط وتدرّب الإيجابيات على درجة تراعي IoU، بحيث تعكس الثقة في الفئة أيضًا جودة تحديد الموضع.
- خسارة البؤرة التوزيعية (DFL): خسارة انحدار للإطارات من الخسارة البؤرية المعممة تتعامل مع كل حافة في الإطار بوصفها توزيعًا احتماليًا متقطعًا. لا تشترك مع الخسارة البؤرية إلا في الاسم، وتُطبّق على انحدار الإطارات.










