تعرف على كيفية قيام التدريب المدرك للتكمية (QAT) بتحسين نماذج Ultralytics من أجل النشر المتطور. اكتشف كيفية الحفاظ على دقة عالية باستخدام دقة INT8.
التدريب المدرك للتكمية (QAT) هو تقنية متخصصة تُستخدم خلال مرحلة تدريب نماذج التعلم الآلي لإعدادها لبيئات أقل دقة. في سير عمل التعلم العميق القياسي، تعمل النماذج عادةً باستخدام أرقام عائمة 32 بت عالية الدقة (FP32). على الرغم من أن هذه الدقة توفر دقة ممتازة، إلا أنها قد تكون مكلفة من الناحية الحسابية وتستهلك الكثير من الذاكرة، خاصة على الأجهزة الطرفية. يحاكي QAT تأثيرات التكمية - تقليل الدقة إلى تنسيقات مثل الأعداد الصحيحة 8 بت (INT8) - بينما لا يزال النموذج قيد التدريب. من خلال إدخال أخطاء التكمية هذه أثناء عملية التعلم، يتعلم النموذج كيفية تكييف أوزانه و استعادة الدقة بشكل فعال والتي قد تضيع أثناء التحويل بعد التدريب.
غالبًا ما يتطلب نشر نماذج الرؤية الحاسوبية على الأجهزة ذات الموارد المحدودة تحقيق توازن بين السرعة والأداء. طرق التكمية القياسية، المعروفة باسم التكمية بعد التدريب (PTQ)، لا تطبق تخفيض الدقة إلا بعد تدريب النموذج بالكامل. على الرغم من أن PTQ سريعة، إلا أنها قد تؤدي في بعض الأحيان إلى انخفاض دقة النماذج الحساسة لأن أوزان الشبكة العصبية تتغير بشكل كبير دون فرصة للتعديل.
يحل QAT هذه المشكلة من خلال السماح للنموذج "بالتدرب" على التكمية. أثناء التمرير الأمامي للتدريب، يتم محاكاة الأوزان والتفعيلات كقيم منخفضة الدقة. وهذا يسمح لعملية التدرج التنازلي بتحديث معلمات النموذج بطريقة تقلل الخسارة بشكل خاص للحالة المكانية. والنتيجة هي نموذج قوي يحتفظ بدقة عالية حتى عند نشره على أجهزة مثل الميكروكونترولر أو المعالجات المحمولة.
من المفيد التمييز بين QAT و تكمية النموذج، وتحديداً التكمية بعد التدريب (PTQ):
تعد تقنية QAT ضرورية للصناعات التي تعتمد بشكل كبير على الاستدلال في الوقت الفعلي على الأجهزة الطرفية.
تدعم Ultralytics YOLO تصدير النماذج إلى تنسيقات محددة. في حين أن QAT هو إجراء تدريب معقد، فإن الأطر الحديثة تسهل إعداد النماذج للاستدلال المحدد.
فيما يلي مثال على كيفية تصدير نموذج YOLO26 مدرب إلى TFLite المكبّر INT8، والذي يستخدم مبادئ التكبير من أجل نشر فعال للحواف.
from ultralytics import YOLO
# Load a trained YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TFLite format with INT8 quantization
# This prepares the model for efficient execution on edge devices
model.export(format="tflite", int8=True)
تم تصميم النماذج المحسّنة عبر تقنيات التكمية لتعمل على محركات استدلال متخصصة. غالبًا ما يتم نشر النماذج المدربة على QAT باستخدام ONNX من أجل التوافق عبر الأنظمة الأساسية أو OpenVINO للتحسين على Intel . وهذا يضمن أن النموذج يعمل بأعلى كفاءة وسرعة ممكنة، سواء كان الهدف هو Raspberry Pi أو Edge TPU مخصص.
لفهم QAT بشكل كامل، من المفيد أن تكون على دراية بعدة مفاهيم ذات صلة بالتعلم الآلي:
من خلال دمج التدريب المدرك للتكمية في خط أنابيب MLOps، يمكن للمطورين سد الفجوة بين نماذج البحث عالية الدقة وتطبيقات الذكاء الاصطناعي المتطورة عالية الكفاءة والجاهزة للإنتاج.