Mixed Precision
تعلّم كيف يسرّع التحديد المختلط الدقة التدريب ويقلّل الذاكرة لنماذج مثل Ultralytics YOLO26. استكشف فوائد FP16 وFP32 للحصول على رؤى ذكاء اصطناعي أسرع.
تُعدّ الدقة المختلطة تقنية محورية في تحسين النماذج، وتُستخدم لتسريع تدريب نماذج التعلم العميق مع تقليل استهلاك الذاكرة. ومن خلال الجمع الاستراتيجي بين تنسيقات عددية مختلفة—عادةً أنواع الفاصلة العائمة ذات 16 بت و32 بت—تتيح هذه الطريقة لخوارزميات التعلم الآلي إجراء الحسابات بسرعة أكبر من دون التضحية بالدقة النهائية للنموذج. وقد أصبحت ممارسة معيارية في تطوير الذكاء الاصطناعي الحديث، ولا سيما في المهام كثيفة الموارد، مثل تدريب بنية YOLO26 على مجموعات بيانات ضخمة.
كيفية عمل الدقة المختلطة#
في مسارات عمل التعلم العميق التقليدية، تُجري النماذج عادةً الحسابات باستخدام تنسيق الفاصلة العائمة أحادية الدقة (FP32). ويتطلب كل عدد في FP32 مساحة ذاكرة تبلغ 32 بت. وعلى الرغم من دقة هذا التنسيق العالية، فإنه قد يكون مكلفًا حسابيًا ويستهلك قدرًا كبيرًا من الذاكرة.
تُدخل الدقة المختلطة استخدام الدقة النصفية (FP16)، التي تستخدم 16 بت فقط. غير أن استخدام FP16 وحده قد يؤدي إلى عدم استقرار عددي بسبب نطاقه الديناميكي الأصغر. ولحل هذه المشكلة، تحتفظ أساليب الدقة المختلطة بـ«نسخة رئيسية» من أوزان النموذج بتنسيق FP32 لتحقيق الاستقرار، مع استخدام FP16 لتنفيذ العمليات الرياضية المكثفة، مثل عمليات الالتفاف وضرب المصفوفات.
تتضمن العملية عمومًا ثلاث خطوات رئيسية:
-
التحويل: تحويل مدخلات النموذج وتفعيلاتِه إلى FP16 لتسريع التنفيذ على الأجهزة المتوافقة، مثل أنوية Tensor من NVIDIA.
-
تحجيم الخسارة: تضخيم قيم دالة الخسارة لمنع «الانخفاض إلى الصفر»، حيث تصبح تحديثات التدرج الصغيرة أصفارًا في FP16.
-
التجميع: إجراء العمليات الحسابية باستخدام FP16، مع تجميع النتائج باستخدام FP32 للحفاظ على المعلومات اللازمة قبل تحديث الأوزان الرئيسية.
الفوائد في تدريب الذكاء الاصطناعي#
يوفر اعتماد الدقة المختلطة مزايا مهمة للمطورين والباحثين الذين يستخدمون الموارد الحاسوبية بكفاءة:
- سرعة تدريب أعلى: تتطلب العمليات باستخدام FP16 نطاقًا تردديًا أقل للذاكرة، وتُعالج بسرعة أكبر بواسطة وحدات GPU الحديثة. ويمكن أن يؤدي ذلك إلى تقليل الوقت اللازم لـحقبة تدريبية بهامش كبير.
- تقليل استخدام الذاكرة: نظرًا إلى أن موترات FP16 تشغل نصف الذاكرة التي تشغلها موترات FP32، يمكن للمطورين مضاعفة حجم الدفعة عمليًا. وغالبًا ما تؤدي أحجام الدُفعات الأكبر إلى تقديرات أكثر استقرارًا للتدرجات وتقارب أسرع.
- كفاءة الطاقة: يؤدي انخفاض الحمل الحاسوبي إلى تقليل استهلاك الطاقة، وهو أمر بالغ الأهمية لعمليات التدريب السحابي واسعة النطاق.
التطبيقات الواقعية#
تُستخدم الدقة المختلطة في صناعات مختلفة للتعامل بكفاءة مع النماذج المعقدة ومجموعات البيانات الكبيرة.
القيادة الذاتية#
في تطوير المركبات الذاتية، يتعين على المهندسين تدريب نماذج اكتشاف الأجسام على ملايين الإطارات عالية الدقة من الفيديو. ويتيح استخدام الدقة المختلطة تدريب نماذج متقدمة مثل YOLO26 بكفاءة. كما تتيح البصمة المنخفضة للذاكرة معالجة مدخلات ذات دقة أعلى، وهو أمر بالغ الأهمية لاكتشاف الأجسام الصغيرة، مثل إشارات المرور أو المشاة من مسافة بعيدة.
تحليل الصور الطبية#
غالبًا ما يتضمن تحليل الصور الطبية بيانات حجمية ثلاثية الأبعاد من فحوصات التصوير بالرنين المغناطيسي أو التصوير المقطعي المحوسب، وهي بيانات كثيفة الاستخدام للذاكرة للغاية. وكثيرًا ما يؤدي تدريب نماذج التقسيم على هذه البيانات بدقة FP32 الكاملة إلى أخطاء «نفاد الذاكرة» (OOM). وتتيح الدقة المختلطة للباحثين ملاءمة هذه النماذج الضخمة ضمن ذاكرة GPU، مما يسهل تطوير ذكاء اصطناعي يمكنه مساعدة الأطباء على تشخيص الأمراض في مراحل مبكرة.
تطبيق الدقة المختلطة باستخدام Ultralytics#
تتعامل أطر العمل الحديثة مثل PyTorch عادةً مع تعقيدات الدقة المختلطة تلقائيًا عبر ميزة تُسمى الدقة المختلطة التلقائية (AMP). وتفعّل حزمة ultralytics ميزة AMP افتراضيًا أثناء التدريب لضمان الأداء الأمثل.
فيما يلي مثال موجز على بدء التدريب باستخدام Ultralytics YOLO26، حيث تكون الدقة المختلطة مفعّلة افتراضيًا (ويمكن التحكم فيها عبر الوسيط amp):
from ultralytics import YOLO
# Load the latest YOLO26 model
model = YOLO("yolo26n.pt")
# Train the model on the COCO8 dataset
# amp=True is the default setting for mixed precision training
results = model.train(data="coco8.yaml", epochs=5, imgsz=640, amp=True)الدقة المختلطة مقابل المفاهيم ذات الصلة#
من المفيد التمييز بين الدقة المختلطة والمصطلحات المشابهة في المسرد لتجنب الالتباس:
- تكميم النموذج: في حين تستخدم الدقة المختلطة أعداد الفاصلة العائمة منخفضة الدقة (FP16) أثناء التدريب، يحوّل التكميم عادةً الأوزان إلى أعداد صحيحة (مثل INT8) بعد التدريب بهدف النشر. ويركز التكميم أساسًا على زمن استجابة الاستدلال على الأجهزة الطرفية، بينما تركز الدقة المختلطة على سرعة التدريب واستقراره.
- الدقة النصفية: يشير هذا المصطلح تحديدًا إلى تنسيق بيانات FP16 نفسه. أما الدقة المختلطة فهي تقنية استخدام FP16 وFP32 معًا. وغالبًا ما يؤدي استخدام الدقة النصفية الخالصة من دون النسخة الرئيسية «المختلطة» بتنسيق FP32 إلى نماذج تفشل في التقارب بسبب الأخطاء العددية.
الخاتمة#
أحدثت الدقة المختلطة تحولًا في طريقة تدريب الشبكات العصبية، إذ أصبحت عاملًا تمكينيًا حاسمًا لـالنماذج الأساسية وأنظمة الرؤية الضخمة التي نراها اليوم. ومن خلال تحقيق التوازن بين الحاجة إلى الدقة الرياضية وقيود سرعة الأجهزة وذاكرتها، تتيح هذه التقنية للمطورين التكرار بسرعة أكبر وبناء حلول ذكاء اصطناعي أكثر قدرة.
ولمن يرغبون في إدارة مجموعات البيانات وتدريب نماذج محسّنة بسلاسة، توفر منصة Ultralytics بيئة شاملة تستفيد تلقائيًا من تقنيات التحسين الحديثة هذه.









