كيفية التدريب، والتحقق، والتنبؤ، والتصدير وقياس الأداء مع نماذج Ultralytics YOLO
تعلم كيفية التدريب، والتحقق، والتنبؤ، والتصدير، والقياس مع نماذج Ultralytics YOLO!

دعونا نتعمق في عالم Ultralytics ونستكشف الأنماط المختلفة المتاحة لنماذج YOLO المتنوعة. سواء كنت تقوم بتدريب نماذج اكتشاف الكائنات مخصصة أو تعمل على التجزئة، فإن فهم هذه الأنماط يمثل خطوة حاسمة. لنبدأ مباشرة!
من خلال توثيق Ultralytics، ستجد العديد من الأنماط التي يمكنك استخدامها لنماذجك، سواء كان ذلك لـ التدريب، أو التحقق، أو التنبؤ، أو التصدير، أو إجراء الاختبارات المعيارية، أو التتبع. يخدم كل نمط من هذه الأنماط غرضاً فريداً ويساعدك على تحسين أداء النموذج الخاص بك ونشره.
Link to this sectionنمط التدريب (Train)#
أولاً، دعونا نلقي نظرة على نمط التدريب. هنا يمكنك بناء نموذجك وصقله. يمكنك العثور على تعليمات مفصلة وأدلة فيديو في التوثيق، مما يسهل البدء في تدريب نماذجك المخصصة.
يتضمن تدريب النموذج تزويد النموذج بمجموعة بيانات جديدة، مما يسمح له بتعلم أنماط مختلفة. بمجرد تدريبه، يمكن استخدام النموذج في الوقت الفعلي لاكتشاف كائنات جديدة تم تدريبه عليها. قبل بدء عملية التدريب، من الضروري إضافة تعليقات توضيحية (annotate) لمجموعة البيانات الخاصة بك بتنسيق YOLO.
Link to this sectionنمط التحقق (Validate)#
بعد ذلك، دعونا ننتقل إلى نمط التحقق. يعد التحقق أمراً ضرورياً لضبط المعلمات الفائقة (hyperparameters) وضمان أداء النموذج بشكل جيد. توفر Ultralytics مجموعة متنوعة من خيارات التحقق، بما في ذلك الإعدادات المؤتمتة، ودعم المقاييس المتعددة، والتوافق مع Python API. يمكنك حتى تشغيل التحقق مباشرة من خلال واجهة سطر الأوامر (CLI) باستخدام الأمر أدناه.
Link to this sectionلماذا نستخدم التحقق؟#
يعد التحقق أمراً بالغ الأهمية من أجل:
- الدقة (Precision): ضمان أن نموذجك يكتشف الكائنات بدقة.
- الراحة (Convenience): تبسيط عملية التحقق.
- المرونة (Flexibility): توفير طرق تحقق متعددة.
- ضبط المعلمات الفائقة (Hyperparameter Tuning): تحسين نموذجك للحصول على أداء أفضل.
توفر Ultralytics أيضاً أمثلة للمستخدم يمكنك نسخها ولصقها في نصوص Python البرمجية الخاصة بك. تتضمن هذه الأمثلة معلمات مثل حجم الصورة، وحجم الدفعة (batch size)، والجهاز (CPU أو GPU)، وتقاطع الاتحاد (IoU).
Link to this sectionنمط التنبؤ (Predict)#
بمجرد تدريب نموذجك والتحقق منه، حان الوقت لإجراء التنبؤات. يسمح لك نمط التنبؤ بتشغيل الاستدلال (inference) على بيانات جديدة ورؤية نموذجك قيد العمل. هذا النمط مثالي لاختبار أداء نموذجك على بيانات واقعية. باستخدام مقتطف كود Python أدناه، ستتمكن من تشغيل التنبؤات على صورك!
Link to this sectionنمط التصدير (Export)#
بعد التحقق والتنبؤ، قد ترغب في نشر نموذجك. يتيح لك نمط التصدير تحويل نموذجك إلى تنسيقات مختلفة، مثل ONNX أو TensorRT، مما يسهل عملية النشر عبر منصات مختلفة.
Link to this sectionنمط الاختبار المعياري (Benchmark)#
أخيراً، لدينا نمط الاختبار المعياري. يعد الاختبار المعياري أمراً ضرورياً لتقييم أداء نموذجك في سيناريوهات مختلفة. يساعدك هذا النمط في اتخاذ قرارات مستنيرة بشأن تخصيص الموارد، والتحسين، وكفاءة التكلفة.
Link to this sectionكيفية إجراء الاختبار المعياري#
لتشغيل اختبار معياري، يمكنك استخدام أمثلة المستخدم المتوفرة في التوثيق. تغطي هذه الأمثلة المقاييس الرئيسية وتنسيقات التصدير، بما في ذلك ONNX وTensorRT. يمكنك أيضاً تحديد معلمات مثل تكميم الأعداد الصحيحة (INT8) أو تكميم الفاصلة العائمة (FP16) لمعرفة مدى تأثير الإعدادات المختلفة على الأداء.
Link to this sectionمثال واقعي على الاختبار المعياري#
دعونا نلقي نظرة على مثال واقعي للاختبار المعياري. عندما نختبر نموذج PyTorch الخاص بنا معيارياً، نلاحظ سرعة استدلال تبلغ 68 مللي ثانية على GPU من نوع RTX 3070. بعد التصدير إلى TorchScript، تنخفض سرعة الاستدلال إلى 4 مللي ثانية، مما يظهر تحسناً كبيراً.
بالنسبة لنماذج ONNX، نحقق سرعة استدلال تبلغ 21 مللي ثانية. باختبار هذه النماذج على CPU (من نوع Intel i9 من الجيل الثالث عشر)، نرى نتائج متفاوتة. يعمل TorchScript بسرعة 115 مللي ثانية، بينما يعمل ONNX بشكل أفضل بسرعة 84 مللي ثانية. وأخيراً، يحقق OpenVINO المحسن لأجهزة Intel سرعة فائقة تبلغ 23 مللي ثانية.

الشكل 1. Nicolai Nielsen يوضح كيفية إجراء الاختبار المعياري باستخدام نماذج YOLO من Ultralytics.
Link to this sectionأهمية الاختبار المعياري#
يوضح الاختبار المعياري كيف يمكن للأجهزة وتنسيقات التصدير المختلفة أن تؤثر على أداء نموذجك. من الضروري إجراء اختبار معياري لنماذجك، خاصة إذا كنت تخطط لنشرها على أجهزة مخصصة أو أجهزة طرفية (edge devices). تضمن هذه العملية أن نموذجك محسن للبيئة المستهدفة، مما يوفر أفضل أداء ممكن.
Link to this sectionالخلاصة#
باختصار، تعد الأنماط الموجودة في توثيق Ultralytics أدوات قوية لتدريب نماذج YOLO الخاصة بك والتحقق منها والتنبؤ بها وتصديرها وإجراء الاختبارات المعيارية لها. يلعب كل نمط دوراً حيوياً في تحسين نموذجك وإعداده للنشر.
لا تنسَ استكشاف والانضمام إلى مجتمعنا وتجربة مقتطفات الكود المتوفرة في مشاريعك. باستخدام هذه الأدوات، يمكنك إنشاء نماذج عالية الأداء وضمان تشغيلها بكفاءة في أي بيئة.






