تخطي إلى المحتوى

YOLOv8 مقابل YOLOv6-3.0: مقارنة فنية

يعد اختيار نموذج الكشف عن الكائنات الأمثل خطوة محورية في بناء تطبيقات رؤية حاسوبية قوية. تستكشف هذه المقارنة التفصيلية الاختلافات المعمارية ومقاييس الأداء وحالات الاستخدام المثالية لـ Ultralytics YOLOv8 و YOLOv6-3.0. في حين أن كلا النموذجين نشأ في نفس الوقت تقريبًا ويهدفان إلى حل مشاكل مماثلة، إلا أنهما يختلفان اختلافًا كبيرًا في فلسفة التصميم والتنوع والأنظمة البيئية التي تدعمها.

Ultralytics YOLOv8

المؤلفون: Glenn Jocher و Ayush Chaurasia و Jing Qiu
المنظمة: Ultralytics
التاريخ: 2023-01-10
GitHub: https://github.com/ultralytics/ultralytics
المستندات: https://docs.ultralytics.com/models/yolov8/

Ultralytics YOLOv8 يمثل قفزة كبيرة إلى الأمام في تطور بنية YOLO. تم تصميمه كإطار عمل موحد، وهو يدعم مجموعة واسعة من مهام الرؤية الحاسوبية تتجاوز الكشف البسيط، بما في ذلك تجزئة المثيل وتقدير الوضع والتصنيف. يعطي تصميمه الذي يركز على المستخدم الأولوية لسهولة الاستخدام، مما يجعل أحدث التقنيات في مجال الذكاء الاصطناعي في متناول المطورين من جميع مستويات المهارة.

البنية والميزات الرئيسية

يقدم YOLOv8 آلية detect خالية من الـ anchor، مما يبسط رأس النموذج ويقلل من عدد المعلمات الفائقة المطلوبة للتدريب. يحسن هذا النهج التعميم عبر مختلف أشكال وأحجام الكائنات. يتميز التصميم المعماري بـ backbone ورأس حديثين يستخدمان وحدة C2f، مما يعزز تدفق التدرج وتكامل الميزات مقارنة بالتكرارات السابقة.

نقاط القوة

  • تنوع لا يضاهى: على عكس العديد من المنافسين، لا يقتصر YOLOv8 على الكشف عن الأجسام object detection. بل يدعم أصلاً تقسيم المثيلات instance segmentation، وتصنيف الصور image classification، وتقدير الوضع pose estimation، ومهام صندوق الإحاطة الموجه (OBB) ضمن قاعدة بيانات واحدة.
  • كفاءة فائقة: كما هو موضح في معايير الأداء، يحقق YOLOv8 دقة أعلى (mAP) مع عدد أقل من المعلمات و FLOPs. ينتج عن هذا متطلبات ذاكرة أقل أثناء التدريب والاستدلال، وهي ميزة حاسمة على النماذج الأثقل القائمة على المحولات.
  • سهولة الاستخدام: النموذج مُغلف بواجهة Python API مبسطة وواجهة سطر أوامر (CLI)، مما يسمح للمستخدمين بتدريب النماذج والتحقق من صحتها ونشرها بأقل قدر من التعليمات البرمجية.
  • نظام بيئي قوي: مدعومًا من Ultralytics، يستفيد YOLOv8 من التحديثات المستمرة و الوثائق الشاملة ومجتمع نابض بالحياة. وهذا يضمن صلاحية طويلة الأجل ودعم لعمليات نشر المؤسسات.

نقاط الضعف

  • اكتشاف الكائنات الصغيرة: على الرغم من قدرتها العالية، قد تكافح الكاشفات أحادية المرحلة مثل YOLOv8 أحيانًا مع الكائنات الصغيرة جدًا أو المسدودة مقارنة بالكاشفات المتخصصة ثنائية المرحلة والمكلفة حسابيًا.

تعرف على المزيد حول YOLOv8

YOLOv6-3.0

المؤلفون: تشوي لي، لولو لي، ييفي قنغ، هونغ ليانغ جيانغ، منغ تشنغ، بو تشانغ، زيدان كه، شياو مينغ شو، و شيانغ شيانغ تشو
المنظمة: ميتوان
التاريخ: 2023-01-13
Arxiv: https://arxiv.org/abs/2301.05586
GitHub: https://github.com/meituan/YOLOv6
المستندات: https://docs.ultralytics.com/models/yolov6/

إن YOLOv6-3.0 هو إطار عمل للكشف عن الأجسام تم تطويره بواسطة Meituan، وهو مصمم خصيصًا للتطبيقات الصناعية حيث تكون سرعة الاستدلال على الأجهزة المخصصة أولوية. وهو يركز على تحسين الموازنة بين السرعة والدقة، وتوظيف تقنيات متقدمة لزيادة استخدام وحدة معالجة الرسوميات GPU إلى أقصى حد.

البنية والميزات الرئيسية

يتضمن هيكل YOLOv6 تصميمًا مدركًا للأجهزة، باستخدام هياكل Rep-Block (إعادة المعلمات) التي تسمح للشبكة بفروع معقدة أثناء التدريب ولكنها تتداخل في هيكل أبسط وأسرع أثناء الاستدلال. كما أنها تستخدم استراتيجية التقطير الذاتي لتعزيز الدقة دون تكبد تكاليف استدلال إضافية.

نقاط القوة

  • سرعة الاستدلال لوحدة معالجة الرسوميات (GPU): النموذج مُحسَّن للغاية لأداء وحدة معالجة الرسوميات (GPU)، خاصةً على أجهزة NVIDIA، مما يجعله مرشحًا قويًا للسيناريوهات الصناعية ذات ميزانيات زمن الوصول الصارمة.
  • Quantization Support: يؤكد YOLOv6 على دعم تكميم النموذج، وتوفير أدوات لنشر النماذج على الأجهزة ذات الدقة الحسابية المحدودة.
  • تحسين الأجهزة المحمولة: مع متغيرات مثل YOLOv6Lite، يقدم الإطار حلولًا مصممة خصيصًا لنقاط النهاية المحمولة والقائمة على وحدة المعالجة المركزية.

نقاط الضعف

  • نطاق مهمة محدود: يركز YOLOv6 بشكل أساسي على اكتشاف الكائنات. يفتقر إلى الدعم الأصلي والجاهز للتقسيم وتقدير الوضع والتتبع الذي يميز نظام Ultralytics البيئي.
  • كثافة الموارد: لتحقيق دقة مماثلة لـ YOLOv8، غالبًا ما تتطلب نماذج YOLOv6 عددًا أكبر بكثير من المعلمات وعمليات الفاصلة العائمة، مما يؤدي إلى زيادة الحمل الحسابي أثناء التدريب.
  • المجتمع والصيانة: على الرغم من أن النظام مفتوح المصدر، إلا أن النظام البيئي أقل نشاطًا مقارنةً بـ Ultralytics، مما قد يؤدي إلى حل المشكلات بشكل أبطأ وعدد أقل من الموارد التي يساهم بها المجتمع.

تعرف على المزيد حول YOLOv6

مقارنة الأداء

يعرض الجدول التالي مقارنة مباشرة لمقاييس الأداء على مجموعة بيانات COCO. تؤكد هذه البيانات على كفاءة Ultralytics YOLOv8، الذي يقدم باستمرار متوسط دقة (mAP) عالية مع تقليل تعقيد النموذج.

النموذجالحجم
(بالبكسل)
mAPval
50-95
السرعة
وحدة المعالجة المركزية CPU ONNX
(بالمللي ثانية)
السرعة
T4 TensorRT10
(بالمللي ثانية)
المعلمات
(M)
FLOPs
(B)
YOLOv8n64037.380.41.473.28.7
YOLOv8s64044.9128.42.6611.228.6
YOLOv8m64050.2234.75.8625.978.9
YOLOv8l64052.9375.29.0643.7165.2
YOLOv8x64053.9479.114.3768.2257.8
YOLOv6-3.0n64037.5-1.174.711.4
YOLOv6-3.0s64045.0-2.6618.545.3
YOLOv6-3.0m64050.0-5.2834.985.8
YOLOv6-3.0l64052.8-8.9559.6150.7

تحليل المقاييس

  • الكفاءة: يُظهر YOLOv8 كفاءة فائقة في استخدام المعلمات. على سبيل المثال، يحقق YOLOv8s نسبة تنافسية تبلغ 44.9 mAP مع 11.2 مليون معلمة فقط، في حين أن YOLOv6-3.0s يتطلب 18.5 مليون معلمة - أكثر بنسبة 65٪ - لتحقيق mAP مطابق تقريبًا يبلغ 45.0. وهذا يترجم إلى تكاليف تخزين أقل وتحديثات أسرع على الأجهزة الطرفية.
  • الحمل الحسابي: وبالمثل، من حيث FLOPs (عمليات النقطة العائمة)، يعمل YOLOv8m بسرعة 78.9B FLOPs مقارنة بـ 85.8B لـ YOLOv6-3.0m، مما يجعل نموذج Ultralytics أخف حسابيًا مع تحقيق mAP أعلى (50.2 مقابل 50.0).
  • السرعة: في حين أن YOLOv6-3.0 يُظهر سرعات استدلال أولية أسرع قليلاً على وحدات معالجة الرسومات T4 نظرًا لتصميمه المتخصص المدرك للأجهزة، فإن YOLOv8 يوفر أداءً ممتازًا لوحدة المعالجة المركزية عبر ONNX، وهو أمر بالغ الأهمية لعمليات النشر حيث تكون وحدات معالجة الرسومات غير متوفرة.

التدريب وسهولة الاستخدام

أحد الاختلافات المميزة بين هذه النماذج هو تجربة المطور. تعطي Ultralytics الأولوية لسير عمل سلس، وهو ما يتضح في كيفية تدريب النماذج ونشرها.

تدفق عمل موحد

توفر Ultralytics واجهة برمجة تطبيقات (API) متسقة عبر جميع المهام. سواء كنت تقوم بالاكتشاف أو التقسيم أو تقدير الوضع، فإن بناء الجملة يظل كما هو، مما يقلل بشكل كبير من منحنى التعلم.

سهولة الاستخدام مع Ultralytics

يمكن دمج YOLOv8 في مشروع ببضعة أسطر فقط من التعليمات البرمجية. تعالج Python SDK تحميل البيانات والزيادة وإعداد خط أنابيب التدريب تلقائيًا.

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image
results = model("path/to/image.jpg")

على النقيض من ذلك، في حين أن YOLOv6 فعال، إلا أنه غالبًا ما يتطلب المزيد من التهيئة اليدوية وإدارة التبعيات النموذجية للمستودعات الأكاديمية، مما قد يؤدي إلى إبطاء النماذج الأولية السريعة وتكامل MLOps.

حالات الاستخدام المثالية

متى تختار Ultralytics YOLOv8

  • تطبيقات متنوعة: عندما يتطلب مشروعك أكثر من مجرد مربعات محيطة - مثل تجزئة الكائنات أو تقدير النقاط الرئيسية - فإن إمكانات المهام المتعددة في YOLOv8 لا غنى عنها.
  • النشر الطرفي والسحابي: بفضل أوضاع التصدير الخاصة به، يتم نشر YOLOv8 بسلاسة إلى TFLite و ONNX و CoreML و TensorRT، مما يغطي كل شيء من الهواتف المحمولة إلى الخوادم السحابية.
  • تطوير سريع: بالنسبة للفرق التي تحتاج إلى التكرار بسرعة، فإن الوثائق الشاملة ودعم المجتمع النشط يقللان من وقت التوقف عن العمل واستكشاف الأخطاء وإصلاحها.

متى تختار YOLOv6-3.0

  • أجهزة صناعية محددة: إذا كانت بيئة النشر الخاصة بك خاضعة للرقابة الصارمة وتستخدم أجهزة تستفيد تحديدًا من بنى Rep-Block (مثل إعدادات GPU معينة)، فقد توفر YOLOv6 مكاسب طفيفة في السرعة.
  • الأنظمة القديمة: للخطوات الحالية المبنية بالفعل حول تنسيقات الإدخال/الإخراج الخاصة بـ YOLOv6 حيث لا يكون إعادة الهيكلة ممكنًا.

الخلاصة

في حين أن YOLOv6-3.0 لا يزال منافسًا قويًا في المجال المحدد للكشف عن الكائنات الصناعية، فإن Ultralytics YOLOv8 يقدم حلاً أكثر شمولاً وكفاءة ومقاومة للمستقبل لغالبية مشاريع رؤية الكمبيوتر. إن قدرتها على تقديم دقة فائقة مع عدد أقل من المعلمات، جنبًا إلى جنب مع نظام بيئي مزدهر ودعم لمهام رؤية متعددة، تجعلها الخيار الموصى به للمطورين والباحثين على حد سواء.

بالنسبة لأولئك الذين يتطلعون إلى استكشاف أحدث ما توصلت إليه تكنولوجيا رؤية الكمبيوتر، ضع في اعتبارك التحقق من YOLO11، الذي يزيد من تحسين الكفاءة والأداء الذي أنشأه YOLOv8. بالإضافة إلى ذلك، يمكن أن توفر المقارنات مع النماذج القائمة على المحولات مثل RT-DETR مزيدًا من الرؤى حول Architectures detect الحديثة.


تعليقات