YOLO11 مقابل EfficientDet: مقارنة تقنية شاملة
في مجال الرؤية الحاسوبية سريع التطور، يعد اختيار النموذج الصحيح لاكتشاف الأجسام أمرًا بالغ الأهمية لبناء تطبيقات ذكاء اصطناعي ناجحة. غالبًا ما يظهر اسمان بارزان في هذه التقييمات هما Ultralytics YOLO11 و EfficientDet منGoogle. بينما تهدف كلتا البنيتين إلى حل مشكلة اكتشاف الأجسام داخل الصور، إلا أنهما تتعاملان مع التحدي بفلسفات تصميم وابتكارات معمارية وأولويات أداء مختلفة اختلافًا جوهريًا.
يقدم هذا الدليل مقارنة تقنية متعمقة لمساعدة المطورين والباحثين على فهم الفروق الدقيقة بين هذين النموذجين. سوف نستكشف بنيتهما، ومقاييس أدائهما، ومنهجيات التدريب، وحالات الاستخدام المثالية، مع تسليط الضوء على سبب تفضيل التطورات الحديثة في كثير من الأحيان لتعدد استخدامات وسرعة عائلة YOLO .
Ultralytics YOLO11: أحدث ما توصلت إليه التكنولوجيا في مجال الرؤية في الوقت الحقيقي
سيصدر في أواخر عام 2024, YOLO11 يمثل أحدث تكرار لبنية "أنت تنظر مرة واحدة فقط" الشهيرة من Ultralytics. وقد تم تصميمها لتقديم أفضل مفاضلة بين زمن الاستنتاج والدقة، مما يجعلها الخيار المفضل لتطبيقات الوقت الحقيقي التي تتراوح من الأجهزة المتطورة إلى الخوادم السحابية.
تفاصيل فنية:
- المؤلفون: Glenn Jocher و Jing Qiu
- المنظمةUltralytics
- التاريخ: 2024-09-27
- جيثب:ultralytics
- المستنداتمستنداتUltralytics YOLO11
البنية والميزات الرئيسية
يعتمد YOLO11 على تاريخ من التحسين. فهو يستخدم تصميمًا محسّنًا لكاشف خالٍ من الارتكاز، مما يبسّط عملية التدريب من خلال إلغاء الحاجة إلى حسابات صندوق الارتكاز اليدوية. تدمج البنية طبقات استخراج الميزات المتقدمة التي تقلل من إجمالي عدد المعلمات مع الحفاظ على مستوى عالٍ من mAP.
على عكس سابقاته أو منافسيه الذين يركزون فقط على الكشف، فإن YOLO11 هو إطار عمل متعدد المهام. يمكن تكييف بنية نموذج واحد من أجل:
ميزة Ultralytics
أحد أهم فوائد استخدام YOLO11 هو نظامUltralytics البيئي. فالنموذج مدعوم بواجهة برمجة تطبيقات Python API وواجهة برمجة تطبيقات Python و CLI قوية، وصيانة مجتمعية نشطة، وتكامل سلس مع أدوات MLOPS. وهذا يضمن أن يقضي المطورون وقتًا أقل في التعامل مع التعليمات البرمجية ووقتًا أطول في نشر الحلول.
نقاط القوة
- سرعة لا مثيل لها: مُحسَّن من أجل GPU الاستدلال، مما يحقق أداءً في الوقت الفعلي حتى على التدفقات عالية الدقة.
- تعدد الاستخدامات: يلغي الدعم الأصلي لمهام الرؤية الحاسوبية المتعددة الحاجة إلى تبديل أطر العمل للتجزئة أو تقدير الوضعية.
- سهولة الاستخدام: في
ultralyticsتسمح الحزمة بالتدريب والتحقق من الصحة والنشر في بضعة أسطر من التعليمات البرمجية. - كفاءة الذاكرة: مصممة للتدريب بشكل أسرع مع متطلبات ذاكرة CUDA أقل مقارنةً بالبدائل القائمة على المحولات أو البنى الأقدم.
EfficientDet من Google: تحسين الكفاءة
صُمم EfficientDet، الذي قدمه فريق Google Brain في أواخر عام 2019، لتحسين كفاءة نماذج اكتشاف الأجسام. وركزت بشكل كبير على تحسين عدد المعلمات والعمليات الحسابية النظرية (FLOPs) المطلوبة لتحقيق دقة عالية.
تفاصيل فنية:
- المؤلفون: مينغشينغ تان، رومينغ بانغ، كوك ف. لي
- المنظمة:Google
- التاريخ: 2019-11-20
- اركسيف:EfficientDet: كشف الكائنات القابل للتطوير والفعال
- جيثب:google
- المستندات:EfficientDet README
البنية والميزات الرئيسية
تم بناء EfficientDet على العمود الفقري EfficientNet ويقدم مفهومين رئيسيين:
- BiFPPN (شبكة هرم السمات ثنائية الاتجاه): طبقة دمج الميزات التي تسمح بتكامل الميزات متعدد المقاييس بسهولة، وتقييم ميزات الإدخال بشكل مختلف لمعرفة أهميتها.
- التحجيم المركب: طريقة لتوسيع نطاق دقة الشبكة وعمقها وعرضها بشكل موحد، مما يؤدي إلى إنشاء عائلة من النماذج من D0 (الأصغر) إلى D7 (الأكبر).
نقاط القوة والضعف
تتفوق EfficientDet في كفاءة البارامترات، وغالبًا ما تحقق دقة جيدة بمعلمات أقل من النماذج القديمة مثل YOLOv3. إنه قابل للتطوير بدرجة كبيرة، مما يسمح للمستخدمين باختيار حجم النموذج الذي يناسب ميزانية FLOPs النظرية الخاصة بهم.
ومع ذلك، فإن EfficientDet لديه قيود ملحوظة في سياقات النشر الحديثة:
- استدلال أبطأ في GPU : على الرغم من كفاءة عمليات التلافيف القابلة للفصل على مستوى العمق المستخدمة على نطاق واسع في EfficientDet، إلا أنها غالبًا ما تكون أقل كفاءة في وحدات معالجة الرسومات مقارنةً بالتلافيف الكثيفة المستخدمة في نماذج YOLO . وينتج عن ذلك زمن استنتاج أعلى.
- نطاق محدود: إنه كاشف أجسام في المقام الأول، ويفتقر إلى الدعم الأصلي والموحد للمهام المعقدة مثل OBB أو تقدير الوضعية الموجود في YOLO11.
- الأدوات المعقدة: المستودع الأصلي موجه نحو البحثTensorFlow)، ويفتقر إلى واجهة برمجة التطبيقات المصقولة وسهلة الاستخدام وأدوات النشر التي تميز نظام Ultralytics البيئي.
تعرف على المزيد حول EfficientDet
مقارنة الأداء
عند المقارنة بينYOLO11 و EfficientDet، يكمن الاختلاف الأكثر لفتًا للنظر في سرعة الاستدلال في العالم الحقيقي على أجهزة GPU . فبينما يقلل EfficientDet من عدد وحدات معالجة الرسومات FLOP، يقلل YOLO11 من زمن الاستنتاج، وهو المقياس الأكثر أهمية لتطبيقات الوقت الحقيقي.
يوضح الجدول أدناه هذه الفجوة. على سبيل المثال، يتفوق YOLO11n على EfficientDet-d0 من حيث الدقة (+4.9 mAP) والسرعة (2.6 مرة أسرع على GPU T4). وكلما قمنا بتوسيع النطاق، يصبح الفرق أكثر وضوحًا؛ حيث يوفر YOLO11x دقة أعلى من EfficientDet-d7 بينما يكون أسرع بأكثر من 11 ضعفًا.
| النموذج | الحجم (بالبكسل) | mAPفال 50-95 | السرعة وحدة المعالجة المركزية CPU ONNX (بالمللي ثانية) | السرعة T4 TensorRT10 (بالمللي ثانية) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.5 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.0 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 86.9 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 194.9 |
| 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 |
تحليل النتائج
- قدرات الوقت الحقيقي: يوفر YOLO11 إمكانات استدلال في الوقت الحقيقي في الوقت الحقيقي عبر جميع أحجام النماذج على GPU بينما تكافح EfficientDet للحفاظ على معدلات الإطارات في الوقت الحقيقي (30 إطارًا في الثانية أو حوالي 33 مللي ثانية) مع متغيراتها الأكبر (d4-d7).
- الدقة مقابل السرعة: في كل نقطة دقة قابلة للمقارنة (على سبيل المثال، 47.0 mAP)، يكون متغير YOLO11 (YOLO11s) أسرع بشكل كبير من مكافئ EfficientDet (EfficientDet-d3).
- كفاءة التدريب: تتقارب نماذج Ultralytics عادةً بشكل أسرع وتستخدم تسريع الأجهزة بشكل أكثر فعالية، مما يقلل من التكلفة والوقت اللازمين للتدريب على مجموعات البيانات المخصصة.
حالات الاستخدام المثالية
متى تختار Ultralytics YOLO11
YOLO11 هو الخيار المفضل للغالبية العظمى من مشاريع الرؤية الحاسوبية الحديثة، لا سيما تلك التي تتطلب توازنًا بين السرعة والدقة وسهولة التطوير.
- حافة الذكاء الاصطناعي والروبوتات: النشر على أجهزة مثل NVIDIA Jetson أو Raspberry Pi حيث يكون زمن الاستجابة المنخفض غير قابل للتفاوض لمهام مثل الملاحة أو تجنب الاصطدام.
- التطبيقات التجارية: تحليلات البيع بالتجزئة والتصنيع الآلي ومراقبة السلامة حيث تؤثر الموثوقية والسرعة بشكل مباشر على عائد الاستثمار.
- أنظمة متعددة المهام: المشاريع التي تتطلب أكثر من مجرد مربعات محدودة، مثل التحقق مما إذا كان العامل يرتدي معدات السلامة (الكشف) وما إذا كانت وضعيته صحيحة (تقدير الوضع).
- التطوير السريع: الفرق التي تحتاج إلى التكرار بسرعة باستخدام واجهة برمجة تطبيقات سهلة الاستخدام ووثائق شاملة.
متى تختار EfficientDet
تظل EfficientDet ذات صلة في سيناريوهات متخصصة محددة:
- المقارنة المعيارية الأكاديمية: الباحثون الذين يدرسون التأثيرات المحددة للتوسع المركب أو البنى البنائية ثنائية الفينيل متعدد الأغراض.
- قيود FLOPs الشديدة: بيئات CPU المقيدة للغاية حيث يكون عدد العمليات النظرية (FLOPs) هو العامل الوحيد المحدد، بدلاً من زمن الاستجابة أو عرض النطاق الترددي للذاكرة.
سهولة الاستخدام: تجربة كود Ultralytics البرمجي
إحدى السمات المميزة لـ YOLO11 هي تجربة المطورين السلسة. فبينما تتطلب النماذج القديمة غالبًا ملفات تهيئة معقدة وتعليمات برمجية معقدة، فإن Ultralytics يبسط سير العمل في بضعة أسطر من Python.
إليك مدى سهولة تحميل نموذج YOLO11 المدرب مسبقًا وتشغيل الاستدلال:
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")
# Run inference on an image
results = model("path/to/image.jpg")
# Display the results
results[0].show()
تمتد هذه البساطة إلى التدريب على البيانات المخصصة أيضًا:
# Train the model on a custom dataset (e.g., COCO8)
model.train(data="coco8.yaml", epochs=100, imgsz=640)
دعم النظام البيئي
توفر Ultralytics تكاملاً سلساً مع مجموعات البيانات والأدوات الشائعة. سواء كنت تستخدم Roboflow لإدارة البيانات أو TensorRT لتحسين النشر، فإن النظام البيئي مصمم لدعم خط أنابيبك بالكامل.
الخلاصة
بينما قدم EfficientDet مفاهيم مهمة في توسيع نطاق النموذج والكفاءة, Ultralytics YOLO11 هو الخيار الأفضل لاحتياجات الرؤية الحاسوبية العملية اليوم. فهو يقدم مزيجًا مقنعًا من:
- أداء فائق: سرعات استنتاج أسرع ودقة أعلى على الأجهزة الحديثة.
- براعة أكبر: إطار عمل موحد للكشف والتجزئة والوضعية وغير ذلك.
- سهولة استخدام أفضل: نظام بيئي جيد الصيانة مع وثائق ممتازة ودعم مجتمعي ممتاز.
بالنسبة للمطوّرين الذين يتطلعون إلى إنشاء تطبيقات ذكاء اصطناعي رؤيوي قوية وعالية الأداء وقابلة للتطوير، يوفر YOLO11 القوة والمرونة المطلوبة لتحقيق النجاح.
مقارنات النماذج الأخرى
استكشف كيفية مقارنة YOLO11 بالبنى الرائدة الأخرى:
- YOLO11 مقابل YOLOv10
- YOLO11 ضد YOLOv8
- YOLO11 ضد RT-DETR
- EfficientDet ضد YOLOv8
- EfficientDet مقابل YOLOv7