YOLOv9 مقابل PP-YOLOE+: مقارنة فنية
يتضمن اختيار نموذج الكشف عن الأجسام الصحيح مفاضلة حاسمة بين الدقة والسرعة ومتطلبات الموارد. تقدم هذه الصفحة مقارنة فنية مفصلة بين Ultralytics YOLOv9، وهو نموذج حديث معروف بابتكاراته المعمارية، و PP-YOLOE+ من Baidu، وهو منافس قوي من نظام PaddlePaddle البيئي. سنقوم بتحليل هياكلهما ومقاييس الأداء وحالات الاستخدام المثالية لمساعدتك في اختيار أفضل نموذج لمشاريع الرؤية الحاسوبية الخاصة بك.
YOLOv9: معلومات التدرج القابلة للبرمجة للتعلم المحسن
يمثل Ultralytics YOLOv9 تقدمًا كبيرًا في الكشف عن الأجسام في الوقت الفعلي، حيث يقدم مفاهيم رائدة لمعالجة التحديات القائمة منذ فترة طويلة في التعلم العميق.
المؤلفون: Chien-Yao Wang و Hong-Yuan Mark Liao
المنظمة: معهد علوم المعلومات، أكاديميا سينيكا، تايوان
التاريخ: 2024-02-21
Arxiv: https://arxiv.org/abs/2402.13616
GitHub: https://github.com/WongKinYiu/yolov9
التوثيق: https://docs.ultralytics.com/models/yolov9/
الابتكارات الأساسية في YOLOv9 هي معلومات التدرج القابلة للبرمجة (PGI) وشبكة تجميع الطبقات الفعالة المعممة (GELAN). تم تصميم PGI لمعالجة مشكلة فقدان المعلومات أثناء تدفق البيانات عبر الشبكات العميقة، مما يضمن توفر معلومات تدرج موثوقة لتحديثات النموذج الدقيقة. يساعد هذا في الحفاظ على الميزات الرئيسية ويحسن التعلم. GELAN عبارة عن بنية شبكة جديدة مُحسَّنة لتحقيق استخدام فائق للمعلمات وكفاءة حسابية. يتيح هذا المزيج القوي لـ YOLOv9 تحقيق دقة استثنائية مع الحفاظ على سرعات استدلال عالية.
تتمثل إحدى المزايا الرئيسية لـ YOLOv9 في تكاملها في نظام Ultralytics البيئي. يوفر هذا تجربة مستخدم مبسطة مع واجهة برمجة تطبيقات بسيطة و وثائق شاملة وشبكة دعم قوية. يستفيد النظام البيئي من التطوير النشط، ومجتمع قوي على منصات مثل GitHub و Discord، والتحديثات المتكررة. يضمن ذلك حصول المطورين على عمليات تدريب فعالة وأوزان مُدرَّبة مسبقًا متاحة بسهولة ومنصة تدعم مهامًا متعددة مثل اكتشاف الكائنات و تجزئة المثيلات.
نقاط القوة
- دقة عالية: يحقق mAP حديثًا في مجموعات البيانات الصعبة مثل COCO، مع نموذج YOLOv9-E الذي يضع معيارًا جديدًا لأدوات الكشف في الوقت الفعلي.
- هندسة معمارية فعالة: تؤدي بنية GELAN و PGI إلى أداء ممتاز مع عدد أقل بكثير من المعلمات وعمليات الفاصلة العائمة في الثانية (FLOPs) مقارنة بالنماذج ذات الدقة المماثلة.
- الحفاظ على المعلومات: يقلل PGI بشكل فعال من مشكلة عنق الزجاجة المعلوماتي في الشبكات العميقة، مما يؤدي إلى تقارب ودقة أفضل للنموذج.
- نظام Ultralytics البيئي: يستفيد من سهولة الاستخدام والوثائق الشاملة والصيانة النشطة ودعم المجتمع القوي. إنه مبني على PyTorch، وهو إطار عمل الذكاء الاصطناعي الأكثر شيوعًا، مما يجعله في متناول الجميع.
- تنوع الاستخدامات: تتميز البنية بالمرونة، حيث تدعم مهام رؤية الكمبيوتر المتعددة بخلاف الاكتشاف فقط.
نقاط الضعف
- نموذج أحدث: باعتباره إصدارًا حديثًا، فإن اتساع نطاق الأمثلة التي يساهم بها المجتمع وعمليات تكامل الطرف الثالث لا يزال في ازدياد، على الرغم من أن إدراجه في إطار Ultralytics يسرع من اعتماده.
- موارد التدريب: على الرغم من كفاءته لمستوى أدائه، إلا أن تدريب أكبر متغيرات YOLOv9 يمكن أن يتطلب موارد حسابية كبيرة.
حالات الاستخدام المثالية
يتفوق YOLOv9 في التطبيقات التي تتطلب أعلى مستويات الدقة والكفاءة. وهذا يجعله مثاليًا للمهام المعقدة مثل القيادة الذاتية، وأنظمة الأمان المتقدمة، والروبوتات عالية الدقة. كما أن تصميمه الفعال يجعل المتغيرات الأصغر مناسبة للنشر في بيئات الذكاء الاصطناعي المتطورة (Edge AI) ذات الموارد المحدودة.
PP-YOLOE+: دقة عالية ضمن نظام PaddlePaddle البيئي
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+ هو كاشف أحادي المرحلة وخالٍ من المرساة يعتمد على إصدارات PP-YOLO السابقة. يتضمن هيكلًا أساسيًا فعالًا، غالبًا ما يعتمد على CSPRepResNet، ورأس اكتشاف يستخدم Task Alignment Learning (TAL) لتحسين تصنيف ومواءمة التوطين. تقدم سلسلة النماذج أحجامًا مختلفة (s, m, l, x) لتلبية الميزانيات الحسابية المختلفة.
نقاط القوة
- أداء قوي: يقدم دقة وسرعة تنافسيتين، مما يجعله نموذجًا قادرًا للعديد من مهام الكشف عن الكائنات.
- محسّن لـ PaddlePaddle: بالنسبة للفرق المستثمرة بالفعل في نظام Baidu PaddlePaddle البيئي، يوفر PP-YOLOE+ تكاملًا سلسًا وأداءً محسّنًا.
نقاط الضعف
- الاعتماد على إطار عمل: يمكن أن يكون اعتماده على إطار عمل PaddlePaddle عائقًا كبيرًا أمام المجتمع الأوسع، الذي يستخدم PyTorch في الغالب. قد يكون ترحيل المشاريع أو التكامل مع الأدوات المستندة إلى PyTorch أمرًا معقدًا.
- تعددية المهام محدودة: يركز PP-YOLOE+ بشكل أساسي على اكتشاف الكائنات. في المقابل، تقدم نماذج Ultralytics مثل YOLOv8 و YOLO11 إطارًا موحدًا لمهام متعددة، بما في ذلك التجزئة وتقدير الوضع والتصنيف، خارج الصندوق.
- النظام البيئي والدعم: النظام البيئي المحيط بـ PP-YOLOE+ أقل اتساعًا من نظام Ultralytics YOLO. قد يجد المستخدمون عددًا أقل من البرامج التعليمية المجتمعية وقنوات دعم أقل استجابة وتحديثات أبطأ مقارنة بالنظام البيئي النابض بالحياة والذي يتم صيانته بنشاط من Ultralytics.
حالات الاستخدام المثالية
يُعد PP-YOLOE+ الأنسب للمطورين والمؤسسات التي تعتمد بالفعل على إطار عمل التعلم العميق Baidu PaddlePaddle. إنه خيار قوي لتطبيقات الكشف عن الكائنات القياسية حيث يتمتع فريق التطوير بخبرة حالية في PaddlePaddle.
تحليل الأداء: YOLOv9 ضد PP-YOLOE+
عند مقارنة الأداء، من الواضح أن YOLOv9 يضع معيارًا أعلى لكل من الدقة والكفاءة.
النموذج | الحجم (بالبكسل) |
mAPval 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 |
PP-YOLOE+t | 640 | 39.9 | - | 2.84 | 4.85 | 19.15 |
PP-YOLOE+s | 640 | 43.7 | - | 2.62 | 7.93 | 17.36 |
PP-YOLOE+m | 640 | 49.8 | - | 5.56 | 23.43 | 49.91 |
PP-YOLOE+l | 640 | 52.9 | - | 8.36 | 52.2 | 110.07 |
PP-YOLOE+x | 640 | 54.7 | - | 14.3 | 98.42 | 206.59 |
- ذروة الدقة: تحقق YOLOv9-E أعلى قيمة mAP تبلغ 55.6، متفوقة على أكبر نموذج PP-YOLOE+x (54.7 mAP) مع استخدام عدد أقل بكثير من المعلمات (57.3 مليون مقابل 98.42 مليون).
- الكفاءة: يُظهر YOLOv9 كفاءة فائقة في استخدام المعلمات على نطاق واسع. على سبيل المثال، يصل YOLOv9-C إلى 53.0 mAP مع 25.3 مليون معلمة فقط، في حين يتطلب PP-YOLOE+l عدد 52.2 مليون معلمة لتحقيق قيمة mAP مماثلة تبلغ 52.9. النموذج الأصغر، YOLOv9-T، خفيف الوزن بشكل استثنائي مع 2.0 مليون معلمة فقط.
- الموازنة بين السرعة والدقة: في حين أن PP-YOLOE+s يُظهر أسرع وقت استدلال على وحدة معالجة الرسوميات T4، إلا أن ذلك يأتي على حساب الدقة (43.7 mAP). في المقابل، يقدم YOLOv9-S معدل mAP أعلى بكثير يبلغ 46.8 مع زيادة طفيفة فقط في زمن الوصول، مما يمثل موازنة أفضل للتطبيقات التي تكون فيها الدقة مهمة.
الخلاصة: أي نموذج يجب أن تختاره؟
بالنسبة للغالبية العظمى من المطورين والباحثين والشركات، يعد YOLOv9 هو الخيار الأفضل. إن دقته المتطورة، جنبًا إلى جنب مع الكفاءة الحسابية والمعلمات الملحوظة، تضع معيارًا جديدًا في الكشف عن الكائنات في الوقت الفعلي.
لا تكمن الميزة الأساسية لـ YOLOv9 في أدائه فحسب، بل في تكامله داخل النظام البيئي Ultralytics. استنادًا إلى إطار عمل PyTorch المعتمد على نطاق واسع، فإنه يوفر سهولة استخدام لا مثيل لها، ووثائق شاملة، وتعدد استخدامات المهام، ومجتمع نابض بالحياة وداعم. تقلل هذه البيئة الشاملة بشكل كبير من وقت التطوير وتبسط النشر والصيانة.
PP-YOLOE+ هو نموذج قادر، ولكن قيمته تقتصر إلى حد كبير على المستخدمين الذين يعملون بالفعل داخل نظام Baidu PaddlePaddle البيئي. بالنسبة لأولئك الذين هم خارج هذه البيئة المحددة، فإن تكاليف تبني إطار عمل جديد والقيود المفروضة على تعدد الاستخدامات ودعم المجتمع تجعله خيارًا أقل عملية مقارنة بالحل القوي والذي يسهل الوصول إليه الذي يقدمه Ultralytics YOLOv9.
نماذج أخرى يجب أخذها في الاعتبار
إذا كنت تستكشف هياكل مختلفة، فقد تكون مهتمًا أيضًا بنماذج أخرى متاحة في نظام Ultralytics البيئي:
- YOLOv8: نموذج عالي التنوع ومتوازن، ممتاز لمجموعة واسعة من المهام ومعروف بسرعة وسهولة استخدامه.
- YOLO11: أحدث نموذج رسمي من Ultralytics، يدفع حدود الأداء والكفاءة إلى أبعد من ذلك.
- RT-DETR: كاشف قائم على المحولات في الوقت الفعلي يقدم نهجًا معماريًا مختلفًا للكشف عن الكائنات.