Temperature Scaling
اكتشف كيف يعمل تحجيم درجة الحرارة (temperature scaling) على معايرة ثقة نماذج الذكاء الاصطناعي. تعلم تحسين احتمالات المخرجات لتنبؤات Ultralytics YOLO فائقة الموثوقية.
يعد قياس درجة الحرارة تقنية معالجة لاحقة مستخدمة على نطاق واسع ومصممة لمعايرة الاحتمالات المتوقعة لنماذج الذكاء الاصطناعي (AI) وتعلم الآلة (ML). في التعلم العميق الحديث، غالبًا ما تظهر النماذج ثقة مفرطة، مما يعني أن احتمالاتها المتوقعة لا تعكس بدقة المعايرة الإحصائية الحقيقية أو احتمالية الصواب. يعالج قياس درجة الحرارة هذا الأمر عن طريق قسمة درجات المخرجات الأولية للشبكة (اللوجيتات) على معلمة قياسية واحدة متعلمة تُعرف بـ "درجة الحرارة" (T) قبل تطبيق دالة softmax. يعمل هذا التعديل على تخفيف الاحتمالات دون تغيير قرار تصنيف الصور النهائي، مما يضمن توافق ثقة النموذج بشكل وثيق مع دقته الفعلية.
Link to this sectionكيف يعمل قياس درجة الحرارة#
في شبكة تصنيف قياسية، تُخرج الطبقة النهائية لوجيتات أولية، والتي يتم تمريرها بعد ذلك عبر تنشيط softmax لإنتاج احتمالات مجموعها واحد. تميل بنيات التعلم العميق الحديثة، وخاصة تلك التي تم تحسينها بشكل كبير باستخدام دوال الخسارة مثل الانتروبيا المتقاطعة، إلى دفع هذه اللوجيتات إلى قيم متطرفة لتقليل الخسارة، مما يؤدي إلى ظاهرة يصبح فيها النموذج غير معاير وواثقًا بشكل مفرط.
يُدخل قياس درجة الحرارة معلمة درجة الحرارة (T) في معادلة softmax.
- عندما تكون T = 1، تتصرف دالة softmax بشكل طبيعي.
- عندما تكون T > 1، يتم تقليل حجم اللوجيتات، مما يعمل على تخفيف توزيع المخرجات، مما يقلل فعلياً من ذروة الثقة ويوزع كتلة الاحتمالية بشكل متساوٍ أكثر عبر جميع الفئات.
- عندما تكون T < 1، يصبح التوزيع أكثر حدة، مما يدفع النموذج ليكون أكثر ثقة في توقعه الأعلى.
من خلال تحسين T على مجموعة تحقق مخصصة، يقلل المهندسون من خطأ المعايرة المتوقع. يُفضل هذا التعديل البسيط ذو المعلمة الواحدة للغاية لأنه يتطلب حداً أدنى من العبء الحسابي ويحافظ على الدقة الأصلية لأوزان النموذج.
Link to this sectionقياس درجة الحرارة مقابل تنعيم التسميات#
بينما تهدف كلتا التقنيتين إلى منع فرط التخصيص والثقة المفرطة، فإنهما تعملان في مراحل مختلفة من دورة حياة النموذج. يتم تطبيق تنعيم التسميات أثناء التدريب. فهو يغير أهداف الحقيقة الأرضية (على سبيل المثال، تغيير تسمية صلبة من 1.0 إلى 0.9) لمنع النموذج من تعيين احتمالية كاملة لفئة واحدة. على النقيض من ذلك، فإن قياس درجة الحرارة - والمتغيرات الأحدث مثل قياس درجة الحرارة البؤري - هي طرق معايرة لاحقة يتم تطبيقها بعد اكتمال التدريب، مما يعني أنها تعدل احتمالات المخرجات لنموذج مدرب بالكامل دون الحاجة إلى أي إعادة تدريب.
Link to this sectionتطبيقات العالم الحقيقي#
تعد المعايرة الصحيحة للنموذج أمراً بالغ الأهمية للسلامة والموثوقية عبر صناعات متنوعة:
- التشخيص الطبي: في مهام مثل الكشف عن أورام المخ، يمكن أن يؤدي التصنيف الخاطئ المفرط في الثقة إلى عواقب سريرية وخيمة. يضمن استخدام تحجيم درجة الحرارة (temperature scaling) أن تُخرج أنظمة النمذجة التنبؤية احتمالات موثوقة. إذا كان التنبؤ بمسح ضوئي غير مؤكد بدرجة عالية بعد التحجيم، يمكن للنظام تصنيف الصورة بثقة للمراجعة اليدوية من قبل أخصائي الأشعة. وتستمر الدراسات الحديثة حول معايرة النماذج السريرية في تسليط الضوء على قيمتها في بيئات التشخيص المقيدة وعالية المخاطر.
- نماذج اللغة الكبيرة (LLMs): بالنسبة لـ LLMs، يُستخدم قياس درجة الحرارة بكثافة للتحكم في العشوائية في المخرجات وتنوع التوليد، كما هو الحال مع معلمة درجة الحرارة في OpenAI. تنتج درجات الحرارة المرتفعة نصاً أكثر إبداعاً وتنوعاً، بينما تنتج درجات الحرارة المنخفضة استجابات حتمية ومركزة. مع تقدم البحث، يتم تطوير تقنيات مثل قياس درجة الحرارة التكيفي (ATS) لتصحيح تدهور المعايرة الذي يحدث غالباً بعد التعلم التعزيزي من التغذية الراجعة البشرية.
- المركبات ذاتية القيادة: في القيادة الذاتية، يجب أن تقرر أنظمة كشف الأجسام فوراً ما إذا كان العائق هو أحد المشاة أو ظلاً. تضمن معايرة نماذج الرؤية هذه أن آليات الطوارئ، مثل الكبح في حالات الطوارئ، يتم تفعيلها بشكل موثوق عندما تنخفض الثقة الحقيقية للنموذج عن عتبة أمان حرجة.
Link to this sectionمثال برمجي: تنفيذ قياس درجة الحرارة#
The following snippet demonstrates how you might apply a temperature scalar to the raw logits of an Ultralytics YOLO26 classification model using PyTorch.
import torch
import torch.nn.functional as F
from ultralytics import YOLO
# Load a pre-trained Ultralytics YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Assume 'logits' are the raw outputs from the model prior to activation
# (e.g., obtained via a custom forward pass or feature extraction)
logits = torch.tensor([[5.0, 2.0, 0.5]])
# Define an optimized temperature scalar (T > 1 softens the probabilities)
temperature = 1.5
# Apply temperature scaling before passing logits to the softmax function
scaled_logits = logits / temperature
calibrated_probabilities = F.softmax(scaled_logits, dim=1)
print(f"Original Softmax: {F.softmax(logits, dim=1)}")
print(f"Calibrated Probabilities: {calibrated_probabilities}")بالنسبة للفرق التي تتطلع إلى نشر أنظمة رؤية حاسوبية معايرة بسلاسة، توفر منصة Ultralytics أدوات قوية لإدارة تتبع التجارب، وضبط النماذج بدقة، ومراقبة زمن استجابة الاستدلال في الوقت الفعلي. بالإضافة إلى ذلك، يمكن تتبع المعرفة التأسيسية حول تقنيات المعايرة الحديثة إلى دراسات مؤثرة مثل "حول معايرة الشبكات العصبية الحديثة"، والتي جعلت من قياس درجة الحرارة معياراً صناعياً. لمزيد من التطبيقات العملية، استكشف أطر معايرة الاحتمالية في scikit-learn أو نماذج TensorFlow المدركة لعدم اليقين.






