YOLOv9 مقابل EfficientDet: مقارنة تقنية شاملة
يعد اختيار النموذج الصحيح لاكتشاف الكائنات قرارًا محوريًا في تطوير الرؤية الحاسوبية، حيث يؤثر بشكل مباشر على سرعة ودقة وكفاءة موارد تطبيقك. يوفر هذا الدليل مقارنة تقنية متعمقة بين Ultralytics YOLOv9وEfficientDet، وتحليل ابتكاراتهما المعمارية ومقاييس الأداء وملاءمتها لسيناريوهات النشر الحديثة.
تحليل الأداء
كان تطور اكتشاف الأجسام سريعًا، حيث تفوقت البنى الأحدث على سابقاتها بشكل كبير. يعرض الجدول أدناه مقارنة مباشرةً بين المقاييس الرئيسية، مع تسليط الضوء على التطورات في YOLOv9 فيما يتعلق بسرعة الاستدلال وكفاءة المعلمات مقارنةً بعائلة EfficientDet الأقدم.
| النموذج | الحجم (بالبكسل) | mAPفال 50-95 | السرعة وحدة المعالجة المركزية CPU ONNX (بالمللي ثانية) | السرعة T4 TensorRT10 (بالمللي ثانية) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
| 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 |
الوجبات السريعة الرئيسية:
- هيمنة السرعة: تُظهِر نماذج YOLOv9 سرعات استدلال متفوقة بشكل كبير على أجهزة GPU . على سبيل المثال، فإن YOLOv9c (53.0% mAP) أسرع بأكثر من 12 مرة من EfficientDet-d6 الدقيق المماثل (52.6% mAP).
- كفاءة المعلمات: تتيح بنية YOLOv9 تحقيق دقة أعلى بمعلمات أقل. يحقق YOLOv9s نسبة 46.8% mAP المعلمات بـ 7.1 مليون معلمة فقط، بينما يتطلب EfficientDet متغير D3 الأكبر (12.0 مليون معلمة) للوصول إلى مستوى دقة مماثل بنسبة 47.5%.
- دقة فائقة: يضع الطراز الأكبر، YOLOv9e، معيارًا عاليًا بنسبة 55.6% من الدقة في mAP متجاوزًا بذلك أثقل طراز EfficientDet-d7 مع الحفاظ على جزء بسيط من زمن الاستجابة.
YOLOv9: عصر جديد من معلومات التدرج القابلة للبرمجة
يمثل YOLOv9 الذي تم تقديمه في أوائل عام 2024، قفزة كبيرة إلى الأمام في سلسلة YOLO . تم تطويره من قبل تشين ياو وانغ وهونغ يوان مارك لياو، وهو يعالج المشكلات الأساسية في التعلم العميق المتعلقة بفقدان المعلومات أثناء نقل الميزة.
تفاصيل فنية:
- المؤلفون: Chien-Yao Wang و Hong-Yuan Mark Liao
- المنظمــةمعهد علوم المعلومات، الأكاديمية الصينية للمعلومات، تايوان
- التاريخ: 2024-02-21
- Arxiv:YOLOv9: تعلم ما تريد تعلمه باستخدام معلومات التدرج القابلة للبرمجة
- جيثب:وونغكين ييو/يولوف 9
- المستنداتمستنداتUltralytics YOLOv9
الابتكارات المعمارية
يقدم YOLOv9 مفهومين أساسيين لمعالجة مشكلة "عنق زجاجة المعلومات":
- معلومات التدرج القابلة للبرمجة (PGI): إطار عمل إشرافي مساعد يولد تدرجات موثوقة لتحديث أوزان الشبكة، مما يضمن احتفاظ النموذج بالمعلومات المهمة في جميع الطبقات العميقة.
- شبكة تجميع الطبقات الفعالة المعممة (GELAN): بنية جديدة خفيفة الوزن تجمع بين نقاط القوة في شبكة تجميع الطبقات المعممة ذات الكفاءة العالية وشبكة تجميع الطبقات المعممة (ELAN). وهي تعطي الأولوية لتخطيط المسار المتدرج، مما يسمح بكفاءة أعلى للمعلمات وسرعة أكبر في الاستدلال دون التضحية بالدقة.
هل تعلم؟
صُممت بنية GELAN لتكون محايدة من حيث الأجهزة، مما يحسّن الاستدلال ليس فقط لوحدات معالجة الرسومات المتطورة ولكن أيضًا للأجهزة المتطورة حيث تكون الموارد الحاسوبية محدودة.
نقاط القوة وحالات الاستخدام
- توازن الأداء: تقدم YOLOv9 مفاضلة استثنائية بين السرعة والدقة، مما يجعلها مثالية لتطبيقات الاستدلال في الوقت الحقيقي مثل القيادة الذاتية وتحليلات الفيديو.
- نظامUltralytics البيئي: يوفر التكامل مع Ultralytics واجهة برمجة تطبيقاتPython API و CLI مبسطة، مما يسهل التدريب والتحقق من الصحة والنشر.
- كفاءة التدريب: بفضل بنيته الفعالة، يتطلب YOLOv9 عادةً ذاكرة أقل أثناء التدريب مقارنةً بالبدائل القائمة على المحولات، مما يسهل التدريب المخصص على وحدات معالجة الرسومات من فئة المستهلكين.
مثال على الكود: استخدام YOLOv9 مع Ultralytics
يمكنك بسهولة تشغيل الاستدلال أو تدريب YOLOv9 باستخدام حزمة Ultralytics .
from ultralytics import YOLO
# Load a pre-trained YOLOv9c model
model = YOLO("yolov9c.pt")
# Run inference on an image
results = model.predict("path/to/image.jpg")
# Train the model on a custom dataset (e.g., COCO8)
model.train(data="coco8.yaml", epochs=100, imgsz=640)
EfficientDet: بنية رائدة قابلة للتطوير
كان EfficientDet، الذي أصدرته Google Research في أواخر عام 2019، نموذجًا رائدًا قدم طريقة منهجية لتوسيع نطاق أجهزة الكشف عن الكائنات. وهو يركز على تحسين الكفاءة عبر مجموعة واسعة من قيود الموارد.
تفاصيل فنية:
- المؤلفون: مينغشينغ تان، رومينغ بانغ، كوك ف. لي
- المنظمة:أبحاثGoogle
- التاريخ: 2019-11-20
- اركسيف:EfficientDet: كشف الكائنات القابل للتطوير والفعال
- جيثب:google
الملامح المعمارية البارزة
تم بناء EfficientDet على العمود الفقري EfficientNet ويقدم العديد من الميزات الرئيسية:
- شبكة هرم السمات ثنائية الاتجاه (BiFPPN): على عكس الشبكات الهرمية للخصائص التقليدية، تتيح الشبكة الهرمية الثنائية الاتجاه دمج الميزات متعددة النطاقات بسهولة من خلال إدخال أوزان قابلة للتعلم لميزات الإدخال المختلفة.
- التحجيم المركب: تعمل هذه الطريقة على تحجيم دقة وعمق وعرض العمود الفقري وشبكة الميزات وشبكات التنبؤ المربع/الفئة بشكل موحد، مما يسمح بوجود مجموعة من النماذج (من D0 إلى D7) المصممة خصيصًا لميزانيات الموارد المختلفة.
نقاط القوة والضعف
- قابلية التوسع: تسمح بنية عائلة D0-D7 للمستخدمين باختيار الطراز الذي يناسب ميزانيتهم المحددة من FLOPs.
- الأهمية التاريخية: لقد وضع معيار الكفاءة في عام 2020، مما أثر بشدة على الأبحاث اللاحقة في مجال البحث في البنية العصبية.
- أداء قديم: على الرغم من كفاءة EfficientDet في وقته، إلا أنه يتخلف الآن عن أجهزة الكشف الحديثة مثل YOLOv9 من حيث زمن الاستجابة على وحدات معالجة الرسومات. إن استخدامه المكثف للالتفافات القابلة للفصل على مستوى العمق، على الرغم من كفاءته في استخدام FLOP، غالبًا ما يؤدي إلى استنتاج أبطأ على أجهزة مثل NVIDIA T4 مقارنةً بالالتفافات الكثيفة المحسّنة المستخدمة في بنيات YOLO .
تعرف على المزيد حول EfficientDet
تحليل مقارن مفصل
عند الاختيار بين YOLOv9 و EfficientDet، هناك عدة عوامل أخرى غير mAP الخام. فيما يلي تفصيل لكيفية المقارنة بينهما في بيئات التطوير العملية.
السرعة والكمون
يكمن الاختلاف الأكثر تميزًا في سرعة الاستدلال. حيث يستخدم YOLOv9 بنية GELAN، والتي تم تحسينها من أجل التوازي الهائل على وحدات معالجة الرسومات. في المقابل، يمكن أن يؤدي اعتماد EfficientDet على دمج الميزات المعقدة (BiFPPN) والتلافيف القابلة للفصل من حيث العمق إلى اختناقات في الوصول إلى الذاكرة على المسرعات. كما هو موضح في جدول الأداء، تكون نماذج YOLOv9 أسرع بمرتين إلى 10 مرات على TensorRT من نظيراتها من EfficientDet ذات الدقة المماثلة.
النظام البيئي وسهولة الاستخدام
يوفر نظامUltralytics البيئي ميزة كبيرة لـ YOLOv9. في حين أن EfficientDet يتطلب بيئة TensorFlow ونصوص إعداد معقدة في كثير من الأحيان، فإن YOLOv9 مدمج في حزمة سهلة الاستخدام تدعم
- تركيب خط واحد:
pip install ultralytics - دعم التصدير على نطاق واسع: تصدير سلس إلى ONNXTensorRT CoreML OpenVINO والمزيد عبر
model.export()الدالة. - صيانة نشطة: تحديثات متكررة، ودعم مجتمعي، وأدلة إرشادية شاملة حول مهام مثل تتبع الكائنات ونشرها.
مرونة النشر
يمكن نشر نماذج YOLOv9 التي تم تدريبها باستخدام Ultralytics بسهولة على الأجهزة المتطورة باستخدام تنسيقات مثل TFLite أو Edge TPU. راجع دليل التكاملTFLite لمزيد من التفاصيل.
كفاءة التدريب والذاكرة
قد يستهلك تدريب نماذج الرؤية الحاسوبية الحديثة الكثير من الموارد. تشتهر نماذج Ultralytics YOLO باستخدامها الفعال لذاكرةGPU . يتيح ذلك للمطورين تدريب أحجام دفعات أكبر على الأجهزة الاستهلاكية مقارنةً بالبنى القديمة أو النماذج القائمة على المحولات الثقيلة. علاوةً على ذلك، توفر Ultralytics أوزاناً متاحة مسبقاً ومتوفرة بسهولة، مما يتيح إمكانية التعلم التحوّلي الذي يتقارب بشكل أسرع بكثير من تدريب EfficientDet من الصفر.
تعدد الاستخدامات
على الرغم من أن EfficientDet هو كاشف كائنات بشكل صارم، إلا أن المبادئ المعمارية وراء YOLOv9 (وعائلة Ultralytics YOLO الأوسع نطاقًا) تمتد لتشمل مهام متعددة. يدعم إطار عمل Ultralytics :
يتيح هذا التنوع للمطوّرين استخدام واجهة برمجة تطبيقات واحدة موحدة لتحديات الرؤية الحاسوبية المتنوعة.
الخلاصة
بالنسبة لغالبية المشاريع الجديدة، فإن YOLOv9 هو الخيار الأفضل. فهو يوفر دقة فائقة مع سرعات استنتاج أسرع بكثير، مما يجعله مناسبًا للتطبيقات في الوقت الفعلي. ويضمن تكامله في نظامUltralytics البيئي تجربة تطوير سلسة، بدءًا من إعداد البيانات إلى نشر النموذج.
يظل EfficientDet مرجعًا قيّمًا لفهم التوسع المركب ودمج الميزات ولكنه بشكل عام لا يرقى إلى مقاييس الأداء لكل واط ووقت الاستجابة على الأجهزة الحديثة.
يجب على المطورين الذين يبحثون عن أحدث ما توصلت إليه تكنولوجيا الرؤية الحاسوبية أن يستكشفوا أيضًا YOLO11الذي يعتمد على هذه التطورات لتقديم كفاءة وأداء أكبر.
استكشف نماذج أخرى
إذا كنت مهتمًا بإجراء المزيد من المقارنات، ففكر في استكشاف هذه النماذج ذات الصلة:
- YOLO11 مقابل YOLOv9: شاهد كيف تحسّن الجيل الأحدث من YOLOv9.
- RT-DETR: كاشف قائم على محول يوفر دقة عالية لسيناريوهات الوقت الحقيقي.
- YOLOv8: عائلة نماذج متعددة الاستخدامات تدعم الكشف والتجزئة وتقدير الوضعية.