حسّن أداء الذكاء الاصطناعي باستخدام تكميم النموذج. قلل الحجم، وعزز السرعة، وحسّن كفاءة الطاقة لعمليات النشر في العالم الحقيقي.
تعد تكمية النموذج عملية تحسين حاسمة في مجال التعلم الآلي، حيث تقلل من دقة الأرقام المستخدمة لتمثيل معلمات النموذج. من خلال تحويل هذه المعلمات — وتحديدًا الأوزان والتفعيلات — من أرقام عائمة عالية الدقة (عادةً 32 بت، تُعرف باسم FP32) إلى تنسيقات أقل دقة مثل الأعداد الصحيحة 8 بت (INT8)، يمكن للمطورين تقليل حجم الذاكرة وتعقيد الحساب للنموذج بشكل كبير. هذا التحويل ضروري لنشر شبكات عصبية متطورة على أجهزة ذات موارد محدودة ، مما يضمن تشغيل تطبيقات الذكاء الاصطناعي بكفاءة على كل شيء بدءًا من الهواتف الذكية إلى أجهزة استشعار إنترنت الأشياء المدمجة.
في جوهره، يقوم التكمية بتعيين مجموعة كبيرة من القيم المستمرة إلى مجموعة أصغر من القيم المنفصلة. خلال مرحلة التدريب، تتطلب النماذج عادة دقة عالية لالتقاط التفاصيل الدقيقة في البيانات وتحديث التدرجات بدقة. ومع ذلك، أثناء الاستدلال - المرحلة التي يولد فيها النموذج التنبؤات - غالبًا ما يكون هذا المستوى من الدقة زائدًا عن الحاجة.
من خلال ضغط هذه القيم، يقلل التكمية من حجم نطاق التردد التذكيري اللازم لجلب أوزان النموذج ويسرع العمليات الحسابية . الأجهزة الحديثة، مثل CPU والمسرعات المتخصصة مثل TPUs، غالبًا ما تتضمن مجموعات تعليمات مخصصة لحساب الأعداد الصحيحة. هذه التعليمات أسرع وأكثر كفاءة في استخدام الطاقة من عمليات النقاط العائمة، مما يساعد على تقليل زمن الاستدلال والحفاظ على عمر البطارية في التطبيقات المحمولة.
هناك استراتيجيتان رئيسيتان لتطبيق التكمية، اعتمادًا على وقت حدوث التحسين في دورة حياة التطوير :
من المهم التمييز بين التكمية وتقنيات التحسين الأخرى، لأنها تعدل النموذج بطرق مختلفة :
يتيح التكمية استخدام الرؤية الحاسوبية والذكاء الاصطناعي في مختلف الصناعات التي تعتبر الكفاءة فيها أمراً بالغ الأهمية.
تسهل Ultralytics عملية التصدير، مما يتيح للمطورين تحويل نماذج مثل YOLO11 أو النموذج المتطور YOLO26 إلى تنسيقات مكمّنة. يوضح المثال التالي كيفية تصدير نموذج إلى TFLite تمكين التكمية INT8، التي تتعامل تلقائيًا مع المعايرة.
from ultralytics import YOLO
# Load a standard YOLO11 model
model = YOLO("yolo11n.pt")
# Export to TFLite format with INT8 quantization
# The 'int8' argument triggers Post-Training Quantization
model.export(format="tflite", int8=True, data="coco8.yaml")
غالبًا ما يتم نشر النماذج المحسّنة باستخدام معايير قابلة للتشغيل البيني مثل ONNX أو محركات الاستدلال عالية الأداء مثل OpenVINO، مما يضمن توافقًا واسعًا عبر أنظمة الأجهزة المتنوعة.