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

EfficientDet ضد PP-YOLOE+: مقارنة فنية

في تطور رؤية الكمبيوتر، تسلط مقارنات قليلة الضوء على التحول في فلسفة التصميم بوضوح مثل التباين بين EfficientDet من Google و PP-YOLOE+ من Baidu. في حين أن EfficientDet يمثل علامة فارقة في كفاءة المعلمات من خلال التحجيم المركب، فإن PP-YOLOE+ يمثل العصر الحديث للاكتشاف عالي السرعة والخالي من المرساة والمحسن لاستدلال GPU.

يتعمق هذا التحليل في بنيتها ومقاييس أدائها وتطبيقاتها العملية لمساعدة المطورين على اختيار الأداة المناسبة لاحتياجاتهم الخاصة في اكتشاف الأجسام.

تحليل الأداء وجهاً لوجه

لقد تحول مشهد الأداء بشكل كبير بين إصدار هذين النموذجين. يركز EfficientDet على تقليل FLOPs (عمليات الفاصلة العائمة) وعدد المعلمات، مما يجعله فعالًا من الناحية النظرية. ومع ذلك، تم تصميم PP-YOLOE+ لسرعة الاستدلال العملي على مسرّعات الأجهزة مثل وحدات معالجة الرسومات GPUs، والاستفادة من تحسينات TensorRT.

النموذجالحجم
(بالبكسل)
mAPval
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
PP-YOLOE+t64039.9-2.844.8519.15
PP-YOLOE+s64043.7-2.627.9317.36
PP-YOLOE+m64049.8-5.5623.4349.91
PP-YOLOE+l64052.9-8.3652.2110.07
PP-YOLOE+x64054.7-14.398.42206.59

تكشف البيانات عن رؤية حاسمة: في حين أن EfficientDet-d0 خفيف الوزن، فإن المتغيرات الأكبر (d5-d7) تعاني من زمن انتقال كبير. وعلى العكس من ذلك، يحقق PP-YOLOE+l متوسط دقة متوسطة (mAP) مماثل لـ EfficientDet-d6 (52.9 مقابل 52.6) ولكنه يعمل أسرع بأكثر من 10 مرات على T4 GPU (8.36 مللي ثانية مقابل 89.29 مللي ثانية).

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

تم تقديم EfficientDet بواسطة فريق Google Brain AutoML بهدف كسر قيود الكفاءة لأجهزة الكشف السابقة. وهو مبني على هيكل EfficientNet، وتطبيق طريقة تحجيم مركبة توسع الدقة والعمق والعرض بشكل موحد.

المؤلفون: مينغشينغ تان، رومينغ بانغ، و كوك ف. لي
المنظمة:Google
التاريخ: 2019-11-20
Arxiv:1911.09070
GitHub:google/automl
المستندات:README

الميزات المعمارية الرئيسية

  1. BiFPN (شبكة الهرم المميز ثنائية الاتجاه): على عكس شبكات FPN التقليدية، تتيح BiFPN دمجًا سهلاً للميزات متعددة المقاييس. إنه يقدم أوزانًا قابلة للتعلم لتعلم أهمية ميزات الإدخال المختلفة، وتطبيق دمج الميزات متعددة المقاييس من أعلى إلى أسفل ومن أسفل إلى أعلى بشكل متكرر.
  2. التحجيم المركب: يتحكم معامل مركب واحد $\phi$ في عرض الشبكة وعمقها ودقتها، مما يسمح بإنشاء عائلة من النماذج (D0 إلى D7) التي تستهدف قيود الموارد المختلفة.

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

  • نقاط القوة: كفاءة ممتازة للمعلمات؛ فعال لوحدات المعالجة المركزية منخفضة الطاقة حيث تعتبر FLOPs هي العائق الأساسي؛ نهج توسيع نطاق منظم للغاية.
  • نقاط الضعف: غالبًا ما تكون الاتصالات المعقدة في BiFPN والالتواءات المنفصلة حسب العمق مقيدة بالذاكرة على وحدات معالجة الرسوميات، مما يؤدي إلى زمن انتقال استدلال أبطأ في العالم الحقيقي على الرغم من انخفاض عدد FLOP.

هل تعلم؟

يقلل استخدام EfficientDet المكثف للالتواءات المنفصلة حسب العمق من عدد المعلمات بشكل كبير ولكنه قد يؤدي إلى انخفاض استخدام وحدة معالجة الرسومات GPU مقارنة بالالتواءات القياسية المستخدمة في نماذج مثل YOLO.

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

PP-YOLOE+: المنافس الخالي من نقاط الارتكاز

تم إصداره بواسطة Baidu كجزء من نظام PaddlePaddle البيئي، PP-YOLOE+ هو تطور لـ PP-YOLOv2. يهدف إلى تجاوز أداء YOLOv5 و YOLOX من خلال تبني آلية خالية من المرساة بالكامل واستراتيجيات تدريب متقدمة.

المؤلفون: مؤلفو PaddlePaddle
المنظمة:Baidu
التاريخ: 2022-04-02
Arxiv:2203.16250
GitHub:PaddlePaddle/PaddleDetection
المستندات:PP-YOLOE+ Configs

الميزات المعمارية الرئيسية

  1. تصميم خالٍ من المرتكزات (Anchor-Free Design): عن طريق إزالة مربعات الارتكاز المحددة مسبقًا، يبسط PP-YOLOE+ رأس الكشف ويقلل من عبء ضبط المعلمات الفائقة.
  2. CSPRepResNet: يستخدم العمود الفقري RepResBlock، الذي يجمع بين فوائد الاتصالات المتبقية أثناء التدريب ويعيد تحديدها في هيكل مبسط للاستدلال.
  3. TAL (تعلم محاذاة المهام): استراتيجية متقدمة لتعيين التصنيفات تعمل على محاذاة درجة التصنيف وجودة تحديد الموقع ديناميكيًا.

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

  • نقاط القوة: دقة حديثة على مجموعة بيانات COCO؛ سريع للغاية على الأجهزة التي تدعم TensorRT؛ تصميم رأس مبتكر.
  • نقاط الضعف: مرتبط بشدة بإطار عمل PaddlePaddle، مما قد يمثل تحديات تكامل للفرق الموحدة على PyTorch؛ عدد المعلمات أعلى قليلاً للنماذج الصغيرة مقارنة بـ EfficientDet-d0.

ميزة Ultralytics: حل موحد

بينما يوفر EfficientDet كفاءة نظرية و PP-YOLOE+ يوفر سرعة خام، غالبًا ما يحتاج المطورون إلى حل يوازن الأداء مع سهولة الاستخدام ودعم النظام البيئي. هذا هو المكان الذي يتفوق فيه Ultralytics YOLO11.

على عكس الطبيعة المتخصصة لنماذج المقارنة، تم تصميم نماذج Ultralytics لسير عمل MLOps الحديث، مما يوفر تجربة PyTorch أصلية سهلة التدريب والنشر.

لماذا تختار Ultralytics YOLO11؟

  • سهولة الاستخدام: مع التركيز على تجربة المطور، تتيح لك Ultralytics الانتقال من التثبيت إلى الاستدلال في ثلاثة أسطر من تعليمات Python البرمجية. ليست هناك حاجة لتجميع مكتبات المشغل المعقدة يدويًا أو تحويل التنسيقات الاحتكارية.
  • Versatility: إطار عمل واحد يدعم Object Detection و Instance Segmentation و Pose Estimation و Classification و Oriented Bounding Boxes (OBB).
  • موازنة الأداء: يعمل YOLO11 على تحسين الموازنة بين السرعة والدقة، مما يوفر إمكانات الاستدلال في الوقت الفعلي على الأجهزة الطرفية (مثل Jetson) ووحدات معالجة الرسومات السحابية على حد سواء.
  • متطلبات الذاكرة: تستخدم نماذج Ultralytics YOLO هياكل محسّنة تتطلب عادةً ذاكرة CUDA أقل أثناء التدريب مقارنة بالبدائل القائمة على المحولات أو شبكات الميزات متعددة المقاييس الأقدم.
  • نظام بيئي جيد الصيانة: مدعومًا بمجتمع نابض بالحياة مفتوح المصدر، يتلقى المستودع تحديثات متكررة، مما يضمن التوافق مع أحدث إصدارات PyTorch و CUDA و Python.
  • كفاءة التدريب: يمكن للمستخدمين الاستفادة من الأوزان المدربة مسبقًا المتاحة بسهولة لضبط النماذج بدقة على مجموعات البيانات المخصصة بسرعة، مما يقلل بشكل كبير من متطلبات بيانات التدريب وتكاليف الحوسبة.

مثال على التعليمات البرمجية: البدء في استخدام YOLO11

تشغيل نموذج حديث لا ينبغي أن يكون معقدًا. إليك مدى سهولة تنفيذ الكشف عن الكائنات باستخدام Ultralytics:

from ultralytics import YOLO

# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")

# Run inference on an image
results = model.predict("https://ultralytics.com/images/bus.jpg")

# Display the results
results[0].show()

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

الخلاصة

يعتمد الاختيار بين EfficientDet و PP-YOLOE+ إلى حد كبير على قيود الأجهزة لديك ومتطلبات الأنظمة القديمة.

  • EfficientDet لا تزال مرجعًا صالحًا للبحث في التحجيم الفعال للمعلمات وهي مناسبة لسيناريوهات محددة مرتبطة بوحدة المعالجة المركزية CPU حيث يكون عرض نطاق الذاكرة ضيقًا.
  • PP-YOLOE+ هو خيار فائق لنشر GPU عالي الأداء، حيث يوفر مقايضات أفضل بكثير بين زمن الوصول والدقة إذا كنت مرتاحًا للتنقل في نظام PaddlePaddle البيئي.

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

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

لاستكشاف المزيد، ضع في اعتبارك مراجعة هذه المقارنات ذات الصلة:


تعليقات