مقارنة بين PP-YOLOE+ و YOLOv5#
عند اختيار إطار عمل التعلم العميق المناسب لرؤية الحاسوب، يجد المطورون أنفسهم غالباً في مرحلة مقارنة قدرات الهياكل المختلفة لتحقيق التوازن الأمثل بين السرعة، والدقة، وسهولة النشر. في هذا التحليل المتعمق، سنستكشف الفروق التقنية الدقيقة بين PP-YOLOE+ و YOLOv5. من خلال تحليل هياكلهما، ومقاييس الأداء، وسيناريوهات النشر المثالية، يمكنك اتخاذ قرار مستنير لمشروعك القادم، سواء كان يتضمن الروبوتات في الوقت الفعلي، أو النشر على الحافة، أو تحليلات الفيديو القائمة على السحابة.
أصول النماذج والبيانات الوصفية#
ينحدر كلا النموذجين من فرق هندسية ذات كفاءة عالية ولكنهما يستهدفان أنظمة بيئية مختلفة قليلاً. يوفر فهم أصولهما سياقاً قيماً لخيارات تصميمهما الهيكلي.
تفاصيل PP-YOLOE+:
- المؤلفون: مؤلفو PaddlePaddle
- المنظمة: Baidu
- التاريخ: 2022-04-02
- Arxiv: https://arxiv.org/abs/2203.16250
- GitHub: https://github.com/PaddlePaddle/PaddleDetection/
- Docs: PaddleDetection README
تفاصيل YOLOv5:
- المؤلف: Glenn Jocher
- المنظمة: Ultralytics
- التاريخ: 26-06-2020
- GitHub: https://github.com/ultralytics/yolov5
- المستندات: https://docs.ultralytics.com/models/yolov5
مقارنة معمارية#
بنية PP-YOLOE+#
يعتبر PP-YOLOE+ تطوراً داخل منظومة Baidu، مبنياً على أساس النماذج السابقة مثل PP-YOLOv2. إنه يقدم هيكلاً أساسياً محسنًا بشكل كبير CSPRepResNet، والذي يعزز استخراج الميزات من خلال الجمع بين مبادئ شبكات Cross Stage Partial (CSP) وتقنيات إعادة المعلمات. يتيح ذلك للنموذج الحفاظ على دقة عالية أثناء التدريب مع الدمج في بنية أكثر انسيابية للاستدلال الأسرع.
بالإضافة إلى ذلك، يوظف PP-YOLOE+ تقنية Task Alignment Learning (TAL) ورأس موجه فعال للمهام (ET-head). تهدف هذه التركيبة إلى حل عدم التوافق بين مهام التصنيف وتحديد الموقع، وهو عنق زجاجة شائع في كواشف الكائنات الكثيفة. على الرغم من كون الهيكل مثيراً للإعجاب من الناحية الهيكل، إلا أنه مرتبط ارتباطاً وثيقاً بـ إطار عمل PaddlePaddle، مما قد يفرض تحديات تكامل للفرق التي توحد معاييرها على مكتبات التعلم الآلي الرئيسية الأخرى.
هيكل YOLOv5#
في المقابل، تم تصميم YOLOv5 بشكل أصلي في PyTorch، وهو المعيار الصناعي لكل من البحوث الأكاديمية وإنتاج المؤسسات. وهو يستخدم هيكلاً أساسياً معدلاً من نوع CSPDarknet53، المعروف بتدفقه الاستثنائي للتدرج وكفاءة المعلمات.
من السمات المميزة لـ YOLOv5 هي خوارزمية AutoAnchor، التي تقوم بفحص وضبط أحجام صناديق الارتساء ديناميكياً بناءً على مجموعة البيانات المخصصة الخاصة بك قبل التدريب. هذا يلغي الضبط اليدوي للمعاملات الفائقة لصناديق الإحاطة. تضمن شبكة تجميع المسار (PANet) الخاصة بالنموذج دمجاً قوياً للميزات متعددة المقاييس، مما يجعله فعالاً للغاية في اكتشاف الأجسام عبر أحجام مختلفة.
نظرًا لأن YOLOv5 مبني مباشرة على PyTorch، فإن التصدير إلى تنسيقات محسنة مثل ONNX وTensorRT يتطلب تكويناً أقل بكثير للوسيط مقارنة بالنماذج المرتبطة بأطر العمل الموضعية.
تحليل الأداء#
يتطلب تقييم هذه النماذج النظر في المقايضة بين متوسط دقة الاكتشاف (mAP) وزمن الاستجابة. يوضح الجدول التالي المقاييس عبر أحجام مختلفة للنماذج.
| النموذج | الحجم (بكسل) | mAPval 50-95 | السرعة CPU ONNX (ms) | السرعة T4 TensorRT10 (ms) | المعلمات (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 Nano (YOLOv5n) 2.6 مليون معلمة فقط، مما يجعله مناسباً للغاية للأجهزة الطرفية المقيدة حيث تكون متطلبات الذاكرة صارمة. علاوة على ذلك، فإن تدريب نماذج YOLO يستهلك عادة ذاكرة CUDA أقل مقارنة بالبدائل الثقيلة القائمة على Transformer مثل RT-DETR.
ميزة 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 للتتبع، ويتم تصديره بوضوح إلى TensorRT لتسريع وحدات معالجة الرسومات من NVIDIA أو CoreML لأجهزة Apple. وهو يتفوق في مجالات متنوعة تتراوح من مراقبة المحاصيل الزراعية إلى ملاحة الطائرات بدون طيار عالية السرعة.
مستقبل الاكتشاف: Ultralytics YOLO26#
في حين أن YOLOv5 هو نموذج أيقوني، فقد تقدمت حدود الرؤية الحاسوبية. لجميع التطويرات الجديدة، نوصي بشدة بالانتقال إلى YOLO26، الذي تم إصداره في يناير 2026. يتوفر YOLO26 بسلاسة عبر منصة Ultralytics، وهو يعيد تعريف الكفاءة بالكامل.
الابتكارات الرئيسية في YOLO26:
- تصميم شامل خالٍ من NMS: يلغي YOLO26 معالجة Non-Maximum Suppression بالكامل. هذا يقلل من تباين زمن الاستجابة ويبسط خط أنابيب النشر بشكل كبير.
- استنتاج أسرع على CPU بنسبة تصل إلى 43%: من خلال الإزالة الاستراتيجية لـ Distribution Focal Loss (DFL)، يزيد YOLO26 السرعة بشكل كبير على أجهزة الحافة التي لا تحتوي على وحدات GPU.
- محسن MuSGD: مستوحى من نماذج اللغات الكبيرة الرائدة، يعمل هذا المحسن الهجين على استقرار ديناميكيات التدريب ويسمح بتقارب أسرع بكثير على مجموعات البيانات المخصصة.
- التحسينات الخاصة بالمهمة: تتميز بوظائف فقد متقدمة مثل ProgLoss وSTAL، مما ينتج عنه دقة غير مسبوقة على الكائنات الصغيرة. وهو يدعم بشكل أصلي اكتشاف مربع التحديد الموجه (OBB) للتصوير الجوي.
إذا كنت تستكشف نماذج الرؤية الحديثة، فقد تكون مهتمًا أيضًا بمقارنة الجيل السابق YOLO11 أو الأساليب القائمة على Transformer مثل RT-DETR. في النهاية، تؤكد المنظومة القوية، جنبًا إلى جنب مع التطورات الهيكلية المتطورة، على مكانة Ultralytics الخيار الأفضل لمهام الرؤية الحاسوبية الحديثة.