مقارنة بين YOLOv8 و DAMO-YOLO#
يشهد مجال الرؤية الحاسوبية تطوراً مستمراً، حيث تدفع المعماريات الجديدة بحدود الممكن على أجهزة الحافة ومجموعات السحابة الضخمة. في هذا التحليل التقني المعمق، نقارن بين نموذجين بارزين للكشف عن الكائنات في الوقت الفعلي: YOLOv8 و DAMO-YOLO. من خلال فحص معمارياتهما، ومقاييس الأداء، ومنهجيات التدريب، يمكن لمهندسي تعلم الآلة اتخاذ قرارات مدروسة لخطوط أنابيب النشر الخاصة بهم.
خلفيات ونشأة النماذج#
تم تقديم كلا النموذجين في نفس الفترة تقريباً، لكنهما ينبعان من فلسفات تصميم وأهداف بحثية مختلفة.
تفاصيل YOLOv8#
- المؤلفون: Glenn Jocher و Ayush Chaurasia و Jing Qiu
- المنظمة: Ultralytics
- التاريخ: 2023-01-10
- جيتهับ: Ultralytics GitHub Repository
- المستندات: الوثائق الرسمية لـ YOLOv8
تفاصيل DAMO-YOLO#
- المؤلفون: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang, و Xiuyu Sun
- المنظمة: Alibaba Group
- التاريخ: 2022-11-23
- أركايف: بحث DAMO-YOLO
- جيت هب: مستودع DAMO-YOLO على جيت هب
الابتكارات المعمارية#
YOLOv8: تصميم مرن بدون نقاط ارتكاز (Anchor-Free)#
قدم نموذج Ultralytics YOLOv8 تحسينات كبيرة مقارنة بالإصدارات السابقة، مما عزز مكانته كنموذج متطور وعالي الاعتمادية. يتميز برأس اكتشاف خالي من المراسي، مما يقلل من عدد توقعات المربعات ويسرع عملية الاستدلال. تستخدم البنية رأسًا مفصولاً يفصل بين مهام تحديد الكائنات، والتصنيف، والانحدار، مما يؤدي إلى توقعات أكثر دقة لمربعات الإحاطة.
علاوة على ذلك، ينفذ YOLOv8 دالة خسارة البؤرة التوزيعية (DFL) إلى جانب خسارة CIoU، مما يعزز قدرة النموذج على تحديد مواقع حدود الكائنات بدقة، خاصة للأهداف الأصغر حجماً أو المحجوبة. إن هيكله المبسط مُحسَّن للغاية للتنفيذ على وحدة معالجة الرسومات GPU ووحدة المعالجة المركزية CPU.
DAMO-YOLO: مدفوع بالبحث عن المعماريات#
يتخذ نموذج DAMO-YOLO نهجًا مختلفًا، حيث يعتمد بشكل كبير على البحث المعماري العصبي (NAS) لتصميم هيكله تلقائيًا. قدم فريق علي بابا "MAE-NAS" للعثور على الهياكل التي توفر مقايضات مثالية بين زمن الاستجابة والدقة خصيصًا تحت تسريع TensorRT.
يدمج النموذج RepGFPN (شبكة هرمية للميزات معادة التقييس) لدمج الميزات بكفاءة، وتصميماً "ZeroHead" لتقليل العبء الحسابي لرأس الكشف. أثناء التدريب، يستفيد من AlignedOTA لتخصيص التسميات ويعتمد بشكل كبير على عملية معقدة لتقطير المعرفة، مما يتطلب نموذجاً معلماً أكبر للإشراف على نموذج الطالب المستهدف.
بينما يحقق DAMO-YOLO مقاييس زمن استجابة مبهرة عبر NAS والتقطير، فإن هذا يتطلب ذاكرة CUDA ووقت حوسبة أكبر بكثير أثناء التدريب مقارنة بخط أنابيب التدريب أحادي المرحلة والمحسن للغاية في YOLOv8.
الأداء والمقاييس#
عند نشر نماذج الرؤية الحاسوبية في بيئة الإنتاج، يعد تحقيق التوازن بين الدقة (mAP) وسرعة الاستنتاج أمراً حاسماً. يوضح الجدول أدناه أداء كلا النموذجين عبر أحجام مختلفة.
| النموذج | الحجم (بكسل) | mAPval 50-95 | السرعة CPU ONNX (ms) | السرعة T4 TensorRT10 (ms) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
| 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 |
يُظهر YOLOv8 توازنًا استثنائيًا في الأداء. يتطلب نموذج YOLOv8n (النانو) 3.2 مليون معلمة فقط مقارنة بـ 8.5 مليون معلمة لنموذج DAMO-YOLOt، مما يجعله متفوقًا بشكل كبير للأجهزة المحمولة أو البيئات ذات متطلبات الذاكرة الصارمة. علاوة على ذلك، يقدم YOLOv8 نطاقًا أوسع من الأحجام، وصولاً إلى YOLOv8x عالي الدقة لأحمال العمل القائمة على السحابة.
تجربة المطور والنظام البيئي#
سهولة الاستخدام وكفاءة التدريب#
أحد أكبر العوامل المميزة هو تجربة المستخدم. تم تصميم النظام البيئي لـ Ultralytics لسرعة المطورين. يتطلب تدريب نموذج YOLOv8 مخصص استخداماً منخفضاً جداً للذاكرة ويمكن تنفيذه عبر Python API موحدة أو واجهة سطر الأوامر.
وعلى العكس من ذلك، فإن إعادة إنتاج التدريب المحسن بالتقطير لنموذج DAMO-YOLO تتطلب غالبًا التنقل عبر ملفات تكوين معقدة والتعامل مع تتبع التجربة للمعلم والطالب متعدد المراحل.
فيما يلي مثال على مدى سهولة التدريب والتحقق والتصدير لـ YOLOv8 باستخدام Python:
from ultralytics import YOLO
# Load a pre-trained YOLOv8 nano model
model = YOLO("yolov8n.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device="cpu")
# Export the trained model to ONNX format
path = model.export(format="onnx")تعدد الاستخدامات عبر مهام الرؤية#
تم بناء DAMO-YOLO خصيصًا للكشف عن الكائنات في مربعات الإحاطة. في المقابل، تدعم بنية YOLOv8 مهام متعددة بشكل أصلي. من خلال تبديل أوزان النموذج ببساطة، يمكن للمطورين إجراء تجزئة المثيلات، وتصنيف الصور، وتقدير الوضعية دون تغيير قاعدة كود نشرها الأساسية. تجعل هذه المرونة نماذج Ultralytics أكثر عملية للتطبيقات المعقدة.
حالات الاستخدام في العالم الحقيقي#
متى تستخدم YOLOv8#
مزيج YOLOv8 من السرعة والدقة وسهولة النشر يجعله مثالياً لـ:
- تحليلات التجزئة الذكية: إجراء تتبع الكائنات لمراقبة سلوك العملاء أو أتمتة عمليات فحص المخزون.
- روبوتات الزراعة: الاستفادة من أدائه القوي على الأجهزة المتنوعة لتحديد المحاصيل أو الآفات في الوقت الفعلي.
- تشخيصات الرعاية الصحية: استخدام تجزئة الكائنات لتخطيط الشذوذ في الصور الطبية بسرعة ودقة.
- عمليات النشر على الحافة: يتيح التكامل السلس مع تنسيقات التصدير مثل OpenVINO وCoreML لنموذج YOLOv8 التألق على الأجهزة المقيدة.
متى تستخدم DAMO-YOLO#
يمكن أن يكون DAMO-YOLO مفيداً في سيناريوهات متخصصة، لا سيما:
- أبحاث NAS الأكاديمية: للفرق التي تدرس إعادة التقييس أو منهجيات تصميم المعماريات المؤتمتة.
- خطوط الأنابيب المقيدة بـ GPU بشكل صارم: التطبيقات التي تعمل حصرياً على أجهزة NVIDIA محددة حيث تم تحسين هياكل NAS بشكل كبير لحدود تنفيذ TensorRT.
حالات الاستخدام والتوصيات#
يعتمد الاختيار بين YOLOv8 و DAMO-YOLO على متطلبات مشروعك المحددة، وقيود النشر، وتفضيلات النظام البيئي.
متى تختار YOLOv8#
يعد YOLOv8 خياراً قوياً لـ:
- نشر متعدد المهام متعدد الاستخدامات: المشاريع التي تتطلب نموذجاً مثبتًا لـ الاكتشاف، والتقسيم، والتصنيف، وتقدير الوضع ضمن نظام Ultralytics البيئي.
- أنظمة الإنتاج الراسخة: بيئات الإنتاج الحالية المبنية بالفعل على بنية YOLOv8 مع خطوط أنابيب نشر مستقرة ومختبرة جيداً.
- دعم مجتمعي ونظام بيئي واسع: التطبيقات التي تستفيد من دروس YOLOv8 الواسعة، والتكاملات مع أطراف ثالثة، وموارد المجتمع النشطة.
متى تختار DAMO-YOLO#
يوصى باستخدام DAMO-YOLO من أجل:
- تحليلات الفيديو ذات الإنتاجية العالية: معالجة تدفقات الفيديو ذات معدل الإطارات العالي على بنية تحتية ثابتة لوحدات GPU من NVIDIA حيث يكون إنتاجية الدفعة-1 هو المقياس الأساسي.
- خطوط التصنيع الصناعية: السيناريوهات ذات قيود زمن انتقال GPU صارمة على أجهزة مخصصة، مثل فحص الجودة في الوقت الفعلي على خطوط التجميع.
- أبحاث البحث في البنية العصبية: دراسة تأثيرات البحث الآلي في البنية (MAE-NAS) والهياكل الأساسية المعاد برمجتها بكفاءة على أداء الاكتشاف.
متى تختار Ultralytics (YOLO26)#
بالنسبة لمعظم المشاريع الجديدة، يقدم Ultralytics YOLO26 أفضل مزيج من الأداء وتجربة المطورين:
- نشر الحافة الخالي من NMS: التطبيقات التي تتطلب استنتاجاً متسقاً ومنخفض زمن الانتقال دون تعقيدات معالجة ما بعد المعالجة باستخدام كبت غير الأقصى.
- بيئات وحدة المعالجة المركزية (CPU) فقط: الأجهزة التي لا تحتوي على تسريع مخصص بوحدة معالجة الرسوميات (GPU)، حيث توفر سرعة استنتاج CPU أسرع بنسبة تصل إلى 43% في YOLO26 ميزة حاسمة.
- الكشف عن الأشياء الصغيرة: السيناريوهات الصعبة مثل صور الطائرات بدون طيار الجوية أو تحليل مستشعرات إنترنت الأشياء (IoT) حيث تعمل ProgLoss و STAL على تعزيز الدقة بشكل كبير على الأشياء الدقيقة.
نظرة إلى المستقبل: نماذج Ultralytics الأحدث#
بينما يظل YOLOv8 حصاناً طموحاً يمكن الاعتماد عليه، فإن مجال الرؤية الحاسوبية يتحرك بسرعة. يجب على المستخدمين أيضاً التفكير في استكشاف الأجيال الأحدث:
YOLO26: يمثل الجيل الأحدث، Ultralytics YOLO26، تحولاً جذرياً. فهو يقدم تصميماً أصلياً من النهاية إلى النهاية بدون قمع غير محدد (NMS-Free)، مما يلغي تماماً اختناقات زمن الاستجابة المرتبطة بمعالجة ما بعد الكبح غير المحدود. مدعوماً بمحسن MuSGD الجديد (هجين بين SGD وMuon) ودوال خسارة متخصصة ProgLoss + STAL، يحقق YOLO26 تدريباً مستقراً بشكل ملحوظ وتحسناً هائلاً في التعرف على الكائنات الصغيرة. مع إزالة DFL (إزالة خسارة البؤرة التوزيعية لتسهيل التصدير وتحسين التوافق مع أجهزة الحافة / منخفضة الطاقة)، توفر التعديلات المعمارية ما يصل إلى 43% أسرع في استدلال وحدة المعالجة المركزية مقارنة بالأجيال السابقة، مما يجعله الخيار النهائي للحوسبة الحديثة على الحافة.
YOLO11: بديل ممتاز آخر، يقدم Ultralytics YOLO11 تحسينات معمارية تدريجية مقارنة بـ YOLOv8 ويظل نموذجاً قوياً ومتبناً على نطاق واسع في المجتمع.
هل أنت مستعد لنقل نماذجك من النموذج الأولي إلى الإنتاج؟ استخدم منصة Ultralytics لتعليق مجموعات البيانات تلقائيًا، وتتبع التجربة، ونشر النماذج بسلاسة على السحابة أو أجهزة الحافة.
في الختام، بينما يقدم DAMO-YOLO رؤى أكاديمية مثيرة للاهتمام حول البحث عن المعماريات، توفر نماذج Ultralytics نظاماً بيئياً أكثر نضجاً وتنوعاً وصديقاً للمطورين بشكل ملحوظ. سواء كنت متمسكاً باستقرار YOLOv8 المثبت أو قمت بالترقية إلى معمارية YOLO26 فائقة السرعة والخالية من NMS، تظل مجموعة Ultralytics الخيار الأول لرؤية الذكاء الاصطناعي في الوقت الفعلي.