YOLOv8 مقابل EfficientDet: نظرة متعمقة في بنية الكشف عن الكائنات
في المشهد سريع التطور في مجال الرؤية الحاسوبية، يعد اختيار النموذج الصحيح لاكتشاف الأجسام أمرًا بالغ الأهمية لبناء تطبيقات ذكاء اصطناعي ناجحة. هناك نوعان من البنى البارزة التي حددت أحدث ما توصلت إليه التكنولوجيا في عصر كل منهما هما YOLOv8 من Ultralytics وEfficientDet من Google Research. تستكشف هذه المقارنة الفروق الفنية الدقيقة ومقاييس الأداء وحالات الاستخدام المثالية لكلا النموذجين، مما يساعد المطورين والباحثين على اتخاذ قرارات مستنيرة لمشاريعهم.
بينما قدم EfficientDet مفاهيم رائدة في توسيع نطاق النموذج وكفاءته عند إصداره, Ultralytics YOLOv8 يمثل تطورًا أكثر حداثة، مع إعطاء الأولوية لسرعة الاستدلال في الوقت الحقيقي، وسهولة الاستخدام، وقدرات النشر العملية.
مقارنة أداء مباشرة: السرعة والدقة والكفاءة
تسلط المقارنة بين YOLOv8 و EfficientDet الضوء على تحول أساسي في فلسفة التصميم. يركز EfficientDet بشكل كبير على تقليل عدد عمليات النقطة العائمة (FLOP) وعدد المعلمات إلى الحد الأدنى، مما يجعله نظريًا عالي الكفاءة. في المقابل، تم تصميم YOLOv8 لزيادة الإنتاجية إلى أقصى حد على الأجهزة الحديثة، والاستفادة من توازي GPU لتقديم سرعات استدلال فائقة دون المساس بالدقة.
| النموذج | الحجم (بالبكسل) | mAPفال 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 |
النقاط الرئيسية المستخلصة من المعايير المرجعية
- هيمنة زمن انتقالGPU : نماذج YOLOv8 أسرع بكثير على أجهزة GPU . على سبيل المثال YOLOv8x يحقق mAP أعلى (53.9) من EfficientDet-d7 (53.7) بينما يعمل أسرع بنحو 9 أضعاف على GPU T4 (14.37 مللي ثانية مقابل 128.07 مللي ثانية). وهذا يجعل YOLOv8 الخيار المفضل لتطبيقات الاستدلال في الوقت الحقيقي.
- الدقة مقابل المعلمات: في حين أن EfficientDet مشهور بكفاءة معلماته، يوفر YOLOv8 دقة تنافسية مع نماذج أسهل في التحسين. يتفوق YOLOv8m على EfficientDet-d4 في الدقة (50.2 مقابل 49.7 mAP) مع سرعات استدلالية أعلى بكثير، على الرغم من الاختلافات في FLOPs.
- الكفاءة المعمارية: لا يُترجم العدد الأقل من FLOP في EfficientDet إلى زمن انتقال أقل، خاصةً على وحدات معالجة الرسومات حيث تكون تكاليف الوصول إلى الذاكرة والتوازي أكثر أهمية من عدد العمليات الأولية. صُممت هندسة YOLOv8 خصيصًا لتحقيق أقصى استفادة من الأجهزة.
تحسين الأجهزة
قم دائمًا بقياس النماذج المعيارية على الأجهزة المستهدفة. تُعد FLOPs النظرية وكيلًا مفيدًا للتعقيد ولكنها غالبًا ما تفشل في التنبؤ بزمن الاستجابة الفعلي على وحدات معالجة الرسومات أو وحدات المعالجة العصبية حيث يلعب عرض النطاق الترددي للذاكرة وقدرات التوازي دورًا أكبر. استخدم وضع معيارYOLO لاختبار الأداء على الإعداد الخاص بك.
نظرة عامة على Ultralytics YOLOv8
YOLOv8 هو أحدث تكرار رئيسي في سلسلة YOLO (أنت تنظر مرة واحدة فقط) التي أصدرتها شركة Ultralytics وهو مصمم ليكون إطار عمل موحد لاكتشاف الأجسام وتجزئة النماذج وتصنيف الصور.
- المؤلفون: Glenn Jocher و Ayush Chaurasia و Jing Qiu
- المنظمةUltralytics
- التاريخ: 10 يناير 2023
- جيثب:ultralytics
YOLOv8 تحسينات معمارية رئيسية، بما في ذلك رأس كشف خالٍ من المرساة، مما يبسّط عملية التدريب ويحسّن التعميم عبر أشكال الأجسام المختلفة. كما أنه يستخدم أيضًا شبكة أساسية جديدة وشبكة تجميع مسارات جديدة (PAN-FPN) مصممة لتحقيق تكامل أكثر ثراءً للميزات.
نقاط القوة في YOLOv8
- أحدث أداء: يوفر توازناً استثنائياً بين السرعة والدقة، ويضع معايير قياسية على مجموعة بياناتCOCO .
- نظام بيئي ملائم للمطورين: في
ultralyticsتقدم حزمة python واجهة برمجة تطبيقات مبسطة توحد التدريب والتحقق من الصحة والنشر. - تعدد الاستخدامات: يدعم مهام متعددة (الكشف، والتقسيم، والوضعية، و OBB، والتصنيف) ضمن ريبو واحد.
- كفاءة التدريب: من خلال الاستفادة من تقنيات مثل زيادة الفسيفساء، تتقارب نماذج YOLOv8 بشكل أسرع وغالبًا ما تتطلب بيانات تدريب أقل للوصول إلى دقة عالية.
نظرة عامة على Google EfficientDet
EfficientDet، الذي طوّره فريق Google Brain، هو مجموعة من نماذج اكتشاف الأجسام التي أدخلت مفهوم القياس المركب لاكتشاف الأجسام. فهو يقيس دقة الشبكة وعمقها وعرضها في وقت واحد لتحقيق الأداء الأمثل.
- المؤلفون: مينغشينغ تان، رومينغ بانغ، وكوك ف. لي
- المنظمة:أبحاثGoogle
- التاريخ: 20 نوفمبر 2019
- ArXiv:EfficientDet: كشف الكائنات القابل للتطوير والفعال
EfficientDet مبني على العمود الفقري EfficientNet ويقدم شبكة الهرم ثنائية الاتجاه ( BiFPPN )، والتي تسمح بدمج الميزات متعددة النطاقات بسهولة وسرعة.
تعرف على المزيد حول EfficientDet
نقاط القوة في EfficientDet
- كفاءة المعلمة: تحقق دقة عالية مع عدد قليل نسبيًا من المعلمات وعمليات التحويل إلى فوب.
- قابلية التوسع: في
d0إلىd7توفر طريقة القياس طريقة منهجية لمقايضة الموارد بالدقة. - BiFPPN: تدمج الشبكة الهرمية المبتكرة للميزات بفعالية الميزات ذات الدقة المختلفة.
مقارنة معمارية
تحدد الاختلافات المعمارية بين YOLOv8 و EfficientDet خصائص أدائهما وملاءمتهما للمهام المختلفة.
العمود الفقري ودمج الميزات
- YOLOv8 عمودًا فقريًا معدلًا لشبكة CSPDarknet مع وحدة C2f، والتي تحل محل وحدة C3 من YOLOv5. يعمل هذا التصميم على تحسين تدفق التدرج، كما أنه مُحسَّن للغاية لتوازي GPU .
- يستخدم EfficientDet العمود الفقري EfficientNet مع BiFPPN. يستخدم BiFPPPN أوزانًا قابلة للتعلم لدمج ميزات من مستويات مختلفة، وهو أمر فعال نظريًا ولكنه يتضمن أنماط وصول معقدة وغير منتظمة للذاكرة يمكن أن تبطئ الاستدلال على وحدات معالجة الرسومات.
رأس الكشف
- YOLOv8 يستخدم بنية رأس منفصلة، حيث يفصل بين مهام الكائنات والتصنيف والانحدار. والأهم من ذلك أنه خالٍ من الارتكاز، ويتنبأ بمراكز الكائنات مباشرةً. وهذا يلغي الحاجة إلى ضبط صندوق الارتكاز يدويًا ويقلل من عدد المعلمات الفائقة.
- يستخدم EfficientDet نهجًا قائمًا على المرساة. على الرغم من فعالية الأساليب المستندة إلى المرتكزات، إلا أنها غالبًا ما تتطلب معايرة دقيقة لأحجام المرتكزات ونسب الأبعاد لمجموعات بيانات محددة، مما يزيد من تعقيد عملية التدريب.
سهولة الاستخدام والنظام البيئي
أحد أهم ما يميزها هو النظام البيئي المحيط بالنماذج. وقد ركزت Ultralytics بشدة على إضفاء الطابع الديمقراطي على الذكاء الاصطناعي، مما يضمن أن يكون YOLOv8 في متناول المبتدئين والخبراء على حد سواء.
تجربة Ultralytics
تسمح واجهة برمجة تطبيقاتUltralytics Python للمستخدمين بتحميل النماذج وتدريبها ونشرها ببضعة أسطر من التعليمات البرمجية. يتضمن النظام البيئي تكاملًا سلسًا مع أدوات مثل Weights & Biases لتتبع التجارب و Roboflow لإدارة مجموعة البيانات.
from ultralytics import YOLO
# Load a YOLOv8 model
model = YOLO("yolov8n.pt")
# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image
results = model("path/to/image.jpg")
في المقابل، توجد EfficientDet عادةً في المستودعات الموجهة نحو البحث (مثل تطبيق TensorFlow الأصلي). وعلى الرغم من قوتها، إلا أن هذه التطبيقات غالبًا ما تتطلب المزيد من التعليمات البرمجية النمطية وملفات التكوين المعقدة ومعرفة أعمق بالإطار الأساسيTensorFlow) للتدريب على مجموعات البيانات المخصصة.
قدرات التصدير
تدعم نماذج Ultralytics التصدير بنقرة واحدة إلى العديد من التنسيقات بما في ذلك ONNX, TensorRTو CoreML و TFLite. هذه المرونة ضرورية لنشر النماذج في بيئات متنوعة، من الخوادم السحابية إلى أجهزة Raspberry Pi الطرفية.
حالات الاستخدام المثالية
متى تختار YOLOv8
إن YOLOv8 هو الخيار الموصى به للغالبية العظمى من تطبيقات الرؤية الحاسوبية اليوم نظرًا لتوازنه بين السرعة والدقة.
- تطبيقات الوقت الحقيقي: القيادة الآلية، والمراقبة بالفيديو، والروبوتات التي يكون فيها زمن الاستجابة حرجاً.
- نشر الحافة: التشغيل على NVIDIA Jetson أو الأجهزة المحمولة أو وحدات الحوسبة الطرفية حيث تكون الكفاءة والسرعة أمرًا بالغ الأهمية.
- النماذج الأولية السريعة: عندما تحتاج إلى الانتقال من مجموعة البيانات إلى النموذج الذي تم نشره بسرعة باستخدام إطار عمل موثوق وموثق جيدًا.
- متطلبات متعددة المهام: إذا كان مشروعك يتضمن التجزئة أو تقدير الوضعية، فإن YOLOv8 يعالجها بشكل أصلي.
متى تختار EfficientDet
يظل EfficientDet مناسبًا في السيناريوهات المتخصصة، لا سيما في بيئات البحث الأكاديمي أو بيئات CPU المقيدة للغاية.
- البحث النظري: دراسة البنى الشبكية الفعالة وقوانين التوسع.
- وحدات معالجة مركزية محددة منخفضة الطاقة: في بعض الحالات، قد يُترجم انخفاض عدد وحدات المعالجة المركزية ذات الطاقة المنخفضة إلى عمر بطارية أفضل على وحدات المعالجة المركزية ذات الموارد المحدودة للغاية، على الرغم من أنه يُنصح بإجراء قياس مرجعي.
الخلاصة
بينما كان EfficientDet إنجازًا بارزًا في تصميم الشبكات العصبية الفعالة, YOLOv8 والأحدث YOLO11 حزمة متفوقة لتطوير الذكاء الاصطناعي الحديث. حيث توفر بنية YOLOv8 الخالية من المراسي والتصميم GPU ونظامUltralytics البيئي القوي ميزة كبيرة من حيث سرعة التطوير، وزمن الاستنتاج، ومرونة النشر.
بالنسبة للمطورين الذين يتطلعون إلى بناء أحدث حلول الرؤية الحاسوبية السريعة والدقيقة في آنٍ واحد، فإن نماذج Ultralytics YOLO هي الخيار النهائي.
استكشف نماذج أخرى
إذا كنت مهتماً بمقارنة هذه البنى مع النماذج الأخرى، راجع هذه الصفحات:
- YOLOv8 مقابل YOLOv7
- EfficientDet مقابل YOLOv7
- YOLOv8 ضد YOLOv5
- RT-DETR مقابل YOLOv8
- YOLO11 ضد EfficientDet