YOLOv5 ضد DAMO-YOLO: مقارنة تقنية تفصيلية
في المشهد سريع التطور للرؤية الحاسوبية، يعد اختيار البنية الصحيحة لاكتشاف الأجسام أمرًا محوريًا لنجاح المشروع. تستكشف هذه المقارنة نموذجين مهمين: Ultralytics YOLOv5وهو معيار صناعي معتمد عالميًا ومعروف بموثوقيته وسرعته، ونموذج YOLO وهو نموذج يركز على الأبحاث من مجموعة علي بابا يقدم تقنيات بحث معمارية جديدة.
في حين أن كلا النموذجين يهدفان إلى حل مهام الكشف عن الأجسام، إلا أنهما يلبيان احتياجات مختلفة. تعطي YOLOv5 الأولوية لسهولة الاستخدام وتنوع النشر وتوازن الأداء الواقعي، في حين تركز DAMO-YOLO على دفع الحدود الأكاديمية من خلال البحث عن بنية عصبية (NAS) وآليات دمج الميزات الثقيلة.
مقاييس ومعايير الأداء
يعد فهم المفاضلات بين سرعة الاستدلال ودقة الـ detect أمرًا ضروريًا عند اختيار نموذج للإنتاج. تسلط البيانات التالية الضوء على كيفية أداء هذه النماذج على مجموعة بيانات COCO، وهي معيار قياسي لـ object detection.
| النموذج | الحجم (بالبكسل) | mAPval 50-95 | السرعة وحدة المعالجة المركزية CPU ONNX (بالمللي ثانية) | السرعة T4 TensorRT10 (بالمللي ثانية) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| 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 |
تحليل النتائج
تكشف البيانات عن انقسام متميز في فلسفة التصميم. YOLOv5n (Nano) هو البطل بلا منازع للسرعة والكفاءة، حيث يقدم وقت استدلال مذهل يبلغ 1.12 مللي ثانية على GPU وأداء CPU متاح على نطاق واسع. هذا يجعله مثاليًا لتطبيقات الذكاء الاصطناعي الطرفي (Edge AI) حيث يكون زمن الوصول المنخفض أمرًا غير قابل للتفاوض.
نماذج DAMO-YOLO، مثل DAMO-YOLOl، وتحقيق نتائج أعلى بشكل طفيف متوسط الدقة المتوسطةmAP، حيث بلغت ذروتها عند 50.8، ولكن على حساب التعتيم في مقاييس أداء وحدة المعالجة المركزية CPU. يشير نقص سرعات وحدة المعالجة المركزية CPU المبلغ عنها لـ DAMO-YOLO إلى أنها مُحسَّنة بشكل أساسي لبيئات وحدة معالجة الرسوميات GPU المتطورة، مما يحد من مرونتها لسيناريوهات نشر أوسع مثل تطبيقات الأجهزة المحمولة أو الأنظمة المدمجة.
Ultralytics YOLOv5: معيار الصناعة متعدد الاستخدامات
Author: Glenn Jocher
Organization:Ultralytics
Date: 2020-06-26
GitHub:https://github.com/ultralytics/yolov5
Documentation:https://docs.ultralytics.com/models/yolov5/
منذ إصداره، أثبت YOLOv5 نفسه كحجر الزاوية في مجتمع الرؤية الحاسوبية. تم بناؤه أصلاً في PyTorch، وهو يوازن بين التعقيد وسهولة الاستخدام، مما يوفر تجربة "تتضمن كل شيء". تستخدم بنيته العمود الفقري CSPDarknet وعنق PANet، اللذين يجمعان الميزات بكفاءة على نطاقات مختلفة لـ detect الكائنات ذات الأحجام المختلفة.
نقاط القوة الرئيسية
- سهولة الاستخدام: تعطي Ultralytics الأولوية لتجربة المطور (DX). باستخدام Python API بسيط و أوامر CLI بديهية، يمكن للمستخدمين تدريب النماذج ونشرها في دقائق.
- نظام بيئي مُدار بشكل جيد: مدعوم من قبل مجتمع نشط وتحديثات متكررة، يضمن YOLOv5 التوافق مع أحدث الأدوات، بما في ذلك Ultralytics HUB لإدارة النماذج بسلاسة.
- Versatility: بالإضافة إلى الـ detect القياسي، يدعم YOLOv5 كلاً من instance segmentation و image classification، مما يسمح للمطورين بمعالجة مهام رؤية متعددة باستخدام إطار عمل واحد.
- مرونة النشر: بدءًا من التصدير إلى ONNX و TensorRT إلى التشغيل على iOS و Android، تم تصميم YOLOv5 للتشغيل في أي مكان.
سير عمل مبسط
تتكامل YOLOv5 بسلاسة مع أدوات MLOps الشائعة. يمكنك تتبع تجاربك باستخدام Weights & Biases أو Comet بأمر واحد، مما يضمن أن عمليات التدريب الخاصة بك قابلة للتكرار وسهلة التحليل.
DAMO-YOLO: دقة مدفوعة بالبحث
المؤلفون: شيانزه شو، يي تشي جيانغ، وي هوا تشن، يي لون هوانغ، يوان تشانغ، و شيو يو صن
المنظمة: مجموعة علي بابا
التاريخ: 2022-11-23
Arxiv:https://arxiv.org/abs/2211.15444v2
GitHub:https://github.com/tinyvision/DAMO-YOLO
DAMO-YOLO هي طريقة طورتها أكاديمية DAMO التابعة لشركة Alibaba. وهي تقدم مجموعة من التقنيات المتقدمة بما في ذلك البحث عن بنية عصبية (NAS) لتصميم هياكل أساسية فعالة تلقائيًا (MAE-NAS)، وهيكل عنق ثقيل يُعرف باسم RepGFPN (شبكة هرم الميزات المعممة المعاد تحديدها)، ورأس خفيف الوزن يسمى ZeroHead.
الخصائص الرئيسية
- العمود الفقري MAE-NAS: يستخدم طريقة تسمى MAE-NAS للعثور على بنية شبكة مثالية في ظل قيود زمن انتقال محددة، على الرغم من أن هذا يمكن أن يجعل تعديل البنية يدويًا أكثر تعقيدًا.
- إسناد الملصقات AlignedOTA: تستخدم إستراتيجية ديناميكية لإسناد الملصقات تسمى AlignedOTA لحل حالات عدم التوافق بين مهام التصنيف والانحدار.
- التركيز على الدقة: الهدف الأساسي من DAMO-YOLO هو زيادة mAP إلى أقصى حد على مجموعة بيانات COCO، مما يجعله منافسًا قويًا للمسابقات أو الأبحاث الأكاديمية حيث يكون لكل جزء من المائة أهمية.
الاختلافات المعمارية والتشغيلية
يمتد التباعد بين YOLOv5 و DAMO-YOLO إلى ما هو أبعد من المقاييس البسيطة إلى فلسفات التصميم الأساسية ومتطلبات التشغيل.
الهيكلة: البساطة مقابل التعقيد
يستخدم YOLOv5 بنية يدوية الصنع وبديهية. إن نهجه القائم على المرساة مفهوم جيدًا وسهل التصحيح. في المقابل، يعتمد DAMO-YOLO على إعادة المعلمات الثقيلة والبحث الآلي (NAS). في حين أن NAS يمكن أن ينتج هياكل فعالة، إلا أنه غالبًا ما يؤدي إلى نماذج "الصندوق الأسود" التي يصعب على المطورين تخصيصها أو تفسيرها. بالإضافة إلى ذلك، فإن الرقبة الثقيلة (RepGFPN) في DAMO-YOLO تزيد من الحمل الحسابي أثناء التدريب، مما يتطلب ذاكرة GPU أكبر مقارنة بتصميم CSP الفعال الخاص بـ YOLOv5.
كفاءة التدريب والذاكرة
تشتهر نماذج Ultralytics بـ كفاءة التدريب. يتطلب YOLOv5 عادةً ذاكرة CUDA أقل، مما يسمح بتدريبه على وحدات معالجة الرسومات ذات المستوى الاستهلاكي. غالبًا ما يتطلب DAMO-YOLO، بعمليات إعادة المعلمات والتقطير المعقدة، أجهزة متطورة للتدريب بفعالية. علاوة على ذلك، توفر Ultralytics مكتبة واسعة من الأوزان المدربة مسبقًا و ضبط المعلمات الفائقة تلقائيًا لتسريع المسار إلى التقارب.
النظام البيئي وسهولة الاستخدام
ربما يكمن الاختلاف الأهم في النظام البيئي. YOLOv5 ليس مجرد نموذج؛ بل هو جزء من مجموعة شاملة من الأدوات.
- الوثائق: تحافظ Ultralytics على وثائق شاملة ومتعددة اللغات توجه المستخدمين من جمع البيانات إلى النشر.
- المجتمع: يضمن مجتمع عالمي ضخم حل المشكلات بسرعة، وتتوفر البرامج التعليمية بسهولة.
- عمليات التكامل: دعم أصيل لمجموعات بيانات Roboflow وأهداف النشر مثل NVIDIA Jetson يبسط خط الأنابيب بأكمله.
يفتقر DAMO-YOLO، وهو مستودع أبحاث في المقام الأول، إلى هذا المستوى من الدعم المصقول، مما يجعل الاندماج في المنتجات التجارية أكثر صعوبة.
حالات الاستخدام في العالم الحقيقي
غالبًا ما يعتمد الاختيار بين هذه النماذج على بيئة النشر المحددة.
أين يتفوق YOLOv5
- الزراعة الذكية: تجعلها متطلباتها المنخفضة للموارد مثالية للتشغيل على الطائرات بدون طيار أو الجرارات ذاتية القيادة من أجل اكتشاف أمراض المحاصيل.
- التصنيع: في الأتمتة الصناعية، تتيح السرعة العالية لـ YOLOv5 إمكانية الكشف عن العيوب في الوقت الفعلي على السيور الناقلة سريعة الحركة.
- تحليلات البيع بالتجزئة: بالنسبة إلى عد الكائنات وإدارة قائمة الانتظار، يتيح أداء وحدة المعالجة المركزية (CPU) في YOLOv5 النشر الفعال من حيث التكلفة على أجهزة المتجر الحالية.
أين يتفوق DAMO-YOLO
- البحث الأكاديمي: سيجد الباحثون الذين يدرسون فعالية تقنيات RepGFPN أو NAS أن DAMO-YOLO هو خط أساس قيم.
- المراقبة المتطورة: في السيناريوهات التي تتوفر فيها وحدات معالجة الرسوميات من فئة الخوادم المخصصة حيث يتم إعطاء الأولوية للدقة على زمن الوصول، يمكن أن يوفر DAMO-YOLO اكتشافًا دقيقًا في المشاهد المعقدة.
مثال على التعليمات البرمجية: البدء في استخدام YOLOv5
يعد تشغيل YOLOv5 أمرًا مباشرًا بفضل حزمة Ultralytics Python. يوضح المثال التالي كيفية تحميل نموذج مُدرَّب مسبقًا وتشغيل الاستدلال على صورة.
import torch
# Load a pre-trained YOLOv5s model from PyTorch Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s", pretrained=True)
# Define an image URL or local path
img = "https://ultralytics.com/images/zidane.jpg"
# Run inference
results = model(img)
# Print results to the console
results.print()
# Show the image with bounding boxes
results.show()
الخلاصة
يساهم كل من YOLOv5 و DAMO-YOLO بشكل كبير في مجال الكشف عن الكائنات. يعرض DAMO-YOLO إمكانات البحث عن البنية العصبية ودمج الميزات المتقدمة لتحقيق معايير دقة عالية.
ومع ذلك، بالنسبة للغالبية العظمى من المطورين والمهندسين والشركات، يظل Ultralytics YOLOv5 هو الخيار الأفضل. إن سهولة الاستخدام التي لا مثيل لها و توازن الأداء القوي وأمان النظام البيئي الذي تتم صيانته جيدًا تضمن انتقال المشاريع من النموذج الأولي إلى الإنتاج بأقل قدر من الاحتكاك. إن القدرة على النشر بكفاءة عبر وحدات المعالجة المركزية ووحدات معالجة الرسومات، جنبًا إلى جنب مع متطلبات الذاكرة المنخفضة للتدريب، تجعل YOLOv5 حلاً عمليًا للغاية للتطبيقات الواقعية.
بالنسبة لأولئك الذين يتطلعون إلى الاستفادة من أحدث ما توصلت إليه تكنولوجيا رؤية الكمبيوتر، واصلت Ultralytics الابتكار مع YOLOv8 و YOLO11 المتطور. تعتمد هذه النماذج الأحدث على الأساس المتين لـ YOLOv5، مما يوفر سرعة ودقة وتعدد استخدامات أكبر في المهام.
استكشف مقارنات أخرى
لفهم أفضل لكيفية ملاءمة هذه النماذج للنظام البيئي الأوسع، استكشف هذه المقارنات التفصيلية: