مقارنة بين PP-YOLOE+ وYOLOv6-3.0#
لقد توسع مجال computer vision في الوقت الفعلي بسرعة، مما أدى إلى ظهور بنيات شديدة التخصص ومحسنة لمختلف سيناريو هات النشر. وغالباً ما يقارن المطورون بين PP-YOLOE+ وYOLOv6-3.0 عند بناء تطبيقات تتطلب توازناً بين الإنتاجية العالية والدقة الموثوقة. لقد قدم كلا النموذجين تحسينات معمارية كبيرة عند إطلاقهما، مع التركيز على تعزيز سرعات الاستدلال للتطبيقات الصناعية وتطبيقات الحافة.
قبل الغوص في التفاصيل المعمارية الدقيقة، استكشف الرسم البياني أدناه لتصور كيفية أداء هذه النماذج مقارنة ببعضها البعض من حيث السرعة والدقة.
PP-YOLOE+: نقاط القوة والضعف المعمارية#
تم تطوير PP-YOLOE+ بواسطة PaddlePaddle Authors، وهو anchor-free detector بارز يعتمد على سابقيه لتقديم أداء قوي عبر متطلبات النطاق المختلفة.
- المؤلفون: مؤلفو PaddlePaddle
- المنظمة: Baidu
- التاريخ: 2022-04-02
- Arxiv: 2203.16250
- GitHub: PaddlePaddle/PaddleDetection
أبرز ملامح المعمارية#
قدمت PP-YOLOE+ العديد من التحسينات الحاسمة مقارنة بتصميم PP-YOLOE الأصلي. فهي تستفيد من هيكل CSPRepResNet القوي، والذي يوازن بكفاءة بين التكلفة الحسابية وقدرات استخراج الميزات. علاوة على ذلك، فهي تدمج شبكة هرمية متقدمة للميزات feature pyramid network (FPN) جنباً إلى جنب مع شبكة تجميع المسار (PAN) لضمان دمج الميزات متعددة النطاق. وتتمثل إحدى ميزاتها البارزة في رأس ET (الرأس الفعّال المنسق للمهام)، والذي يحسن بشكل كبير من تنسيق التصنيف والتوطين أثناء object detection.
على الرغم من أن PP-YOLOE+ تحقّق mean average precision (mAP) مثيرة للإعجاب، إلا أن اعتمادها على نظام PaddlePaddle البيئي يمكن أن يمثل أحياناً منحنى تعلم حاداً للباحثين المعتادين على سير العمل الأصلي في PyTorch. يمكن أن يؤدي هذا إلى تعقيد عملية model deployment قليلاً عند استهداف أجهزة الحافة غير المتجانسة التي تفتقر إلى دعم الاستدلال المباشر لـ Paddle.
تم تحسين PP-YOLOE+ بشكل كبير للنشر ضمن حزمة تقنيات Baidu، مما يجعله خياراً ممتازاً إذا كانت بيئة الإنتاج الخاصة بك تعتمد بشكل كبير على أدوات استدلال Paddle.
YOLOv6-3.0: الإنتاجية الصناعية#
تم إصدار YOLOv6-3.0 بواسطة قسم الذكاء الاصطناعي للرؤية في Meituan، وقد تم تصميمه صراحة ليكون كاشف كائنات من الجيل التالي للتطبيقات الصناعية، مع إعطاء الأولوية للإنتاجية الهائلة على أجهزة GPU.
- المؤلفون: Chuyi Li, Lulu Li, Yifei Geng، وآخرون.
- Organization: Meituan
- التاريخ: 2023-01-13
- Arxiv: 2301.05586
- GitHub: meituan/YOLOv6
أبرز ملامح المعمارية#
يتميز YOLOv6-3.0 بهيكل EfficientRep مصمم خصيصاً لزيادة استخدام الأجهزة إلىقصدره، لا سيما على وحدات معالجة الرسومات NVIDIA باستخدام TensorRT. جلب تحديث v3.0 وحدة تسلسل ثنائية الاتجاه (BiC) إلى الجزء الأوسط (neck)، مما يعزز الاحتفاظ بالميزات المكانية دون تضخيم عدد المعلمات بشكل مفرط. بالإضافة إلى ذلك، فقد قدم استراتيجية تدريب مدعومة بالمثبتات Anchor-Aided Training (AAT) تدمج مزايا الاستقرار المستند إلى المثبتات أثناء تدريب النموذج مع الحفاظ على بنيّة سريعة وخالية من المثبتات أثناء real-time inference.
ومع ذلك، نظراً لأن YOLOv6-3.0 محسّن للغاية لوحدات معالجة الرسومات من فئة الخوادم، فإن مكاسب زمن الوصول تتضاءل أحياناً عند نشره على أجهزة الحافة المقيدة بشدة والتي تعمل بوحدة معالجة مركزية فقط. هذا التخصص يعني أنه يتفوق في بيئات مثل تحليلات الفيديو دون اتصال بالإنترنت، ولكنه قد يتأخر عن النماذج المحسنة ديناميكياً على أجهزة أصغر ومحلية.
جدول مقارنة الأداء#
يوضح الجدول التالي مقاييس الأداء الرئيسية، ويقارن مباشرة بين متغيرات النطاق المختلفة لكلا المعماريين.
| النموذج | الحجم (بكسل) | 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 |
| YOLOv6-3.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
| YOLOv6-3.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
| YOLOv6-3.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
| YOLOv6-3.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
حالات الاستخدام والتوصيات#
يعتمد الاختيار بين PP-YOLOE+ وYOLOv6 على متطلبات مشروعك المحددة، وقيود النشر، وتفضيلات النظام البيئي.
متى تختار PP-YOLOE+#
يعد PP-YOLOE+ خياراً قوياً في الحالات التالية:
- تكامل بيئة PaddlePaddle: المنظمات التي لديها بنية تحتية حالية مبنية على إطار عمل وأدوات Baidu's PaddlePaddle.
- النشر على أجهزة الحافة (Paddle Lite): عند النشر على أجهزة ذات أنوية استنتاج محسّنة خصيصاً لمحرك Paddle Lite أو محرك استنتاج Paddle.
- الكشف عالي الدقة من جانب الخادم: السيناريوهات التي تعطي الأولوية لأقصى دقة للكشف على خوادم GPU قوية حيث لا يمثل الاعتماد على إطار عمل معين مصدر قلق.
متى تختار YOLOv6#
يوصى بـ YOLOv6 لـ:
- النشر المدرك للأجهزة الصناعية: السيناريوهات التي يوفر فيها التصميم المدرك للأجهزة وإعادة تحديد المعلمات الفعال للنموذج أداءً محسناً على أجهزة مستهدفة محددة.
- الكشف السريع في مرحلة واحدة: التطبيقات التي تعطي الأولوية لسرعة الاستدلال الخام على GPU لمعالجة الفيديو الفوري في بيئات خاضعة للتحكم.
- تكامل النظام البيئي لـ Meituan: الفرق التي تعمل بالفعل ضمن حزمة التكنولوجيا والبنية التحتية للنشر الخاصة بـ Meituan.
متى تختار Ultralytics (YOLO26)#
بالنسبة لمعظم المشاريع الجديدة، يقدم Ultralytics YOLO26 أفضل مزيج من الأداء وتجربة المطورين:
- نشر الحافة الخالي من NMS: التطبيقات التي تتطلب استنتاجاً متسقاً ومنخفض زمن الانتقال دون تعقيدات معالجة ما بعد المعالجة باستخدام كبت غير الأقصى.
- بيئات وحدة المعالجة المركزية (CPU) فقط: الأجهزة التي لا تحتوي على تسريع مخصص بوحدة معالجة الرسوميات (GPU)، حيث توفر سرعة استنتاج CPU أسرع بنسبة تصل إلى 43% في YOLO26 ميزة حاسمة.
- الكشف عن الأشياء الصغيرة: السيناريوهات الصعبة مثل صور الطائرات بدون طيار الجوية أو تحليل مستشعرات إنترنت الأشياء (IoT) حيث تعمل ProgLoss و STAL على تعزيز الدقة بشكل كبير على الأشياء الدقيقة.
ميزة Ultralytics: التقدم إلى ما بعد النماذج القديمة#
في حين أن PP-YOLOE+ وYOLOv6-3.0 يقدمان حلولاً مستهدفة، فإن تطوير الذكاء الاصطناعي الحديث يتطلب تدفقات عمل مرنة وفعالة من حيث استهلاك الذاكرة. وهنا توفر Ultralytics Platform تجربة مطور لا مثيل لها. باستخدام واجهة برمجة تطبيقات Python موحدة، يمكنك بسلاسة تدريب النماذج المتطورة والتحقق من صحتها ونشرها دون العبء الهائل للإعدادات الموجود عادةً في مستودعات الأبحاث القديمة.
تدعم نماذج Ultralytics بشكل أصلي مجموعة واسعة من مهام الرؤية تتجاوز الاكتشاف القياسي، بما في ذلك instance segmentation، وpose estimation، وimage classification، واستخراج Oriented Bounding Box (OBB). علاوة على ذلك، فهي محسنة للغاية لاستخدام الذاكرة بشكل أقل أثناء التدريب—وهو تناقض صارخ مع النماذج المستندة إلى المحولات transformer-based models مثل RT-DETR والتي عادةً ما تتطلب تخصيصات هائلة لذاكرة VRAM الخاصة بوحدة معالجة الرسومات.
اكتشف YOLO26: المعيار الجديد#
للمؤسسات التي تتطلع إلى نشر أحدث نماذج الرؤية المتطورة، يعيد Ultralytics YOLO26 (الذي تم إصداره في يناير 2026) تحديد حدود الأداء. وهو يتفوق بشكل ملحوظ على الأجيال القديمة مع العديد من الابتكارات الحاسمة:
- تصميم خالٍ من NMS من البداية إلى النهاية: بناءً على المفاهيم المأخوذة من YOLOv10، يلغي YOLO26 تماماً المعالجة اللاحقة لـ Non-Maximum Suppression (NMS). يضمن هذا النهج المتكامل تماماً استدلالاً يمكن التنبؤ به ومنخفض التأخير للغاية، وهو أمر بالغ الأهمية أنظمة السلامة في الوقت الفعلي.
- استدلال أسرع بنسبة تصل إلى 43% على وحدة المعالجة المركزية: من خلال إزالة خسارة التوزيع البؤري (DFL) من المعمارية، تم تحسين YOLO26 بشكل جذري لحوسبة الحافة والبيئات التي تفتقر إلى تسريع مخصص بـ GPU.
- مُحسِّن MuSGD: من خلال دمج استقرار تدريب نماذج اللغات الكبيرة في نماذج الرؤية، يتيح هذا المُحسِّن الهجين (المستوحى من Moonshot AI) تقارباً سريعاً وجلسات custom training مستقرة للغاية.
- ProgLoss + STAL: تقدم صياغات الخسارة المتقدمة هذه تحسينات ملحوظة في التعرف على الأجسام الصغيرة، وهو أمر حيوي لتطبيقات مثل aerial drone imagery وتحليل المشاهد المزدحمة.
إذا كنت تبني مشروعاً جديداً اليوم، فإننا نوصي بشدة بتجاوز المعماريات القديمة واعتماد YOLO26. إن كفاءة الذاكرة وسرعتها الخالية من NMS تجعل من السهل جداً طرحها في مرحلة الإنتاج.
تنفيذ سلس#
يعد تدريب وتصدير أحدث النماذج باستخدام Ultralytics Python package أمراً بسيطاً بشكل ملحوظ. يوضح المثال التالي كيفية تدريب أحدث نموذج YOLO26 وتصديره إلى ONNX من أجل نشر سريع على الحافة:
from ultralytics import YOLO
# Load the cutting-edge YOLO26 small model
model = YOLO("yolo26s.pt")
# Train the model on the COCO8 example dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on a test image (NMS-free speed)
predict_results = model.predict("https://ultralytics.com/images/bus.jpg")
# Export to ONNX format for edge deployment
model.export(format="onnx")بالنسبة للفرق المدمجة بعمق في سير العمل القديم ولكنها تبحث عن الاستقرار الحديث، يعد استكشاف Ultralytics YOLO11 خطوة انتقالية ممتازة أيضاً، حيث يقدم تنوعاً شاملاً في المهام مدعوماً بنظام Ultralytics البيئي الكامل.