YOLOv7 ضد PP-YOLOE+: مقارنة فنية لكشف الأجسام
يُعد اختيار بنية الكشف عن العناصر المثالية قرارًا محوريًا في تطوير الرؤية الحاسوبية، مما يؤثر بشكل كبير على أداء وكفاءة التطبيقات اللاحقة. يقدم هذا التحليل نظرة فنية متعمقة على YOLOv7 و PP-YOLOE+، وهما نموذجان لامعان شكلا مشهد الكشف في الوقت الفعلي. ندرس ابتكاراتهم المعمارية ومنهجيات التدريب ومقاييس الأداء لتوجيه الباحثين والمهندسين في اتخاذ خيارات مستنيرة.
YOLOv7: تحديد السرعة والدقة في الوقت الفعلي
YOLOv7 ظهر كمعلم بارز في تطور عائلة You Only Look Once، وقد صُمم لدفع حدود السرعة والدقة للتطبيقات في الوقت الفعلي. قدم استراتيجيات معمارية حسّنت تعلم الميزات دون زيادة تكاليف الاستدلال، مما أدى فعليًا إلى وضع معيار جديد لأحدث التقنيات عند إصداره.
- المؤلفون: Chien-Yao Wang و Alexey Bochkovskiy و Hong-Yuan Mark Liao
- المؤسسة:معهد علوم المعلومات، أكاديميا سينيكا، تايوان
- التاريخ: 2022-07-06
- ArXiv:https://arxiv.org/abs/2207.02696
- GitHub:https://github.com/WongKinYiu/yolov7
- الوثائق:https://docs.ultralytics.com/models/yolov7/
الابتكارات المعمارية
يكمن جوهر تصميم YOLOv7 في شبكة تجميع الطبقات الفعالة الممتدة (E-ELAN). تتحكم بنية العمود الفقري الجديدة هذه في أقصر وأطول مسارات التدرج لتعلم الميزات بشكل فعال دون تعطيل تدفق التدرج. من خلال تحسين مسار التدرج، تحقق الشبكة قدرات تعلم أعمق مع الحفاظ على الكفاءة.
بالإضافة إلى ذلك، يستخدم YOLOv7 استراتيجية "حقيبة المكافآت المجانية" أثناء التدريب. هذه هي طرق التحسين التي تعزز الدقة دون إضافة تكلفة حسابية خلال مرحلة محرك الاستدلال. تتضمن التقنيات إعادة تحديد معلمات النموذج، والتي تدمج الوحدات النمطية المنفصلة في وحدة نمطية مميزة واحدة للنشر، وفقدان توجيه الرأس الإضافي من الخشن إلى الدقيق للإشراف على الرأس الإضافي.
نقاط القوة والضعف
- نقاط القوة: يقدم YOLOv7 نسبة سرعة إلى دقة استثنائية، مما يجعله فعالاً للغاية للاستدلال في الوقت الفعلي على وحدات معالجة الرسوميات GPUs. إن منهجه القائم على المرساة مُحسَّن جيدًا لمجموعات البيانات القياسية مثل COCO.
- نقاط الضعف: باعتباره كاشفًا قائمًا على المرساة، فإنه يتطلب التكوين المحدد مسبقًا لـ مربعات المرساة، والتي يمكن أن تكون دون المستوى الأمثل لمجموعات البيانات المخصصة ذات نسب العرض إلى الارتفاع غير العادية للكائنات. يمكن أن يكون توسيع نطاق النموذج بكفاءة عبر قيود الأجهزة المختلفة جدًا أمرًا معقدًا أيضًا مقارنة بالتكرارات الأحدث.
PP-YOLOE+: المنافس الخالي من نقاط الارتكاز
PP-YOLOE+ هو تطور PP-YOLOE، تم تطويره بواسطة Baidu كجزء من مجموعة PaddleDetection. إنه يميز نفسه بهيكلية خالية من الارتكاز، بهدف تبسيط خط أنابيب الـ detect وتقليل عدد المعلمات الفائقة التي يحتاج المطورون إلى ضبطها.
- المؤلفون: مؤلفو PaddlePaddle
- المؤسسة:بايدو
- التاريخ: 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+ آلية detectور خالي من الـ anchor، مما يلغي الحاجة إلى تجميع مربعات الـ anchor. يستخدم Backbone من نوع CSPRepResNet وتصميم رأس مبسط. والمفتاح لأدائه هو Task Alignment Learning (TAL)، الذي يعين ديناميكيًا عينات موجبة بناءً على توافق جودة التصنيف والموقع.
يدمج النموذج أيضًا VariFocal Loss، وهي دالة خسارة متخصصة مصممة لإعطاء الأولوية لتدريب الأمثلة عالية الجودة. يتضمن إصدار "+" تحسينات على هياكل الرقبة والرأس، مما يحسن الهرم المميز لاكتشاف متعدد المقاييس بشكل أفضل.
نقاط القوة والضعف
- نقاط القوة: يعمل التصميم الخالي من المرساة على تبسيط إعداد التدريب وتحسين التعميم على أشكال الأجسام المتنوعة. يتوسع بشكل جيد عبر أحجام مختلفة (s، m، l، x) وهو مُحسَّن بشكل كبير لإطار عمل PaddlePaddle.
- نقاط الضعف: يمكن أن يؤدي اعتماده الأساسي على نظام PaddlePaddle البيئي إلى احتكاك للفرق الراسخة في أنظمة PyTorch أو TensorFlow البيئية. يعد دعم المجتمع وأدوات الطرف الثالث خارج الصين أقل شمولاً بشكل عام مقارنة بمجتمع YOLO العالمي.
مقارنة الأداء
عند مقارنة هذه النماذج، من الضروري النظر إلى التوازن بين متوسط الدقة (mAP) وزمن انتقال الاستدلال. يوضح الجدول أدناه المقاييس الرئيسية على مجموعة بيانات COCO.
| النموذج | الحجم (بالبكسل) | mAPval 50-95 | السرعة وحدة المعالجة المركزية CPU ONNX (بالمللي ثانية) | السرعة T4 TensorRT10 (بالمللي ثانية) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| 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 |
التحليل
كما هو ملاحظ، تُظهر YOLOv7l كفاءة رائعة، حيث تحقق 51.4٪ mAP بسرعة TensorRT تبلغ 6.84 مللي ثانية. في المقابل، تحقق PP-YOLOE+l قيمة mAP أعلى قليلاً تبلغ 52.9٪ ولكن بسرعة أبطأ تبلغ 8.36 مللي ثانية ومع معلمات أعلى بكثير (52.2 مليون مقابل 36.9 مليون). هذا يسلط الضوء على كفاءة YOLOv7 الفائقة في استخدام المعلمات وسرعة الاستدلال لمستويات دقة مماثلة. في حين أن PP-YOLOE+x يدفع حدود الدقة، إلا أنه يفعل ذلك على حساب ما يقرب من ضعف معلمات نماذج YOLO المماثلة.
أهمية الكفاءة
بالنسبة لعمليات نشر edge AI حيث تكون الذاكرة والحساب محدودين، غالبًا ما تترجم الأعداد الأقل للمعلمات و FLOPs لهياكل YOLO إلى تشغيل أكثر برودة واستهلاك أقل للطاقة مقارنة بالبدائل الأثقل.
ميزة Ultralytics: لماذا التحديث؟
في حين أن YOLOv7 و PP-YOLOE+ هما نموذجان قادران، إلا أن مجال رؤية الحاسوب يتحرك بسرعة. إن اعتماد أحدث نماذج Ultralytics، مثل YOLO11، يوفر مزايا واضحة تتجاوز المقاييس الأولية.
1. تجربة مستخدم مبسطة
تعطي Ultralytics الأولوية لسهولة الاستخدام. بخلاف ملفات التهيئة المعقدة وإدارة التبعيات التي تتطلبها غالبًا الأطر الأخرى، يمكن استخدام نماذج Ultralytics ببضعة أسطر من Python. هذا يقلل من حاجز الدخول للمطورين ويسرع دورة نشر النموذج.
2. نظام بيئي موحد وتنوع
نماذج Ultralytics الحديثة لا تقتصر على الكشف عن الأجسام فقط. فهي تدعم بشكل أصيل مجموعة واسعة من المهام ضمن إطار عمل واحد:
- تجزئة المثيل: إخفاء دقيق للكائنات على مستوى البكسل.
- تقدير الوضعية: اكتشاف النقاط الرئيسية على أجسام الإنسان أو الحيوانات.
- اكتشاف الكائنات الموجهة (OBB): التعامل مع الكائنات التي تم تدويرها مثل السفن في الصور الجوية.
- Classification: تصنيف الصورة بالكامل.
تسمح هذه المرونة للفرق بتوحيد مكتبة واحدة لمهام computer vision tasks متعددة، مما يبسط الصيانة.
3. كفاءة التدريب والذاكرة
تم تصميم نماذج Ultralytics لتحقيق كفاءة الذاكرة. إنها تتطلب عادةً ذاكرة VRAM أقل أثناء التدريب مقارنةً بالبنى الأقدم أو النماذج القائمة على المحولات مثل RT-DETR. يتيح ذلك تدريب أحجام دفعات أكبر على وحدات معالجة الرسومات القياسية للمستهلكين، مما يجعل إنشاء نماذج عالية الأداء في متناول المزيد من الباحثين.
4. مثال على التعليمات البرمجية: الطريقة الحديثة
يعد تشغيل الاستدلال باستخدام نموذج Ultralytics حديث أمرًا بديهيًا. فيما يلي مثال كامل وقابل للتشغيل باستخدام YOLO11، يوضح عدد قليل من سطور التعليمات البرمجية المطلوبة لتحميل نموذج مُدرَّب مسبقًا وتشغيل التنبؤ.
from ultralytics import YOLO
# Load the YOLO11n model (nano version for speed)
model = YOLO("yolo11n.pt")
# Run inference on a local image
# This automatically downloads the model weights if not present
results = model("https://ultralytics.com/images/bus.jpg")
# Process results
for result in results:
boxes = result.boxes # Boxes object for bbox outputs
result.show() # Display results on screen
result.save(filename="result.jpg") # Save results to disk
5. نظام بيئي جيد الصيانة
يعني اختيار Ultralytics الانضمام إلى مجتمع نابض بالحياة. مع التحديثات المتكررة و الوثائق الشاملة والتكامل مع أدوات MLOps مثل Ultralytics HUB، يتم دعم المطورين طوال دورة حياة مشروع الذكاء الاصطناعي بأكمله.
الخلاصة
قدم كل من YOLOv7 و PP-YOLOE+ مساهمات كبيرة في مجال اكتشاف الكائنات. يتفوق YOLOv7 في تقديم استدلال عالي السرعة على أجهزة GPU من خلال بنية E-ELAN الفعالة. يقدم PP-YOLOE+ بديلاً قويًا خاليًا من المرساة وقويًا بشكل خاص داخل نظام PaddlePaddle البيئي.
ومع ذلك، بالنسبة للمطورين الذين يبحثون عن حل مقاوم للمستقبل يوازن بين الأداء الحديث وسهولة الاستخدام التي لا مثيل لها، فإن Ultralytics YOLO11 هو الخيار الموصى به. إن تكامله في نظام بيئي شامل، ودعم المهام متعددة الوسائط، وكفاءته الفائقة تجعله النظام الأساسي المثالي لبناء تطبيقات رؤية حاسوبية قابلة للتطوير في عام 2025 وما بعده.
استكشف نماذج أخرى
وسّع فهمك لمشهد الكشف عن الكائنات من خلال هذه المقارنات:
- YOLOv7 ضد YOLOv8
- PP-YOLOE+ مقابل YOLOv8
- RT-DETR مقارنة بـ YOLOv7
- YOLOX ضد YOLOv7
- استكشف أحدث إمكانيات YOLO11.