YOLOv8 ضد EfficientDet: مقارنة فنية
يتضمن اختيار نموذج الكشف عن الأجسام الصحيح مفاضلة بين الدقة والسرعة والتكلفة الحسابية. تقدم هذه الصفحة مقارنة فنية مفصلة بين بنيتين مؤثرتين: Ultralytics YOLOv8، وهو نموذج حديث معروف بسرعته وتعدد استخداماته، و EfficientDet، وهي عائلة من النماذج من Google مصممة لتحقيق كفاءة استثنائية في المعلمات. في حين أن كلاهما قويان، إلا أنهما ينبعان من فلسفات تصميم مختلفة، مما يجعلهما مناسبين لتطبيقات مختلفة.
Ultralytics YOLOv8: تعدد الاستخدامات والأداء
المؤلفون: جلين جوتشر، أيوش شوراسيا، و جينغ تشيو
المنظمة: Ultralytics
التاريخ: 2023-01-10
GitHub: https://github.com/ultralytics/ultralytics
المستندات: https://docs.ultralytics.com/models/yolov8/
إن Ultralytics YOLOv8 هو كاشف أجسام متطور من مرحلة واحدة يعتمد على نجاحات إصدارات YOLO السابقة. لقد أثبت نفسه كإطار عمل متعدد الاستخدامات وقوي للغاية من خلال تقديم تحسينات معمارية رئيسية. وتشمل هذه التحسينات هيكلًا خلفيًا جديدًا لـ CSPDarknet، ورقبة C2f لتحسين دمج الميزات، ورأسًا غير مرتبط وخاليًا من المرساة. لا يعزز هذا التصميم الأداء فحسب، بل يوفر أيضًا مرونة عبر مجموعة واسعة من مهام رؤية الكمبيوتر.
نقاط القوة في YOLOv8
- موازنة الأداء: يحقق YOLOv8 توازنًا ممتازًا بين سرعة الاستدلال والدقة، مما يجعله مناسبًا لعمليات النشر المتنوعة في العالم الحقيقي، بدءًا من الأجهزة الطرفية إلى خوادم الحوسبة السحابية القوية.
- تعدد الاستخدامات: إحدى الميزات الرئيسية في YOLOv8 هي دعمها الأصلي لمهام رؤية متعددة ضمن إطار عمل واحد وموحد. ويشمل ذلك اكتشاف الأجسام، و تجزئة المثيلات، و تصنيف الصور، و تقدير الوضعية، والصناديق المحيطة الموجهة (OBB).
- سهولة الاستخدام: النموذج هو جزء من نظام بيئي تتم صيانته جيدًا ويعطي الأولوية لتجربة المستخدم. فهو يقدم واجهة برمجة تطبيقات Python مبسطة و CLI بسيطة، مدعومة بتوثيق شامل والعديد من الدروس التعليمية.
- كفاءة التدريب: يتميز YOLOv8 بعمليات تدريب فعالة ويوفر أوزانًا مُدرَّبة مسبقًا متاحة بسهولة، مما يبسط تطوير النماذج المخصصة. يتطلب عمومًا ذاكرة CUDA أقل للتدريب مقارنة بالبنى الأكثر تعقيدًا.
- نظام بيئي مُدار بشكل جيد: يستفيد المستخدمون من التطوير المستمر ومجتمع قوي مفتوح المصدر وتحديثات متكررة وتكامل سلس مع أدوات مثل Ultralytics HUB لسير عمل MLOps شامل.
نقاط ضعف YOLOv8
- تتطلب النماذج الأكبر مثل YOLOv8x موارد حسابية كبيرة للتدريب والنشر.
- قد يتطلب المزيد من التحسين مثل التكميم للنشر على الأجهزة ذات الموارد المحدودة للغاية.
حالات الاستخدام المثالية لـ YOLOv8
يعتبر YOLOv8 مثاليًا للتطبيقات التي تتطلب دقة عالية وأداءً في الوقت الفعلي، مثل الروبوتات المتقدمة، وأنظمة الأمان الذكية، والبنية التحتية لـ المدن الذكية. كما أن تعدد استخداماته يجعله الخيار الأفضل للمشاريع التي قد تتوسع لتشمل مهام رؤية أخرى تتجاوز الكشف البسيط عن الكائنات.
EfficientDet: قابلية التوسع والكفاءة
المؤلفون: مينغشينغ تان، رومينغ بانغ، و كيوك ف. لي
المنظمة: Google
التاريخ: 2019-11-20
Arxiv: https://arxiv.org/abs/1911.09070
GitHub: https://github.com/google/automl/tree/master/efficientdet
المستندات: https://github.com/google/automl/tree/master/efficientdet#readme
EfficientDet عبارة عن مجموعة من نماذج الكشف عن الكائنات التي قدمها فريق Google Brain. ابتكاره الأساسي هو التركيز على الكفاءة وقابلية التوسع. تستخدم البنية عمودًا فقريًا لـ EfficientNet، وشبكة Bi-directional Feature Pyramid Network (BiFPN) جديدة لدمج الميزات متعددة المقاييس بشكل فعال، وطريقة قياس مركبة. تعمل هذه الطريقة على توسيع نطاق العمق والعرض والدقة للعمود الفقري وشبكة الميزات ورأس التنبؤ بشكل موحد، مما يسمح بتكييف النموذج مع قيود الموارد المختلفة.
نقاط القوة في EfficientDet
- كفاءة عالية: تم تصميم EfficientDet لتقليل عدد المعلمات و عمليات الفاصلة العائمة في الثانية (FLOPs) مع زيادة الدقة إلى أقصى حد، مما يجعله أحد أكثر الهياكل كفاءة من الناحية الحسابية في عصره.
- قابلية التوسع: يوفر أسلوب التحجيم المركب مجموعة من النماذج (D0 إلى D7) التي يمكن تحديدها بناءً على ميزانية الحوسبة المتاحة، بدءًا من الأجهزة المحمولة ووصولاً إلى الخوادم السحابية واسعة النطاق.
- الدقة: تحقق نماذج EfficientDet الأكبر دقة تنافسية في المعايير القياسية مثل مجموعة بيانات COCO.
نقاط ضعف EfficientDet
- سرعة الاستدلال: على الرغم من كفاءة EfficientDet في FLOPs، إلا أنها لا تترجم دائمًا إلى أسرع سرعات استدلال واقعية، خاصة على وحدات معالجة الرسوميات GPUs، عند مقارنتها ببنى مثل YOLOv8 المحسّنة للغاية للمعالجة المتوازية.
- تعددية المهام محدودة: EfficientDet هو في الأساس نموذج لاكتشاف الكائنات ويفتقر إلى الدعم المدمج للمهام الأخرى مثل التجزئة أو تقدير الوضع الموجود في إطار عمل Ultralytics.
- النظام البيئي والصيانة: لا يتم صيانة المستودع الرسمي بنشاط بالميزات والتكاملات الجديدة مثل نظام Ultralytics البيئي، مما قد يجعل تبنيه ونشره أكثر صعوبة على المطورين.
حالات الاستخدام المثالية لـ EfficientDet
تتفوق EfficientDet في السيناريوهات التي يكون فيها عدد المعلمات والتكلفة الحسابية النظرية (FLOPs) هي القيود الأكثر أهمية. إنه خيار قوي للتطبيقات على بعض أجهزة edge AI حيث يكون حجم النموذج محدودًا بشكل صارم أو في البيئات السحابية حيث يكون تقليل التكلفة الحسابية أولوية.
تعرف على المزيد حول EfficientDet
مقارنة أداء مباشرة: السرعة والدقة والكفاءة
عند مقارنة YOLOv8 و EfficientDet، من الواضح أنهما مُحسَّنان لتحقيق أهداف مختلفة. يعطي YOLOv8 الأولوية لتحقيق توازن فائق بين سرعة الاستدلال والدقة في العالم الحقيقي، بينما يركز EfficientDet على تقليل معلمات النموذج و FLOPs.
النموذج | الحجم (بالبكسل) |
mAPval 50-95 |
السرعة وحدة المعالجة المركزية CPU ONNX (بالمللي ثانية) |
السرعة T4 TensorRT10 (بالمللي ثانية) |
المعلمات (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 |
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 |
من الجدول، يمكننا ملاحظة:
- الدقة مقابل المعلمات: تحقق نماذج YOLOv8 باستمرار درجات mAP أعلى من نماذج EfficientDet بعدد مماثل أو حتى أكبر من المعلمات. على سبيل المثال، يحقق YOLOv8s (11.2 مليون معلمة) 44.9 mAP، متفوقًا على EfficientDet-d2 (8.1 مليون معلمة) عند 43.0 mAP.
- سرعة الاستدلال: يُظهر YOLOv8 ميزة كبيرة في سرعة الاستدلال، خاصة على وحدات معالجة الرسومات مع تحسين TensorRT. نموذج YOLOv8x أسرع بأكثر من 8 مرات من نموذج EfficientDet-d7 المماثل على وحدة معالجة الرسومات T4، على الرغم من وجود المزيد من المعلمات. يُظهر YOLOv8 أيضًا سرعات استدلال أسرع بكثير لوحدة المعالجة المركزية CPU.
- موازنة الكفاءة: في حين أن نماذج EfficientDet لديها عمليات حسابية أقل، فإن هذا لا يترجم بشكل مباشر إلى استدلال أسرع. إن بنية YOLOv8 مناسبة بشكل أفضل لتسريع الأجهزة الحديثة، مما يؤدي إلى زمن انتقال أقل في السيناريوهات العملية.
لماذا تختار نماذج Ultralytics YOLO؟
في حين أن EfficientDet كان نموذجًا رائدًا في عصره، فإن نماذج Ultralytics YOLO الأحدث مثل YOLOv8 وأحدث YOLO11 تقدم مزايا كبيرة للمطورين والباحثين المعاصرين:
- أداء فائق: توفر نماذج Ultralytics توازنًا أفضل بين السرعة والدقة، وهو أمر بالغ الأهمية للاستدلال في الوقت الفعلي.
- هندسة معمارية حديثة: إنها تدمج أحدث التطورات في التعلم العميق، مثل الكشف الخالي من المرساة وشبكات دمج الميزات المتقدمة.
- النظام البيئي الشامل: يوفر نظام Ultralytics البيئي تجربة سلسة من التدريب إلى النشر، مع دعم شامل ووثائق وعمليات تكامل.
- قدرات المهام المتعددة: القدرة على التعامل مع الكشف والتجزئة والمزيد داخل إطار عمل واحد يوفر وقت التطوير ويقلل التعقيد.
الخلاصة
تظل EfficientDet بنية جديرة بالملاحظة، لا سيما لنهجها المبتكر في قياس النموذج وكفاءته. إنه خيار قوي للتطبيقات التي يكون فيها تقليل عدد المعلمات و FLOPs هو الأولوية القصوى المطلقة.
ومع ذلك، بالنسبة للغالبية العظمى من تطبيقات رؤية الكمبيوتر الحديثة، يقدم YOLOv8 خيارًا أكثر إقناعًا. فهو يوفر سرعة فائقة ودقة أعلى وتعدد استخدامات لا مثيل له. جنبًا إلى جنب مع نظام Ultralytics البيئي سهل الاستخدام والذي تتم صيانته بنشاط، يمكّن YOLOv8 المطورين من بناء ونشر حلول الذكاء الاصطناعي عالية الأداء بشكل أسرع وأكثر فعالية. بالنسبة لأولئك الذين يبحثون عن الحل الأكثر تقدمًا وسهولة في الاستخدام، فإن نماذج Ultralytics هي الخيار الموصى به.
مقارنات النماذج الأخرى
للمزيد من الاستكشاف، ضع في اعتبارك هذه المقارنات التي تتضمن YOLOv8 و EfficientDet ونماذج أخرى ذات صلة:
- YOLOv8 ضد YOLOv7
- EfficientDet ضد YOLOv7
- YOLOv8 ضد YOLOv5
- EfficientDet ضد YOLOv5
- RT-DETR مقابل YOLOv8
- RT-DETR مقابل EfficientDet
- استكشف أحدث النماذج مثل YOLOv10 و YOLO11.