DAMO-YOLO مقابل YOLOX: مقارنة فنية
يتضمن اختيار نموذج الكشف عن الأجسام الصحيح مفاضلة بين الدقة والسرعة وتعقيد النشر. تقدم هذه الصفحة مقارنة فنية مفصلة بين نموذجين قويين في مشهد الرؤية الحاسوبية: DAMO-YOLO و YOLOX. قدم كلا النموذجين ابتكارات كبيرة لعائلة YOLO، لكنهما يلبيان أولويات وحالات استخدام مختلفة. سوف نتعمق في هياكلهما ومقاييس الأداء والتطبيقات المثالية لمساعدتك في اتخاذ قرار مستنير.
DAMO-YOLO: كاشف سريع ودقيق
DAMO-YOLO هو نموذج عالي الأداء للكشف عن الأجسام تم تطويره بواسطة مجموعة علي بابا. يقدم مجموعة من التقنيات المتقدمة لتحقيق توازن فائق بين السرعة والدقة، خاصةً على أجهزة GPU. يستفيد النموذج من Neural Architecture Search (NAS) لتحسين مكوناته لتحقيق أقصى قدر من الكفاءة.
تفاصيل فنية:
- المؤلفون: شيانزه شو، يي تشي جيانغ، وي هوا تشن، ييلون هوانغ، يوان تشانغ، وشيو يو صن
- المنظمة: مجموعة علي بابا
- التاريخ: 2022-11-23
- Arxiv: https://arxiv.org/abs/2211.15444
- GitHub: https://github.com/tinyvision/DAMO-YOLO
- المستندات: https://github.com/tinyvision/DAMO-YOLO/blob/master/README.md
البنية والميزات الرئيسية
تم بناء هيكل DAMO-YOLO على العديد من الابتكارات الرئيسية:
- العمود الفقري المدعوم من NAS: بدلاً من العمود الفقري المصمم يدويًا، تستخدم DAMO-YOLO عمودًا فقريًا يسمى GiraffeNet، والذي يتم إنشاؤه باستخدام البحث عن بنية الشبكة العصبية (NAS). يتيح ذلك للشبكة العثور على بنية مثالية لاستخراج الميزات المصممة خصيصًا لتحقيق الكفاءة.
- عنق RepGFPN الفعال: يستخدم النموذج هيكل عنق فعال، RepGFPN، والذي تم تحسينه أيضًا من خلال NAS. هذا المكون مسؤول عن دمج الميزات من مقاييس مختلفة للعمود الفقري، ويركز تصميمه على تحقيق أداء عالٍ بتكلفة حسابية منخفضة.
- ZeroHead: يبسط DAMO-YOLO رأس الكشف عن طريق تقديم ZeroHead، مما يقلل من عدد الطبقات والمعلمات المطلوبة لمهام التصنيف والانحدار دون التضحية بالدقة.
- تعيين تسميات AlignedOTA: يستخدم استراتيجية متقدمة لتعيين التسميات تسمى AlignedOTA، ممّا يحسن الطرق السابقة من خلال مواءمة أفضل لمهام التصنيف والانحدار، ممّا يؤدي إلى تنبؤات أكثر دقة.
نقاط القوة
- موازنة ممتازة بين السرعة والدقة: يتفوق DAMO-YOLO في توفير دقة عالية بسرعات استدلال سريعة جدًا، خاصة على وحدات معالجة الرسومات (GPUs) الحديثة.
- بنية مبتكرة: إن استخدام NAS لكل من العمود الفقري والعنق يدل على اتباع نهج استشرافي لتصميم النموذج، مما يدفع حدود التعلم الآلي الآلي.
- نماذج قابلة للتطوير: يقدم مجموعة من النماذج (Tiny، Small، Medium، Large) التي تسمح للمطورين باختيار التوازن الصحيح بين الأداء واستخدام الموارد لتلبية احتياجاتهم الخاصة.
نقاط الضعف
- التحسين الذي يركز على وحدة معالجة الرسوميات (GPU): النموذج مُحسَّن للغاية للاستدلال على وحدة معالجة الرسوميات، مع تركيز أقل على أداء وحدة المعالجة المركزية (CPU)، مما قد يكون قيدًا لبعض سيناريوهات الحوسبة الطرفية.
- النظام البيئي والدعم: كنموذج من مستودع خارجي، فإنه يفتقر إلى التكامل السلس والوثائق الشاملة والدعم المجتمعي النشط الموجود داخل النظام البيئي لـ Ultralytics.
- تحديد المهمة: تم تصميم DAMO-YOLO بشكل أساسي لاكتشاف الأجسام ولا يدعم أصلاً مهام الرؤية الأخرى مثل التجزئة أو تقدير الوضع.
حالات الاستخدام
يُعد DAMO-YOLO خيارًا ممتازًا للتطبيقات التي يكون فيها الأداء في الوقت الفعلي على أجهزة GPU أمرًا بالغ الأهمية:
- خدمات الرؤية المستندة إلى السحابة: معالجة تدفقات الفيديو عالية الحجم للتحليلات والمراقبة.
- الأتمتة الصناعية: مراقبة الجودة واكتشاف العيوب بسرعة عالية على خطوط الإنتاج.
- المراقبة الآنية: تشغيل أنظمة الأمان التي تتطلب اكتشافًا سريعًا ودقيقًا للأجسام.
YOLOX: بديل عالي الأداء وخالٍ من المرساة
كان YOLOX، الذي تم تطويره بواسطة Megvii، خطوة مهمة في تطور نماذج YOLO من خلال تقديم تصميم خالٍ من المرساة. يهدف هذا التبسيط لخط الكشف إلى تحسين الأداء وتقليل التعقيد المرتبط بضبط مربعات المرساة.
تفاصيل فنية:
- المؤلفون: تشنغ قه، سونغتاو ليو، فنغ وانغ، زيمينغ لي، وجيان صن
- المنظمة: Megvii
- التاريخ: 2021-07-18
- Arxiv: https://arxiv.org/abs/2107.08430
- GitHub: https://github.com/Megvii-BaseDetection/YOLOX
- المستندات: https://yolox.readthedocs.io/en/latest/
البنية والميزات الرئيسية
يتميز YOLOX بالعديد من القرارات المعمارية الرئيسية:
- تصميم خالٍ من المربعات المحورية (Anchor-Free Design): من خلال التخلص من المربعات المحورية المحددة مسبقًا، يبسط YOLOX عملية التدريب ويقلل من عدد المعلمات الفائقة، مما قد يؤدي إلى تعميم أفضل.
- Decoupled Head: تستخدم رؤوسًا منفصلة لمهام التصنيف والتوطين. وقد وجد أن هذا الفصل يحل مشكلة عدم التوافق الموجودة في الرؤوس المزدوجة، وبالتالي تحسين الدقة وسرعة التقارب.
- تعيين تسمية SimOTA: قدمت YOLOX استراتيجية متقدمة لتعيين التسميات تسمى SimOTA، والتي تعامل عملية التعيين كمشكلة نقل مثالية لتعيين عينات إيجابية ديناميكيًا، مما يؤدي إلى أداء أفضل.
- تقوية قوية: يعتمد النموذج على تقوية البيانات قوية مثل MixUp و Mosaic لتحسين متانته ودقته.
نقاط القوة
- دقة عالية: يحقق YOLOX نتائج mAP تنافسية، حيث يصل أكبر متغير له (YOLOX-X) إلى أكثر من 51% mAP على مجموعة بيانات COCO.
- مسار مبسط: إن النهج الخالي من المرساة يجعل النموذج أسهل للفهم والتنفيذ مقارنة بأجهزة الكشف التقليدية القائمة على المرساة.
- نموذج راسخ وموثق جيدًا: نظرًا لكونه نموذجًا أقدم، فإن YOLOX لديه قدر كبير من موارد المجتمع والبرامج التعليمية وأمثلة النشر المتاحة.
نقاط الضعف
- استدلال أبطأ: بالمقارنة مع النماذج الأحدث مثل DAMO-YOLO، يمكن أن يكون لدى YOLOX سرعات استدلال أبطأ لمستوى معين من الدقة، خاصة المتغيرات الأكبر.
- النظام البيئي الخارجي: إنه ليس جزءًا من نظام Ultralytics البيئي المتكامل، مما يعني أن المستخدمين يفوتون سير العمل المبسط وأدوات مثل Ultralytics HUB والدعم الموحد.
- تعددية المهام محدودة: مثل DAMO-YOLO، يركز YOLOX بشكل أساسي على اكتشاف الكائنات ويفتقر إلى الدعم الأصلي لمهام رؤية الكمبيوتر الأخرى.
حالات الاستخدام
يعتبر YOLOX مناسبًا تمامًا للتطبيقات التي تكون فيها الدقة العالية أولوية قصوى والتصميم الخالي من المرساة مفيدًا:
- القيادة الذاتية: أنظمة الإدراك في المركبات ذاتية القيادة التي تتطلب اكتشافًا دقيقًا للأشياء.
- الروبوتات المتقدمة: تمكين الروبوتات من التنقل والتفاعل مع البيئات المعقدة وغير المهيكلة.
- البحث والتطوير: تعتبر أساسًا قويًا للبحث الأكاديمي والصناعي في طرق الكشف الخالية من المرساة.
تحليل الأداء: DAMO-YOLO مقابل YOLOX
يقدم الجدول التالي مقارنة تفصيلية للأداء بين أحجام مختلفة من نماذج DAMO-YOLO و YOLOX، والتي تم قياسها على مجموعة بيانات COCO val.
النموذج | الحجم (بالبكسل) |
mAPval 50-95 |
السرعة وحدة المعالجة المركزية CPU ONNX (بالمللي ثانية) |
السرعة T4 TensorRT10 (بالمللي ثانية) |
المعلمات (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
من البيانات، يمكننا استخلاص عدة استنتاجات:
- DAMO-YOLO يوفر بشكل عام واجهة Pareto أفضل بين السرعة والدقة. على سبيل المثال، يحقق DAMO-YOLOs قيمة 46.0 لخريطة دقة متوسطة (mAP) في 3.45 مللي ثانية، بينما يصل YOLOXm إلى قيمة مماثلة تبلغ 46.9 لخريطة دقة متوسطة (mAP) ولكن في وقت أبطأ قدره 5.43 مللي ثانية.
- YOLOX يتوسع إلى دقة قصوى أعلى مع نموذج YOLOX-x الخاص به (51.1 mAP)، ولكن هذا يأتي بتكلفة كبيرة من حيث المعلمات و FLOPs ووقت الاستجابة.
- بالنسبة للنماذج خفيفة الوزن، يعتبر YOLOX-Nano هو الأكثر كفاءة من حيث المعلمات و FLOPs، على الرغم من أنه يعمل بدقة إدخال أقل.
- DAMO-YOLO يُظهر زمن انتقال فائق لوحدة معالجة الرسوميات (GPU) عبر أحجام النماذج المماثلة، مما يجعله مرشحًا أقوى للتطبيقات في الوقت الفعلي على أجهزة NVIDIA.
ميزة Ultralytics: بديل فائق
في حين أن كلاً من DAMO-YOLO و YOLOX هما نموذجان قويان، يجب على المطورين والباحثين الذين يسعون إلى مزيج مثالي من الأداء وسهولة الاستخدام والتنوع أن يفكروا في نماذج من نظام Ultralytics YOLO البيئي، مثل YOLOv8 وأحدث YOLO11.
توفر نماذج Ultralytics العديد من المزايا الرئيسية:
- سهولة الاستخدام: تعمل واجهة برمجة تطبيقات Python مبسطة و وثائق شاملة وسير عمل مباشر للتدريب والنشر على جعل البدء أمرًا بسيطًا للغاية.
- نظام بيئي مُدار بشكل جيد: استفد من التطوير النشط ودعم المجتمع القوي عبر GitHub والتحديثات المتكررة والتكامل السلس مع أدوات مثل Ultralytics HUB لإدارة البيانات والتدريب.
- موازنة الأداء: تم تحسين نماذج Ultralytics بشكل كبير لتحقيق توازن ممتاز بين سرعة الاستدلال (على كل من وحدات المعالجة المركزية CPU ووحدات معالجة الرسوميات GPU) والدقة، مما يجعلها مناسبة لمجموعة واسعة من سيناريوهات النشر بدءًا من الأجهزة الطرفية وصولًا إلى الخوادم السحابية.
- كفاءة الذاكرة: تتطلب نماذج Ultralytics YOLO عادةً ذاكرة أقل للتدريب والاستدلال مقارنة بالبنى الأكثر تعقيدًا، مما يتيح التطوير على أجهزة أقل قوة.
- تنوع الاستخدامات: دعم أصيل لمهام متعددة تتجاوز الاكتشاف، بما في ذلك تجزئة المثيلات، و تصنيف الصور، و تقدير الوضعية، والصناديق المحيطة الموجهة (OBB).
- كفاءة التدريب: أوقات تدريب سريعة وأوزان مُدرَّبة مسبقًا متاحة بسهولة على مجموعات بيانات متنوعة مثل COCO لتسريع الجداول الزمنية للمشروع.
الخلاصة
يعتبر كل من DAMO-YOLO و YOLOX نموذجين هائلين لاكتشاف الكائنات دفعا هذا المجال إلى الأمام. تتميز DAMO-YOLO بسرعة GPU استثنائية وتصميم مبتكر قائم على NAS، مما يجعلها مثالية للأنظمة عالية الإنتاجية وفي الوقت الفعلي. تقدم YOLOX بديلاً قويًا وعالي الدقة وخاليًا من المرساة أثبت قيمته في كل من البحث والصناعة.
ومع ذلك، بالنسبة لمعظم المطورين والباحثين، تقدم نماذج Ultralytics YOLO مثل YOLO11 الحزمة الشاملة الأكثر إقناعًا. إنها تجمع بين أحدث أداء وسهولة استخدام لا مثيل لها وتعدد استخدامات المهام ونظام بيئي مزدهر ومدعوم جيدًا. هذا النهج الشامل يجعل نماذج Ultralytics الخيار الموصى به لبناء حلول رؤية الكمبيوتر العملية وعالية الأداء والقابلة للتطوير.
استكشف نماذج أخرى
قد يرغب المستخدمون المهتمون بإجراء المزيد من المقارنات في استكشاف كيف تتفوق DAMO-YOLO و YOLOX على النماذج الأخرى الحديثة:
- YOLOv8 ضد DAMO-YOLO
- YOLO11 ضد DAMO-YOLO
- RT-DETR مقابل DAMO-YOLO
- YOLOv8 ضد YOLOX
- YOLOv9 مقارنة بـ YOLOX
- EfficientDet ضد YOLOX