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

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

يُعد اختيار بنية الكشف عن العناصر المثالية قرارًا محوريًا لمهندسي الرؤية الحاسوبية، حيث يوازن بين الحاجة إلى دقة عالية والقيود الحسابية. يقارن هذا الدليل الشامل بين YOLOv9، وهو نموذج حديث يقدم تقنيات معلومات تدرج جديدة، و PP-YOLOE+، وهو كاشف قوي مُحسَّن لإطار عمل PaddlePaddle. نحلل ابتكاراتهم المعمارية وأداء المعايير ومدى ملاءمتهم للنشر لمساعدتك في تحديد الأنسب لتطبيقات الرؤية الحاسوبية الخاصة بك.

YOLOv9: معلومات التدرج القابلة للبرمجة للتعلم المحسن

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

المؤلفون: تشين-ياو وانغ وهونغ-يوان مارك لياو
المنظمة:معهد علوم المعلومات، أكاديميا سينيكا، تايوان
التاريخ: 2024-02-21
Arxiv:https://arxiv.org/abs/2402.13616
GitHub:https://github.com/WongKinYiu/yolov9
التوثيق:https://docs.ultralytics.com/models/yolov9/

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

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

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

PP-YOLOE+: دقة عالية ضمن نظام PaddlePaddle البيئي

PP-YOLOE+ هو نسخة متطورة من PP-YOLOE، تم تطويرها بواسطة Baidu كجزء من مجموعة PaddleDetection. تم تصميمه خصيصًا للتشغيل بكفاءة على إطار عمل PaddlePaddle، مما يوفر توازنًا قويًا بين السرعة والدقة للتطبيقات الصناعية.

المؤلفون: مؤلفو PaddlePaddle
المنظمة:Baidu
التاريخ: 2022-04-02
Arxiv:https://arxiv.org/abs/2203.16250
GitHub:https://github.com/PaddlePaddle/PaddleDetection/
التوثيق:https://github.com/PaddlePaddle/PaddleDetection/blob/release/2.8.1/configs/ppyoloe/README.md

يستخدم PP-YOLOE+ آلية anchor-free، مما يزيل الحاجة إلى anchor boxes محددة مسبقًا، مما يبسط عملية ضبط المعلمات الفائقة. يستخدم الـ backbone الخاص به عادةً CSPRepResNet، ويتميز بتصميم رأس فريد مدعوم بـ Task Alignment Learning (TAL). يوفق هذا النهج بين مهام التصنيف وتحديد الموقع لتحسين جودة نتائج الـ detect. في حين أن PP-YOLOE+ يتمتع بقدرات عالية، إلا أنه مرتبط ارتباطًا وثيقًا بنظام PaddlePaddle البيئي، مما قد يمثل تحديًا للفرق التي تستخدم PyTorch أو TensorFlow بشكل قياسي.

الاعتماد على النظام الإيكولوجي

في حين أن PP-YOLOE+ يقدم أداءً تنافسيًا، إلا أن اعتماده على إطار عمل PaddlePaddle قد يحد من إمكانية التشغيل البيني مع النطاق الأوسع من الأدوات والمكتبات القائمة على PyTorch المستخدمة بشكل شائع في مجتمع البحث الغربي.

تعرف على المزيد حول PP-YOLOE+

تحليل الأداء: السرعة والدقة والكفاءة

عند مقارنة هذين النموذجين، يُظهر YOLOv9 ميزة واضحة في كل من كفاءة المعلمات والدقة القصوى. يتيح دمج GELAN لـ YOLOv9 معالجة البيانات المرئية بشكل أكثر فعالية، مما يؤدي إلى الحصول على درجات متوسط دقة (mAP) أعلى على مجموعة بيانات COCO مع الحفاظ غالبًا على زمن انتقال أقل.

النموذجالحجم
(بالبكسل)
mAPval
50-95
السرعة
وحدة المعالجة المركزية CPU ONNX
(بالمللي ثانية)
السرعة
T4 TensorRT10
(بالمللي ثانية)
المعلمات
(M)
FLOPs
(B)
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
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

النقاط الرئيسية

  • كفاءة المعلمات: يحقق نموذج YOLOv9-T أداءً مشابهًا للنماذج الأكبر حجمًا مع استخدام 2.0 مليون معلمة فقط، وهو أقل بكثير من متغير PP-YOLOE+t الذي يبلغ 4.85 مليون معلمة. هذا يجعل YOLOv9 مناسبًا بشكل خاص لأجهزة edge AI ذات التخزين المحدود.
  • أقصى دقة:YOLOv9-E يحقق قيمة 55.6% mAP ملحوظة، متجاوزًا أكبر نموذج PP-YOLOE+x (54.7% mAP) على الرغم من استخدام عدد أقل من المعلمات بنسبة 40% تقريبًا (57.3 مليون مقابل 98.42 مليون). هذا يسلط الضوء على التفوق المعماري لـ GELAN في زيادة قدرات استخلاص الميزات.
  • سرعة الاستدلال: في حين أن PP-YOLOE+s يُظهر تفوقًا طفيفًا في زمن الانتقال الخام على وحدات معالجة الرسوميات T4، إلا أن نماذج YOLOv9 تقدم عمومًا مقايضة أفضل، مما يوفر دقة أعلى بشكل ملحوظ مقابل تكاليف حسابية مماثلة. على سبيل المثال، يتفوق YOLOv9-C على PP-YOLOE+l في الدقة (53.0% مقابل 52.9%) مع كونه أسرع (7.16 مللي ثانية مقابل 8.36 مللي ثانية) وأخف وزنًا.

منهجية التدريب وسهولة الاستخدام

تختلف تجربة المطور بشكل كبير بين النموذجين، ويرجع ذلك أساسًا إلى الأطر الأساسية ودعم النظام البيئي.

ميزة النظام الإيكولوجي لـ Ultralytics

يوفر اختيار YOLOv9 عبر Ultralytics الوصول إلى مجموعة شاملة من الأدوات المصممة لتبسيط دورة حياة تعلم الآلة.

  • واجهة برمجة تطبيقات بسيطة: يتطلب تدريب النموذج بضعة أسطر فقط من التعليمات البرمجية، مما يزيل التعقيدات.
  • كفاءة الذاكرة: تم تحسين نماذج Ultralytics YOLO لتقليل استخدام الذاكرة أثناء التدريب مقارنةً بالبنى القائمة على المحولات، مما يسمح بأحجام دفعات أكبر على الأجهزة الاستهلاكية.
  • Versatility: بالإضافة إلى الـ detect، يدعم إطار عمل Ultralytics كلاً من instance segmentation و pose estimation والـ classification، مما يوفر واجهة موحدة لمهام متنوعة.
  • تدريب فعال: بفضل زيادة البيانات المتقدمة والأوزان المدربة مسبقًا المتاحة بسهولة، يمكن للمطورين تحقيق التقارب بشكل أسرع، مما يوفر ساعات GPU ثمينة.

سير عمل مبسط مع Ultralytics

يمكنك تحميل وتدريب والتحقق من صحة نموذج YOLOv9 في بضعة أسطر فقط من Python، وذلك بالاستفادة من محرك Ultralytics القوي لضبط المعلمات الفائقة وتتبع التجارب تلقائيًا.

from ultralytics import YOLO

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

# Train the model on a custom dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Validate the model's performance
metrics = model.val()

بيئة PaddlePaddle

يتطلب PP-YOLOE+ مكتبة PaddleDetection. على الرغم من قوته، إلا أنه يستلزم الإلمام بنظام Baidu البيئي. قد يكون إعداد البيئة وتحويل مجموعات البيانات إلى التنسيق المطلوب وتصدير النماذج للنشر أكثر تعقيدًا للمستخدمين غير المدمجين بالفعل في البنية التحتية لـ PaddlePaddle.

حالات الاستخدام المثالية

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

متى تختار YOLOv9

  • الأنظمة الذاتية: بالنسبة للسيارات ذاتية القيادة والروبوتات حيث يكون تعظيم الدقة أمرًا بالغ الأهمية للسلامة، فإن mAP الفائق لـ YOLOv9-E يوفر الموثوقية اللازمة.
  • النشر على الحافة: يعتبر YOLOv9-T خفيف الوزن مثاليًا للنشر على أجهزة Raspberry Pi أو NVIDIA Jetson لمهام مثل عد الأشخاص أو تحليلات البيع بالتجزئة الذكية.
  • Research & Development: إن well-maintained ecosystem ودعم PyTorch يجعلانه مثاليًا للباحثين الذين يقومون بتصميم حلول رؤية حاسوبية جديدة أو دمج قدرات object tracking.
  • البيئات محدودة الموارد: تستفيد التطبيقات التي تتطلب أداءً عاليًا مع ذاكرة VRAM محدودة من بنية YOLOv9 الفعالة وتقليل حجم الذاكرة.

متى تختار PP-YOLOE+

  • مستخدمو PaddlePaddle: بالنسبة للمؤسسات التي تستخدم بالفعل البنية التحتية لـ Baidu، يوفر PP-YOLOE+ تكاملًا سلسًا وتحسينًا أصليًا.
  • الفحص الصناعي (الصين): نظرًا لاعتماده القوي في السوق الآسيوية، غالبًا ما يتم العثور عليه في خطوط أنابيب التصنيع التي تعتمد على أجهزة Paddle الاستنتاجية المحددة.

الخلاصة

في حين أن كلا النموذجين منافسان قويان في مشهد الكشف عن الأجسام، إلا أن YOLOv9 تظهر باعتبارها الخيار الأفضل لغالبية المطورين والمؤسسات العالميين. يوفر استخدامها المبتكر لمعلومات التدرج القابلة للبرمجة (PGI) دقة متطورة مع كفاءة ملحوظة، متفوقة على PP-YOLOE+ في المقاييس الرئيسية مع استخدام عدد أقل بكثير من المعلمات.

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

نماذج أخرى يجب أخذها في الاعتبار

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

  • YOLO11: أحدث تطور في سلسلة YOLO، حيث تقدم سرعات أعلى ودقة أكبر للتطبيقات المتطورة.
  • YOLOv8: معيار صناعي عالي التنوع يدعم مهام الاكتشاف، والتقسيم، والوضع، و OBB.
  • RT-DETR: كاشف قائم على المحولات في الوقت الفعلي يتفوق في الدقة، ويقدم بديلاً للهياكل القائمة على CNN.

تعليقات