PP-YOLOE+ مقابل YOLOv5: استكشاف هياكل الكشف عن الكائنات
عند اختيار إطار العمل المناسب للتعلم العميق للرؤية الحاسوبية، غالبًا ما يجد المطورون أنفسهم يقارنون بين قدرات البنى المختلفة لإيجاد التوازن المثالي بين السرعة والدقة وسهولة النشر. في هذا التحليل المتعمق، سوف نستكشف الفروق الفنية الدقيقة بين PP-YOLOE+ و YOLOv5. من خلال تحليل هياكلهما ومقاييس الأداء وسيناريوهات النشر المثالية، يمكنك اتخاذ قرار مستنير لمشروعك التالي، سواء كان يتعلق بالروبوتات في الوقت الفعلي أو النشر المتطور أو تحليلات الفيديو المستندة إلى السحابة.
أصول النموذج والبيانات الوصفية
كلا النموذجين نتاج عمل فرق هندسية ذات كفاءة عالية، لكنهما يستهدفان بيئات مختلفة قليلاً. فهم أصولهما يوفر سياقاً قيماً لخيارات التصميم المعماري.
تفاصيل PP-YOLOE+:
- المؤلفون: PaddlePaddle Authors
- المنظمة: Baidu
- التاريخ: 2022-04-02
- Arxiv: https://arxiv.org/abs/2203.16250
- GitHub: PaddlePaddle
- المستندات: PaddleDetection README
YOLOv5 :
- المؤلفون: جلين جوشر
- المنظمة: Ultralytics
- التاريخ: 2020-06-26
- GitHub: yolov5
- المستندات: yolov5
مقارنة معمارية
بنية PP-YOLOE+
PP-YOLOE+ هو تطور داخل نظام بايدو البيئي، مبني على أساس النماذج السابقة مثل PP-YOLOv2. وهو يقدم تحسينات كبيرة CSPRepResNet العمود الفقري، الذي يعزز استخراج الميزات من خلال الجمع بين مبادئ شبكات Cross Stage Partial (CSP) وتقنيات إعادة المعلمات. وهذا يسمح للنموذج بالحفاظ على دقة عالية أثناء التدريب مع الاندماج في بنية أكثر بساطة من أجل استنتاج أسرع.
بالإضافة إلى ذلك، يستخدم PP-YOLOE+ تعلم محاذاة المهام (TAL) ورأسًا فعالًا ومحاذيًا للمهام (ET-head). يهدف هذا المزيج إلى حل عدم التوافق بين مهام التصنيف والتحديد المكاني، وهو عائق شائع في أجهزة الكشف عن الأجسام الكثيفة. على الرغم من أن البنية الهيكلية مثيرة للإعجاب، إلا أنها مرتبطة ارتباطًا وثيقًا PaddlePaddle ، مما قد يشكل تحديات في التكامل للفرق التي تعمل على توحيد المكتبات الرئيسية الأخرى للتعلم الآلي.
بنية YOLOv5
في المقابل، YOLOv5 تصميم YOLOv5 أصلاً في PyTorch، وهو المعيار الصناعي لكل من البحث الأكاديمي والإنتاج المؤسسي. ويستخدم هذا البرنامج العمود الفقري CSPDarknet53 المعدل، المعروف بتدفقه التدرجي الاستثنائي وكفاءة معلماته.
YOLOv5 السمات YOLOv5 لـ YOLOv5 خوارزمية AutoAnchor، التي تتحقق ديناميكيًا من أحجام مربعات التثبيت وتعدلها بناءً على مجموعة البيانات المخصصة الخاصة بك قبل التدريب. وهذا يلغي الحاجة إلى الضبط اليدوي للمعلمات الفائقة لمربعات التثبيت. يضمن عنق شبكة تجميع المسار (PANet) للنموذج دمجًا قويًا للميزات متعددة المقاييس، مما يجعله فعالًا للغاية في اكتشاف الكائنات بأحجام مختلفة.
PyTorch مبسط
نظرًا لأن YOLOv5 مباشرة على PyTorch، YOLOv5 التصدير إلى تنسيقات محسّنة مثل ONNX و TensorRT تكوين برامج وسيطة أقل بكثير من النماذج المرتبطة بأطر عمل محلية.
تحليل الأداء
يتطلب تقييم هذه النماذج النظر في المفاضلة بين متوسط الدقة (mAP) والكمون. يعرض الجدول التالي المقاييس عبر أحجام النماذج المختلفة.
| النموذج | الحجم (بالبكسل) | 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 |
بينما يحقق PP-YOLOE+ mAP تنافسية للغاية على نطاقات أكبر (مثل المتغير X)، YOLOv5 سرعة فائقة وعدد أقل من المعلمات في الطرف الأصغر من الطيف. YOLOv5 (YOLOv5n) يتطلب 2.6 مليون معلمة فقط، مما يجعله مناسبًا للغاية للأجهزة الطرفية المقيدة حيث متطلبات الذاكرة صارمة. علاوة على ذلك، عادةً ما يستهلك تدريب YOLO CUDA أقل مقارنة بالبدائل الثقيلة القائمة على المحولات مثل RT-DETR.
ميزة Ultralytics
عند اختيار بنية معمارية، لا تمثل المقاييس الأولية سوى جزء من المعادلة. غالبًا ما تحدد تجربة المطور ودعم النظام البيئي وخطوط أنابيب النشر نجاح المشروع في العالم الواقعي. وهنا تبرز Ultralytics .
سهولة استخدام لا مثيل لها
Ultralytics Python لـ Ultralytics الكود النمطي المعقد. يمكن للمطورين بدء التدريب والتحقق من الأداء ونشر النماذج بسلاسة. الوثائق شاملة ومحفوظة بشكل جيد ومدعومة من قبل مجتمع مفتوح المصدر عالمي ضخم.
تعدد الاستخدامات عبر المهام
في حين أن PP-YOLOE+ هو كاشف كائنات مخصص، فإن Ultralytics يتيح للمستخدمين التعامل مع مهام رؤية حاسوبية متعددة في إطار واجهة برمجة تطبيقات موحدة واحدة. باستخدام YOLOv5 وخلفائه، يمكنك الانتقال بسهولة من مربعات الحدود القياسية إلى سير عمل تقسيم الصور وتصنيفها.
مثال على الكود: تدريب YOLOv5
لا يتطلب البدء سوى بضع أسطر من التعليمات البرمجية. هذه البساطة تسرع بشكل كبير من دورات البحث والتطوير.
from ultralytics import YOLO
# Load a pretrained YOLOv5 small model
model = YOLO("yolov5s.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run fast inference on an image
predictions = model("https://ultralytics.com/images/bus.jpg")
predictions[0].show()
حالات الاستخدام في العالم الحقيقي
متى تختار PP-YOLOE+: إذا كانت مؤسستك متأصلة بعمق في مجموعة برامج Baidu أو تعتمد بشكل كبير على أجهزة متخصصة تتطلب PaddlePaddle فإن PP-YOLOE+ هو خيار مثالي. يتم استخدامه بشكل متكرر في خطوط الإنتاج المتخصصة في جميع أنحاء آسيا حيث يوجد تكامل قديم مع Paddle.
متى تختار YOLOv5: بالنسبة للغالبية العظمى من المطورين والباحثين والشركات الدولية، YOLOv5 قوة دافعة. PyTorch تعني أنه متوافق على الفور مع أدوات مثل Weights & Biases للتتبع، كما أنه يتم تصديره بشكل نظيف إلى TensorRTGPU CoreML NVIDIA أو CoreML Apple. وهو يتفوق في مجالات متنوعة تتراوح من مراقبة المحاصيل الزراعية إلى الملاحة عالية السرعة للطائرات بدون طيار.
مستقبل الكشف: Ultralytics
على الرغم من أن YOLOv5 نموذج أيقوني، إلا أن حدود الرؤية الحاسوبية قد تطورت. بالنسبة لجميع التطورات الجديدة، نوصي بشدة بالانتقال إلى YOLO26، الذي تم إصداره في يناير 2026. يتوفر YOLO26 بسلاسة عبر Ultralytics وهو يعيد تعريف الكفاءة تمامًا.
الابتكارات الرئيسية في YOLO26:
- تصميم شامل NMS: يزيل YOLO26 معالجة ما بعد القمع غير الأقصى تمامًا. وهذا يقلل من تقلب زمن الاستجابة ويبسط عملية النشر بشكل كبير.
- CPU أسرع بنسبة تصل إلى 43٪ CPU : من خلال إزالة Distribution Focal Loss (DFL) بشكل استراتيجي، يزيد YOLO26 بشكل كبير من السرعة على الأجهزة الطرفية التي لا تحتوي على وحدات معالجة رسومات.
- MuSGD Optimizer: مستوحى من نماذج اللغة الكبيرة الرائدة، يعمل هذا المحسن الهجين على استقرار ديناميكيات التدريب ويسمح بتقارب أسرع بكثير على مجموعات البيانات المخصصة.
- تحسينات خاصة بالمهام: يتميز بوظائف خسارة متقدمة مثل ProgLoss و STAL، مما يوفر دقة غير مسبوقة في التعرف على الأجسام الصغيرة. يدعم بشكل أساسي اكتشاف الصناديق المحددة الاتجاه (OBB) للصور الجوية.
إذا كنت تستكشف أحدث نماذج الرؤية، فقد تكون مهتمًا أيضًا بمقارنة الجيل السابق YOLO11 أو النهج القائمة على المحولات مثل RT-DETR. في النهاية، فإن النظام البيئي القوي، جنبًا إلى جنب مع التطورات المعمارية المتطورة، يعزز مكان Ultralytics يار متميز لمهام الرؤية الحاسوبية الحديثة.