EfficientDet ضد DAMO-YOLO: مقارنة فنية
في المشهد سريع التطور في مجال الرؤية الحاسوبية، يُعد اختيار البنية الصحيحة لاكتشاف الأجسام أمراً بالغ الأهمية لنجاح التطبيق. هناك معماريتان بارزتان شكّلتا هذا المجال هما EfficientDet، التي طورتها Google Research، YOLO التي طورتها أكاديمية DAMO التابعة لشركة علي بابا. في حين أن كلاهما يهدفان إلى تحقيق أقصى قدر من الأداء، إلا أنهما يختلفان بشكل كبير في فلسفات التصميم الخاصة بهما: يركز أحدهما على كفاءة المعلمات وقابلية التوسع، بينما يستهدف الآخر الاستدلال في زمن انتقال منخفض على الأجهزة الصناعية.
يقدم هذا الدليل تحليلاً فنيًا متعمقًا لهذين النموذجين، ويقارن بين بنياتهما ومقاييس الأداء وحالات الاستخدام المثالية لمساعدة المطورين على اتخاذ قرارات مستنيرة.
تحليل الأداء: الكفاءة مقابل زمن الوصول
توضح المعايير التالية المفاضلات المتميزة بين EfficientDet و DAMO-YOLO. تشتهر EfficientDet بعدد المعلمات المنخفضة و FLOPs، مما يجعلها فعالة من الناحية النظرية، في حين أن DAMO-YOLO مُحسَّن لسرعة الاستدلال في العالم الحقيقي على وحدات معالجة الرسوميات GPUs.
| النموذج | الحجم (بالبكسل) | mAPval 50-95 | السرعة وحدة المعالجة المركزية CPU ONNX (بالمللي ثانية) | السرعة T4 TensorRT10 (بالمللي ثانية) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| EfficientDet-d0 | 640 | 34.6 | 10.2 | 3.92 | 3.9 | 2.54 |
| EfficientDet-d1 | 640 | 40.5 | 13.5 | 7.31 | 6.6 | 6.1 |
| EfficientDet-d2 | 640 | 43.0 | 17.7 | 10.92 | 8.1 | 11.0 |
| EfficientDet-d3 | 640 | 47.5 | 28.0 | 19.59 | 12.0 | 24.9 |
| EfficientDet-d4 | 640 | 49.7 | 42.8 | 33.55 | 20.7 | 55.2 |
| EfficientDet-d5 | 640 | 51.5 | 72.5 | 67.86 | 33.7 | 130.0 |
| EfficientDet-d6 | 640 | 52.6 | 92.8 | 89.29 | 51.9 | 226.0 |
| EfficientDet-d7 | 640 | 53.7 | 122.0 | 128.07 | 51.9 | 325.0 |
| 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 |
النقاط الرئيسية المستخلصة من المقارنة المعيارية
من البيانات أعلاه، تظهر عدة اختلافات حاسمة:
- هيمنة زمن الوصول لوحدة معالجة الرسوميات (GPU): يُظهر DAMO-YOLO سرعات استدلال أسرع بشكل ملحوظ على أجهزة وحدة معالجة الرسوميات (GPU). على سبيل المثال، يحقق DAMO-YOLOm قيمة mAP تبلغ 49.2 مع زمن وصول يبلغ 5.09 مللي ثانية فقط على وحدة معالجة الرسوميات T4. في المقابل، يتطلب EfficientDet-d4 المماثل (49.7 mAP) 33.55 مللي ثانية - أي أبطأ بحوالي 6 مرات.
- كفاءة المعلمات: تتفوق EfficientDet في مقاييس ضغط النموذج. يستخدم نموذج EfficientDet-d0 3.9 مليون معلمة و 2.54 مليار عملية فاصلة عائمة في الثانية (FLOPs) فقط، مما يوفر بصمة خفيفة الوزن مثالية للأجهزة ذات مساحة التخزين المحدودة.
- أداء وحدة المعالجة المركزية (CPU Performance): يوفر EfficientDet معايير ثابتة لأداء وحدة المعالجة المركزية (CPU)، مما يجعله خيارًا يمكن التنبؤ به للأجهزة الطرفية غير المسرّعة. ومع ذلك، غالبًا ما تؤدي طبقات دمج الميزات المعقدة إلى إنتاجية أبطأ في العالم الحقيقي مقارنةً بالبنى الأبسط.
EfficientDet: قابل للتطوير وفعال
أحدثت EfficientDet ثورة في اكتشاف الأجسام من خلال تقديم طريقة مبدئية لتوسيع أبعاد النموذج. استنادًا إلى EfficientNet backbone، تهدف إلى تحقيق دقة عالية مع تقليل التكلفة الحسابية النظرية (FLOPs).
تفاصيل EfficientDet:
- المؤلفون: مينغشينغ تان، رومينغ بانغ، وكوك ف. لي
- المؤسسة:Google
- التاريخ: 2019-11-20
- Arxiv:https://arxiv.org/abs/1911.09070
- GitHub:https://github.com/google/automl/tree/master/efficientdet
أبرز الملامح المعمارية
يكمن الابتكار الأساسي لـ EfficientDet في عنصرين رئيسيين:
- BiFPN (شبكة الهرم المميز ثنائية الاتجاه): على عكس شبكات FPN التقليدية التي تجمع الميزات من مقاييس مختلفة، تقدم BiFPN أوزانًا قابلة للتعلم لميزات الإدخال المختلفة وتسمح بتدفق المعلومات من أعلى إلى أسفل ومن أسفل إلى أعلى بشكل متكرر. هذا يحسن دمج الميزات ولكنه يضيف تعقيدًا حسابيًا.
- التحجيم المركب: يقترح EfficientDet معاملًا مركبًا يقوم بتوسيع نطاق الشبكة الأساسية و BiFPN وشبكة الفئة/المربع ودقة الإدخال بشكل مشترك. يضمن هذا نمو جميع أجزاء الشبكة في توازن، بدلاً من توسيع نطاق بُعد واحد فقط (مثل العمق أو العرض) بشكل تعسفي.
نقاط القوة والضعف
تكمن القوة الأساسية لـ EfficientDet في كفاءتها النظرية. إنها تحقق دقة متطورة مع عدد أقل بكثير من المعلمات مقارنة بأجهزة الكشف السابقة مثل YOLOv3 أو RetinaNet. ومع ذلك، فإن استخدامها المكثف للالتواءات المنفصلة بعمق وأنماط الوصول إلى الذاكرة المعقدة لـ BiFPN يمكن أن يؤدي إلى انخفاض الاستخدام على وحدات معالجة الرسومات الحديثة، مما يؤدي إلى زمن وصول أعلى على الرغم من انخفاض FLOPs.
اعتبارات النشر
بينما يتمتع EfficientDet بعمليات الفاصلة العائمة المنخفضة (FLOPs)، فإن "عمليات الفاصلة العائمة المنخفضة" لا تترجم دائمًا إلى "استدلال سريع". على أجهزة مثل وحدات معالجة الرسوميات GPUs أو وحدات المعالجة Tensor TPUs، غالبًا ما تكون سعة نقل الذاكرة والنفقات العامة لبدء تشغيل النواة أكثر أهمية. يمكن أن يكون هيكل الرسم البياني المعقد لـ EfficientDet أحيانًا بمثابة عنق الزجاجة في سيناريوهات الاستدلال في الوقت الفعلي.
DAMO-YOLO: ابتكار مُوجَّه نحو السرعة
تم تصميم DAMO-YOLO بهدف محدد: سد الفجوة بين الأداء العالي والكمون المنخفض على الأجهزة الصناعية. وهي تشتمل على تقنيات بحث معمارية عصبية (NAS) المتطورة للعثور على الهيكل الأمثل لمهام الكشف.
تفاصيل DAMO-YOLO:
- المؤلفون: شيانزه شو، يي تشي جيانغ، وي هوا تشن، ييلون هوانغ، يوان تشانغ، وشيو يو صن
- المؤسسة:مجموعة علي بابا
- التاريخ: 2022-11-23
- Arxiv:https://arxiv.org/abs/2211.15444v2
- GitHub:https://github.com/tinyvision/DAMO-YOLO
أبرز الملامح المعمارية
تقدم DAMO-YOLO العديد من مكونات "التكنولوجيا الجديدة" لعائلة YOLO:
- العمود الفقري MAE-NAS: يستخدم البحث في بنية الشبكة العصبية (NAS) المدفوع بالحد الأقصى للإنتروبيا لاكتشاف أعمدة فقرية فعالة تتعامل مع دقة الإدخال المتغيرة بشكل فعال.
- RepGFPN: هذا تحسين على Generalized FPN القياسي، ويتضمن reparameterization لتبسيط كتلة fusion، مما يزيد من استخدام الأجهزة.
- ZeroHead & AlignedOTA: يقلل تصميم "ZeroHead" بشكل كبير من تعقيد رأس الكشف، بينما يوفر AlignedOTA (تعيين النقل الأمثل) إستراتيجية قوية لتعيين التسميات أثناء التدريب لحل عدم التوافق بين classify والانحدار.
نقاط القوة والضعف
تتفوق DAMO-YOLO في السرعة الخام. من خلال إعطاء الأولوية للهياكل الصديقة لتسريع الأجهزة (مثل TensorRT)، فإنها تحقق إنتاجية ملحوظة. ومع ذلك، فإن اعتمادها على البنى المعقدة التي تم إنشاؤها بواسطة NAS يمكن أن يجعل تعديلها أو ضبطها بدقة لأغراض بحثية مخصصة أكثر صعوبة مقارنة بالبنى الأبسط المصممة يدويًا. بالإضافة إلى ذلك، فإنها تفتقر إلى دعم المجتمع الواسع وسهولة الاستخدام متعدد المنصات الموجودة في إصدارات YOLO الأكثر شيوعًا.
Ultralytics YOLO11: البديل الشامل
بينما يوفر EfficientDet كفاءة في المعلمات و DAMO-YOLO يوفر سرعة GPU، فإن Ultralytics YOLO11 يوفر توازنًا فائقًا بين الاثنين، ومغلفًا بنظام بيئي سهل الاستخدام للمطورين. بالنسبة لمعظم التطبيقات العملية - بدءًا من edge AI وحتى عمليات النشر السحابية - يمثل YOLO11 الخيار الأمثل.
لماذا تختار نماذج Ultralytics؟
- تنوع لا يضاهى: على عكس EfficientDet و DAMO-YOLO، اللذين هما في الأساس كاشفات للأجسام، يدعم Ultralytics YOLO11 أصلاً مجموعة واسعة من مهام رؤية الكمبيوتر بما في ذلك تقسيم المثيلات instance segmentation، و تقدير الوضع pose estimation، و صناديق الإحاطة الموجهة (OBB)، و تصنيف الصور image classification. يتيح لك هذا استخدام إطار عمل واحد لمتطلبات المشاريع المتنوعة.
- موازنة الأداء: يدفع YOLO11 حدود الدقة والكمون. غالبًا ما يضاهي أو يتجاوز دقة النماذج الأثقل مع الحفاظ على سرعات استدلال تنافسية مع النماذج المتخصصة في الوقت الفعلي.
- سهولة الاستخدام والنظام البيئي: تم تصميم Ultralytics API من أجل البساطة. بفضل الوثائق الشاملة ودعم المجتمع، يمكن للمطورين الانتقال من التثبيت إلى التدريب في دقائق. يشتمل النظام البيئي على عمليات تكامل سلسة لـ ترميز البيانات، وتتبع التجارب، والتصدير بنقرة واحدة إلى تنسيقات مثل ONNX و TensorRT و CoreML و TFLite.
- كفاءة التدريب: تم تحسين نماذج Ultralytics لتحقيق تقارب سريع. إنها تستخدم استراتيجيات زيادة البيانات المتقدمة ومحملات البيانات الفعالة، مما يقلل الوقت والتكلفة المرتبطين بتدريب النماذج عالية الأداء.
- كفاءة الذاكرة: بالمقارنة مع النماذج القائمة على المحولات أو البنى القديمة، يتطلب YOLO11 ذاكرة CUDA أقل بكثير للتدريب، مما يجعله متاحًا على وحدات معالجة الرسومات من الدرجة الاستهلاكية.
مثال على التعليمات البرمجية: البدء في استخدام YOLO11
يعد تطبيق أحدث التقنيات في الكشف باستخدام Ultralytics أمرًا مباشرًا. يوضح مقتطف الشفرة التالي كيفية تحميل نموذج YOLO11 مُدرَّب مسبقًا وتشغيل الاستدلال على صورة:
from ultralytics import YOLO
# Load a pre-trained YOLO11n model
model = YOLO("yolo11n.pt")
# Run inference on a local image or URL
results = model.predict("https://ultralytics.com/images/bus.jpg")
# Display the results
results[0].show()
# Export the model to ONNX format for deployment
path = model.export(format="onnx")
تكامل سلس
تتكامل نماذج Ultralytics بسهولة مع أدوات MLOps الشائعة. سواء كنت تستخدم MLflow لتسجيل البيانات أو Ray Tune لتحسين المعلمات الفائقة، فإن الوظيفة مدمجة مباشرة في المكتبة.
الخلاصة
في المقارنة بين EfficientDet و DAMO-YOLO، يعتمد الاختيار إلى حد كبير على قيود الأجهزة المحددة. يظل EfficientDet مرشحًا قويًا للكفاءة النظرية والسيناريوهات التي يكون فيها عدد المعلمات هو عنق الزجاجة الأساسي. DAMO-YOLO هو الفائز الواضح للتطبيقات عالية الإنتاجية التي تعمل على وحدات معالجة الرسومات الحديثة حيث يكون زمن الانتقال أمرًا بالغ الأهمية.
ومع ذلك، للحصول على حل يجمع بين أفضل ما في العالمين - الأداء العالي وسهولة الاستخدام والقدرة متعددة المهام - يبرز Ultralytics YOLO11 كمعيار صناعي. يضمن نظامه البيئي القوي والتحسينات المستمرة حصول المطورين على الأدوات الأكثر موثوقية لبناء حلول رؤية حاسوبية قابلة للتطوير.
استكشف مقارنات أخرى
لفهم مشهد نماذج الكشف عن الكائنات بشكل أكبر، استكشف هذه المقارنات الإضافية:
- YOLO11 ضد EfficientDet
- YOLOv8 ضد DAMO-YOLO
- RT-DETR مقابل DAMO-YOLO
- YOLO11 ضد RT-DETR
- YOLOX ضد EfficientDet