PP-YOLOE+ مقابل YOLOv5: مقارنة تقنية بين اكتشاف الكائنات في الوقت الفعلي
في ظل المنافسة الشديدة في مجال الرؤية الحاسوبية، يعد اختيار بنية الكشف عن الأجسام المناسبة قرارًا بالغ الأهمية للمطورين والباحثين. PP-YOLOE+، الذي طوره PaddlePaddle التابع لشركة Baidu، و YOLOv5، Ultralytics أنشأته Ultralytics يبرزان كنهجين متميزين لحل تحديات الكشف في الوقت الفعلي. بينما يركز PP-YOLOE+ على آليات خالية من المراسي داخل PaddlePaddle YOLOv5 وضع YOLOv5 معيار الصناعة للاستخدامية ومرونة النشر ودعم المجتمع داخل PyTorch.
يقدم هذا الدليل تحليلاً تقنياً متعمقاً لهذين النموذجين المؤثرين، ويقارن بين هياكلهما ومقاييس أدائهما ومدى ملاءمتهما للتطبيقات الواقعية مثل أتمتة التصنيع والحوسبة الطرفية.
نظرة عامة على النموذج
PP-YOLOE+
PP-YOLOE+ هو تطور لـ PP-YOLOE، مصمم لتحسين تقارب التدريب وأداء المهام النهائية. يعمل على PaddlePaddle ويستخدم نموذجًا خاليًا من المراسي لتبسيط رأس الكشف. من خلال دمج هيكل أساسي أقوى واستراتيجيات تدريب محسنة، يهدف إلى توفير دقة عالية للتطبيقات الصناعية حيث يكون الاستدلال القائم على السحابة شائعًا.
- المؤلفون: مؤلفو PaddlePaddle
- المؤسسة:بايدو
- التاريخ: 2022-04-02
- Arxiv:2203.16250
- GitHub:مستودع PaddleDetection
Ultralytics YOLOv5
YOLOv5 أحدثت ثورة في تجربة المستخدم في مجال الكشف عن الأشياء. أطلقتها Ultralytics وهي تعطي الأولوية للهندسة "التي تركز على النشر أولاً"، مما يضمن أن النماذج ليست دقيقة فحسب، بل سهلة للغاية في التدريب والتصدير والتشغيل على أجهزة متنوعة. تم تحسين هندستها القائمة على المراسي بشكل كبير من حيث السرعة، مما يجعلها المفضلة للاستدلال في الوقت الفعلي على الأجهزة المتطورة.
- المؤلف: جلين جوتشر
- المؤسسة:Ultralytics
- التاريخ: 2020-06-26
- GitHub:YOLOv5 Ultralytics YOLOv5
مقارنة البنية التقنية
YOLOv5 فلسفات PP-YOLOE+ و YOLOv5 المعمارية بشكل كبير، مما يؤثر على سلوك التدريب وخصائص النشر.
العمود الفقري واستخراج الميزات
YOLOv5 يستخدم هيكل CSPDarknet (شبكة جزئية متعددة المراحل). يعمل هذا التصميم على تحسين تدفق التدرج وتقليل عدد المعلمات دون التضحية بالأداء. تتميز البنية بدرجة عالية من المرونة، مما يتيح إجراء تجارب سريعة باستخدام نماذج مختلفة من حيث العمق والعرض (من Nano إلى X-Large). تعد هذه المرونة عاملاً أساسياً للمطورين الذين ينشرون برامجهم في بيئات محدودة الموارد مثل Raspberry Pi أو الأجهزة المحمولة.
في المقابل، يستخدم PP-YOLOE+ عادةً هيكل CSPRepResStage، الذي يجمع بين الاتصالات المتبقية وتقنيات إعادة تحديد المعلمات. على الرغم من فعالية هذه البنية في استخراج ميزات غنية، إلا أنها غالبًا ما تؤدي إلى زيادة التعقيد خلال مرحلة التدريب مقارنة بالكفاءة المبسطة لتنفيذ YOLOv5.
رؤوس الكشف: القائمة على المثبتات مقابل غير القائمة على المثبتات
يكمن الاختلاف الأساسي في رؤوس الكشف:
- YOLOv5 Anchor-Based): يستخدم مربعات ربط محددة مسبقًا للتنبؤ بمواقع الكائنات. على الرغم من أن هذا يتطلب تكوينًا أوليًا ( Ultralytics عبر AutoAnchor)، إلا أنه يوفر تدرجات تدريب مستقرة وأداء قويًا تاريخيًا على مجموعات البيانات القياسية مثل COCO.
- PP-YOLOE+ (بدون مرساة): يتنبأ بمراكز الكائنات وأحجامها مباشرةً، مما يلغي الحاجة إلى ضبط المعلمات الفائقة لمربع المرساة. يتعامل هذا النهج جيدًا مع الكائنات ذات نسب العرض إلى الارتفاع المتطرفة، ولكنه قد يكون أكثر حساسية لجودة بيانات التدريب وتقارب الخسارة الأولي.
التطور إلى نظام بدون مرساة
بينما يستخدم YOLOv5 المراسي YOLOv5 ، فإن Ultralytics الأحدث مثل YOLOv8 و YOLO26 إلى تصميمات خالية من المراسي، تجمع بين أفضل ما في العالمين: سهولة الاستخدام والتعميم الهندسي الفائق.
مقاييس الأداء
عند تقييم الأداء، من الضروري النظر إلى المفاضلة بين متوسط الدقة (mAP) والكمون. يوضح الجدول أدناه أنه في حين يحقق PP-YOLOE+ دقة عالية، YOLOv5 ميزة تنافسية في CPU وتنوع الاستخدامات، مع حواجز دخول أقل بكثير للمستخدمين الجدد.
| النموذج | الحجم (بالبكسل) | mAPval 50-95 | السرعة وحدة المعالجة المركزية CPU ONNX (بالمللي ثانية) | السرعة T4 TensorRT10 (بالمللي ثانية) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
تحليل السرعة والكفاءة
YOLOv5 Ultralytics YOLOv5 كفاءة استثنائية، لا سيما في الإصدارين "Nano" و"Small". تم تصميم نموذج YOLOv5n، الذي يحتوي على 1.9 مليون معلمة فقط، خصيصًا للبيئات شديدة التقييد، مثل تطبيقات الأجهزة المحمولة أو مستشعرات إنترنت الأشياء. في حين أن PP-YOLOE+ يقدم mAP قوية، إلا أن تعقيد الإعداد والاعتماد على PaddlePaddle يمكن أن يؤدي إلى حدوث احتكاك في خطوط الإنتاج التي تعتمد على ONNX PyTorch ONNX القياسي.
علاوة على ذلك، فإن متطلبات الذاكرة تفضل YOLOv5. أثناء التدريب، تسمح محملات البيانات المُحسّنة وإدارة الذاكرة YOLOv5 بحجم دفعات أكبر على وحدات معالجة الرسومات (GPU) الاستهلاكية مقارنة بالعديد من المنافسين، مما يقلل من عوائق الأجهزة التي تواجه مهندسي الذكاء الاصطناعي.
التدريب والنظام البيئي
غالبًا ما يكون النظام البيئي المحيط بالنموذج مهمًا بقدر أهمية النموذج نفسه. وهنا تكمن الميزة الفريدة التي Ultralytics .
سهولة الاستخدام والتوثيق
YOLOv5 بتجربة "من الصفر إلى القمة". يمكن للمطور الانتقال من تثبيت المكتبة إلى تدريب نموذج مخصص على مجموعة بيانات مثل VisDrone في غضون دقائق.
from ultralytics import YOLO
# Load a pretrained YOLO model (YOLOv5 or the newer YOLO26)
model = YOLO("yolov5s.pt")
# Train on a custom dataset with a single command
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate performance
metrics = model.val()
وبالمقارنة، يتطلب PP-YOLOE+ تثبيت PaddlePaddle نساخ مستودع PaddleDetection. غالبًا ما يتضمن التكوين تعديل ملفات YAML متعددة والتنقل في بنية دليل أكثر تعقيدًا، مما قد يمثل منحنى تعلم أكثر صعوبة لأولئك الذين اعتادوا على بساطة Pythonic في Ultralytics.
التنوع ودعم المهام
بينما يركز PP-YOLOE+ بشكل أساسي على الكشف، يوفر Ultralytics دعمًا أصليًا لمجموعة أوسع من مهام الرؤية ضمن واجهة برمجة تطبيقات واحدة:
- تجزئة المثيل: إخفاء دقيق للأشياء.
- تقدير الوضع: اكتشاف النقاط الرئيسية لهياكل عظمية بشرية أو حيوانية.
- مربع الحدود الموجه (OBB): الكشف عن الأجسام المدورة، وهو أمر بالغ الأهمية بالنسبة للصور الجوية.
- التصنيف: تصنيف الصورة بأكملها.
تتيح هذه المرونة للمطورين التنقل بين المهام دون الحاجة إلى تعلم أطر عمل جديدة أو إعادة كتابة خطوط أنابيب البيانات.
تطبيقات عملية في أرض الواقع
متى تختار PP-YOLOE+
يعد PP-YOLOE+ خيارًا قويًا إذا كانت البنية التحتية الخاصة بك متكاملة بالفعل مع مجموعة تقنيات Baidu. بالنسبة للمستخدمين في المناطق التي PaddlePaddle إطار PaddlePaddle أو بالنسبة لعمليات النشر المحددة على جانب الخادم حيث mAP هي الأولوية الوحيدة على سهولة النشر، يظل PP-YOLOE+ خيارًا قابلاً للتطبيق.
متى تختارYOLO Ultralytics YOLO
بالنسبة للغالبية العظمى من المطورين العالميين والشركات الناشئة وفرق المؤسسات، Ultralytics YOLOv5 (وسلفها) هو الخيار الموصى به للأسباب التالية:
- نشر Edge: تصدير سلس إلى TFLiteو CoreML و OpenVINO يضمن تشغيل النماذج بكفاءة على أجهزة المستخدمين النهائيين.
- دعم المجتمع: يساهم المجتمع الضخم والنشط في التحديثات المتكررة، مما يضمن إصلاح الأخطاء وإضافة ميزات جديدة مثل التعليقات التلقائية بانتظام.
- منصة شاملة: منصة Ultralytics تسهل دورة الحياة بالكامل، من إدارة مجموعة البيانات إلى تدريب النموذج ونشر السحابة.
المستقبل: أدخل YOLO26
في حين أن YOLOv5 أداة قوية وموثوقة، فإن مجال الرؤية الحاسوبية يتطور بسرعة. Ultralytics طرحت Ultralytics مؤخرًا YOLO26، الذي يمثل أحدث ما توصلت إليه التكنولوجيا من حيث الكفاءة والأداء.
يقدم YOLO26 العديد من التحسينات الرائدة مقارنة بكل من YOLOv5 PP-YOLOE+:
- NMS من البداية إلى النهاية: تزيل YOLO26 تقنية Non-Maximum Suppression (NMS)، وهي خطوة ما بعد المعالجة التي تبطئ عملية الاستدلال. وينتج عن ذلك منطق نشر أبسط ووقت استجابة أقل.
- MuSGD Optimizer: مستوحى من تدريب LLM، يضمن هذا المحسن الهجين تقاربًا مستقرًا وأوقات تدريب أسرع.
- كشف محسّن للأجسام الصغيرة: من خلال ProgLoss و STAL (خسارة محاذاة المهام)، يتفوق YOLO26 في كشف الأجسام الصغيرة، وهي قدرة حاسمة لعمليات التفتيش بواسطة الطائرات بدون طيار والزراعة الدقيقة.
- CPU أسرع بنسبة 43٪ CPU : مع إزالة Distribution Focal Loss (DFL)، تم تحسين YOLO26 خصيصًا لوحدات المعالجة المركزية، مما يجعله الخيار الأفضل للحوسبة الطرفية الفعالة من حيث التكلفة.
بالنسبة للمطورين الذين يبدأون مشاريع جديدة في عام 2026، نوصي بشدة بتقييم YOLO26 لضمان استمرارية تطبيقاتكم في المستقبل مع أحدث التطورات في بنية الشبكات العصبية.