نموذج المقارنة المعيارية مع Ultralytics YOLO
مقدمة
بمجرد تدريب النموذج الخاص بك والتحقق من صحته ، فإن الخطوة المنطقية التالية هي تقييم أدائه في سيناريوهات مختلفة في العالم الحقيقي. وضع المعيار في Ultralytics YOLOv8 يخدم هذا الغرض من خلال توفير إطار عمل قوي لتقييم سرعة ودقة النموذج الخاص بك عبر مجموعة من تنسيقات التصدير.
شاهد: Ultralytics وسائط البرنامج التعليمي: المعيار
لماذا تعتبر المقارنة المعيارية أمرا بالغ الأهمية؟
- قرارات مستنيرة: احصل على رؤى حول المفاضلات بين السرعة والدقة.
- تخصيص الموارد: فهم كيفية أداء تنسيقات التصدير المختلفة على أجهزة مختلفة.
- الامثل: تعرف على تنسيق التصدير الذي يوفر أفضل أداء لحالة الاستخدام المحددة الخاصة بك.
- فعالية التكلفة: استخدم موارد الأجهزة بشكل أكثر كفاءة بناء على النتائج المعيارية.
المقاييس الرئيسية في الوضع القياسي
- mAP50-95: للكشف عن الكائن وتقسيمه وتقدير الوضع.
- accuracy_top5: لتصنيف الصور.
- وقت الاستدلال: الوقت المستغرق لكل صورة بالمللي ثانية.
تنسيقات التصدير المدعومة
- ONNX للحصول على الأداء الأمثل لوحدة المعالجة المركزية:
- TensorRT لتحقيق أقصى قدر من الكفاءة لوحدة معالجة الرسومات:
- OpenVINO لتحسين أجهزة Intel:
- CoreML, TensorFlow SavedModel، والمزيد: لاحتياجات النشر المتنوعة.
بقشيش
- تصدير إلى ONNX أو OpenVINO لتسريع وحدة المعالجة المركزية حتى 3x.
- تصدير إلى TensorRT لتسريع وحدة معالجة الرسومات حتى 5x.
أمثلة الاستخدام
ركض YOLOv8n معايير لجميع تنسيقات التصدير المدعومة بما في ذلك ONNX, TensorRT الخ. راجع قسم الوسيطات أدناه للحصول على قائمة كاملة بوسيطات التصدير.
مثل
الحجج
وسيطات مثل model
, data
, imgsz
, half
, device
و verbose
تزويد المستخدمين بالمرونة اللازمة لضبط المعايير وفقا لاحتياجاتهم الخاصة ومقارنة أداء تنسيقات التصدير المختلفة بسهولة.
مفتاح | القيمة الافتراضية | وصف |
---|---|---|
model |
None |
يحدد المسار إلى ملف النموذج. يقبل كليهما .pt و .yaml التنسيقات ، على سبيل المثال ، "yolov8n.pt" للنماذج أو ملفات التكوين المدربة مسبقا. |
data |
None |
المسار إلى ملف YAML الذي يحدد مجموعة البيانات لقياس الأداء، وعادة ما يتضمن المسارات والإعدادات لبيانات التحقق من الصحة. مثل: "coco8.yaml" . |
imgsz |
640 |
حجم صورة الإدخال للنموذج. يمكن أن يكون عددا صحيحا واحدا للصور المربعة أو مجموعة (width, height) لغير مربع ، على سبيل المثال ، (640, 480) . |
half |
False |
تمكين الاستدلال FP16 (نصف الدقة) ، مما يقلل من استخدام الذاكرة وربما يزيد السرعة على الأجهزة المتوافقة. استخدام half=True لتمكين. |
int8 |
False |
ينشط تكميم INT8 لمزيد من الأداء المحسن على الأجهزة المدعومة ، وهو مفيد بشكل خاص لأجهزة الحافة. جبر int8=True للاستخدام. |
device |
None |
يحدد جهاز (أجهزة) الحساب لقياس الأداء، مثل "cpu" , "cuda:0" ، أو قائمة بالأجهزة مثل "cuda:0,1" لإعدادات وحدات معالجة الرسومات المتعددة. |
verbose |
False |
يتحكم في مستوى التفاصيل في تسجيل الإخراج. قيمة منطقية جبر verbose=True للسجلات التفصيلية أو تعويم لأخطاء العتبة. |
تنسيقات التصدير
ستحاول المعايير التشغيل تلقائيا على جميع تنسيقات التصدير الممكنة أدناه.
تنسيق | format جدال |
نموذج | البيانات الوصفية | الحجج |
---|---|---|---|---|
PyTorch | - | yolov8n.pt |
✅ | - |
TorchScript | torchscript |
yolov8n.torchscript |
✅ | imgsz , optimize , batch |
ONNX | onnx |
yolov8n.onnx |
✅ | imgsz , half , dynamic , simplify , opset , batch |
OpenVINO | openvino |
yolov8n_openvino_model/ |
✅ | imgsz , half , int8 , batch |
TensorRT | engine |
yolov8n.engine |
✅ | imgsz , half , dynamic , simplify , workspace , batch |
CoreML | coreml |
yolov8n.mlpackage |
✅ | imgsz , half , int8 , nms , batch |
TF SavedModel | saved_model |
yolov8n_saved_model/ |
✅ | imgsz , keras , int8 , batch |
TF GraphDef | pb |
yolov8n.pb |
❌ | imgsz , batch |
TF لايت | tflite |
yolov8n.tflite |
✅ | imgsz , half , int8 , batch |
TF حافة TPU | edgetpu |
yolov8n_edgetpu.tflite |
✅ | imgsz , batch |
TF.شبيبه | tfjs |
yolov8n_web_model/ |
✅ | imgsz , half , int8 , batch |
PaddlePaddle | paddle |
yolov8n_paddle_model/ |
✅ | imgsz , batch |
NCNN | ncnn |
yolov8n_ncnn_model/ |
✅ | imgsz , half , batch |
شاهد التفاصيل export
التفاصيل في تصدير صفحة.
تم الإنشاء 2023-11-12-2023، تم التحديث 2024-04-27
المؤلفون: جلين-جوتشر (12)، برهان-ك (1)، رضوان منور (1)، الضاحك-ك (1)، مايانوميروسكي (1)