تخطي إلى المحتوى

EfficientDet مقابل YOLOv9: تطور كفاءة اكتشاف الكائنات

في عالم الرؤية الحاسوبية السريع، يُعد اختيار بنية النموذج المناسب أمرًا محوريًا لتحقيق التوازن بين الأداء والسرعة والموارد الحاسوبية. يقدّم هذا الدليل مقارنة تقنية شاملة بين EfficientDet، وهو نموذج تاريخي طوّرته شركة Google Research، و YOLOv9وهو أحدث كاشف مدمج في نظامUltralytics البيئي. سنقوم بتحليل الابتكارات المعمارية ومقاييس الأداء المعيارية وتحديد النموذج الأنسب للتطبيقات الحديثة للكشف عن الأجسام في الوقت الحقيقي.

EfficientDet: ريادة الكفاءة القابلة للتطوير

قدم EfficientDet، الذي تم إصداره في أواخر عام 2019، نهجًا منهجيًا لتوسيع نطاق النموذج الذي أثر على سنوات من الأبحاث اللاحقة. وقد طوّره الفريق في Google Research، وكان الهدف منه تحسين الكفاءة دون المساس بالدقة.

تفاصيل فنية:

البنية والميزات الرئيسية

بُنيت EfficientDet على العمود الفقري لشبكة EfficientNet وتقدم شبكة الهرم ثنائية الاتجاه (BiFPPN). على عكس الشبكات الهرمية للخصائص التقليدية، تسمح الشبكة الهرمية ثنائية الاتجاه بدمج الميزات متعددة المقاييس بسهولة وسرعة من خلال تقديم أوزان قابلة للتعلم لتعلم أهمية ميزات المدخلات المختلفة. يستخدم النموذج طريقة تحجيم مركبة تعمل على تحجيم الدقة والعمق والعرض بشكل موحد لجميع شبكات العمود الفقري وشبكة الميزات وشبكات التنبؤ المربع/الفئة في وقت واحد.

نقاط القوة والضعف

لقد كان EfficientDet ثوريًا لقدرته على تحقيق دقة عالية بمعايير أقل من معاصريه مثل YOLOv3. تكمن قوته الأساسية في قابليته للتطوير؛ حيث تسمح عائلة النماذج (من D0 إلى D7) للمستخدمين باختيار مفاضلة محددة للموارد.

ومع ذلك، وفقًا للمعايير الحديثة، يعاني EfficientDet من سرعات استدلال أبطأ، خاصةً على أجهزة GPU . وعلى الرغم من دقة طبقات دمج الميزات المعقدة الخاصة به، إلا أنها ليست ملائمة للأجهزة مثل البنى الأحدث. وعلاوة على ذلك، يفتقر التطبيق الأصلي إلى الأدوات سهلة الاستخدام الموجودة في الأطر الحديثة، مما يجعل التدريب والنشر أكثر كثافة في العمل.

حالات الاستخدام

تظل EfficientDet ذات صلة بـ

  • البحث الأكاديمي: فهم مبادئ القياس المركب ودمج السمات.
  • الأنظمة القديمة: الحفاظ على خطوط الأنابيب الحالية المبنية ضمن نظام TensorFlow البيئي.
  • بيئاتCPU: حيث يمكن أن تظل كفاءة المعلمة الخاصة بها تقدم أداءً معقولاً للتطبيقات ذات معدل الإطارات المنخفض في الثانية.

تعرف على المزيد حول EfficientDet

YOLOv9: إعادة تعريف الأداء في الوقت الحقيقي

طُرح في أوائل عام 2024, YOLOv9 يمثل قفزة إلى الأمام في سلسلة YOLO حيث يعالج اختناقات معلومات التعلم العميق لتحقيق كفاءة فائقة. وهي مدعومة بالكامل ضمن حزمةUltralytics python مما يضمن تجربة سلسة للمطورين.

تفاصيل فنية:

البنية والميزات الرئيسية

يقدم YOLOv9 مفهومين رائدين: معلومات التدرج القابلة للبرمجة (PGI ) وشبكة تجميع الطبقات الفعالة المعممة (GELAN).

  • يعالج PGI فقدان المعلومات الذي يحدث أثناء مرور البيانات عبر الطبقات العميقة للشبكة العصبية، مما يضمن موثوقية التدرجات المستخدمة لتحديث أوزان النموذج.
  • GELAN هي بنية خفيفة الوزن تعطي الأولوية للكفاءة الحسابية. وهي تسمح للنموذج بتحقيق دقة أعلى بمعلمات وتكاليف حسابية أقل (FLOPs) مقارنةً بالطرق القائمة على الالتفاف القائم على العمق.

نقاط القوة والمزايا

  • مقايضة فائقة بين السرعة والدقة: كما يُظهر القياس المعياري، يتفوق YOLOv9 على EfficientDet في زمن الاستجابة للاستدلال مع الحفاظ على الدقة أو تجاوزها.
  • نظامUltralytics البيئي: يعني التكامل مع Ultralytics إمكانية الوصول إلى واجهة برمجة تطبيقات Python API بسيطة وأدواتCLI وسهولة التصدير إلى تنسيقات مثل ONNX TensorRT CoreML.
  • كفاءة التدريب: عادةً ما تتطلب نماذج YOLOv9 ذاكرة أقل أثناء التدريب وتتقارب بشكل أسرع من البنى الأقدم، مستفيدةً من خط أنابيب تدريب Ultralytics المحسّن.
  • تعدد الاستخدامات: بالإضافة إلى الاكتشاف القياسي، تدعم البنية المهام المعقدة، مما يمهد الطريق للتجزئة المتقدمة والتعلم متعدد المهام.

اعرف المزيد عن YOLOv9

هل تعلم؟

صُممت بنية YOLOv9 الخاصة ب YOLOv9 لتكون محايدة من حيث الأجهزة، مما يعني أنها تعمل بكفاءة على مجموعة واسعة من أجهزة الاستدلال، بدءًا من وحدات معالجة الرسوميات المتطورة إلى وحدات معالجة الرسوميات المتطورة NVIDIA دون الحاجة إلى تحسينات محددة للأجهزة مثل بعض النماذج القائمة على المحولات.

تحليل الأداء

تسلط المقارنة التالية الضوء على التحسينات الهائلة في سرعة الاستدلال والكفاءة التي يجلبها YOLOv9 إلى الطاولة مقارنةً بعائلة EfficientDet.

النموذجالحجم
(بالبكسل)
mAPفال
50-95
السرعة
وحدة المعالجة المركزية CPU ONNX
(بالمللي ثانية)
السرعة
T4 TensorRT10
(بالمللي ثانية)
المعلمات
(M)
FLOPs
(B)
EfficientDet-d064034.610.23.923.92.54
EfficientDet-d164040.513.57.316.66.1
EfficientDet-d264043.017.710.928.111.0
EfficientDet-d364047.528.019.5912.024.9
EfficientDet-d464049.742.833.5520.755.2
EfficientDet-d564051.572.567.8633.7130.0
EfficientDet-d664052.692.889.2951.9226.0
EfficientDet-d764053.7122.0128.0751.9325.0
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0

الرؤى المعيارية الحرجة

  1. ميزة السرعة الهائلة: يحقق نموذج YOLOv9c سرعة تنافسية تبلغ 53.0 mAP مع سرعة استدلال تبلغ 7.16 مللي ثانية فقط على GPU T4. في المقابل، يزحف نموذج EfficientDet-d6 المماثل (52.6 mAP) بسرعة 89.29 مللي ثانية. وهذا ما يجعل YOLOv9 أسرع بأكثر من 12 ضعفاً لدقة مماثلة، وهو عامل حاسم لتطبيقات الوقت الحقيقي مثل المركبات ذاتية القيادة أو مراقبة حركة المرور.
  2. كفاءة المعلمات: في الطرف الأدنى من الطيف، يقدم YOLOv9t كفاءة قوية تبلغ 38.3 mAP مع 2.0 مليون معلمة فقط، متجاوزًا بذلك خط الأساس EfficientDet-d0 في الدقة مع استخدام نصف المعلمات تقريبًا وتشغيله بشكل أسرع بكثير.
  3. دقة عالية: بالنسبة للمهام التي تتطلب أقصى قدر من الدقة، يتخطى YOLOv9e الحدود مع 55.6 مللي mAP متفوقًا بذلك على أكبر طراز EfficientDet-d7 مع الحفاظ على زمن انتقال (16.77 مللي ثانية) لا يزال مناسبًا لمعالجة الفيديو، على عكس طراز D7 الباهظ الذي يبلغ 128 مللي ثانية.

التكامل وسهولة الاستخدام

أحد أهم الاختلافات بين هذين النموذجين هو النظام البيئي المحيط بهما. فبينما يعتمد EfficientDet على مستودعات TensorFlow الأقدم، فإن YOLOv9 هو مواطن من الدرجة الأولى في مكتبة Ultralytics .

ميزة Ultralytics

يوفر استخدام YOLOv9 مع Ultralytics نظامًا بيئيًا جيد الصيانة يبسط دورة حياة التعلم الآلي بأكملها. من وضع التعليقات التوضيحية لمجموعات البيانات إلى النشر على الأجهزة المتطورة، يتم تبسيط سير العمل.

  • واجهة برمجة تطبيقات بسيطة: يمكنك تدريب النماذج والتحقق من صحتها ونشرها ببضعة أسطر من كود Python .
  • توافق واسع النطاق: قم بتصدير نماذجك بسهولة إلى ONNX و TensorRT و OpenVINO و CoreML باستخدام وضع التصدير.
  • دعم المجتمع: تضمن الوثائق الشاملة والمجتمع النشط توفر حلول للمشاكل الشائعة بسهولة.

فيما يلي مثال عملي على مدى سهولة تشغيل الاستدلال باستخدام YOLOv9 باستخدام واجهة برمجة تطبيقات Ultralytics Python :

from ultralytics import YOLO

# Load a pre-trained YOLOv9 compact model
model = YOLO("yolov9c.pt")

# Run inference on an image
results = model("path/to/image.jpg")

# Process results
for result in results:
    result.show()  # Display predictions
    result.save()  # Save image to disk

براعة في التطبيق

على الرغم من أن EfficientDet هو كاشف للكائنات بشكل صارم، فإن المبادئ المعمارية الكامنة وراء YOLOv9 وإطار عمل Ultralytics تدعم مجموعة واسعة من مهام الرؤية. يمكن للمستخدمين التبديل بسهولة بين اكتشاف الأجسام، وتجزئة المثيلات، وتقدير الوضعية داخل قاعدة التعليمات البرمجية نفسها، مما يقلل من الديون التقنية للمشاريع المعقدة.

الخلاصة

عند المقارنة بين EfficientDet و YOLOv9 يكون الخيار واضحًا بالنسبة لتطوير الرؤية الحاسوبية الحديثة. في حين لعبت EfficientDet دورًا تاريخيًا في تحديد كفاءة توسيع نطاق النموذج, YOLOv9 يتفوق عليه في جميع المقاييس ذات الصلة بالمطورين اليوم.

يوفر YOLOv9 دقة فائقة لكل معلمة وسرعات استدلال أسرع من حيث الحجم، ونظامًا بيئيًا قويًا وملائمًا للمطورين. سواءً كنت تقوم بالنشر على الأجهزة الطرفية المقيدة أو تعالج تدفقات الفيديو عالية الإنتاجية في السحابة، فإن YOLOv9 يوفر توازن الأداء اللازم للنجاح.

بالنسبة لأولئك الذين يبدأون مشاريع جديدة، نوصي بشدة بالاستفادة من YOLOv9 أو أحدث إصدار من YOLO11 لضمان استفادة تطبيقك من أحدث التطورات في كفاءة التعلم العميق.

استكشف نماذج أخرى

إذا كنت مهتمًا باستكشاف المزيد من الخيارات داخل عائلة Ultralytics ففكر في هذه النماذج:

  • YOLO11: أحدث تطور في سلسلة YOLO حيث يقدم أحدث أداء في مهام الكشف والتجزئة والتصنيف.
  • YOLOv10: كاشف شامل في الوقت الحقيقي يلغي الحاجة إلى الكبت غير الأقصىNMS.
  • RT-DETR: كاشف قائم على المحولات يتفوق في الدقة، ويوفر بديلاً حديثًا للبنى القائمة على شبكة CNN.

تعليقات