YOLOv5 في مقابل RTDETRv2: تقييم بنيات CNN مقابل Transformer لاكتشاف الكائنات
لقد توسع مشهد الرؤية الحاسوبية بشكل ملحوظ على مدى السنوات القليلة الماضية، مما يوفر للمطورين مجموعة واسعة من البنيات لمعالجة المهام المرئية المعقدة. ومن بين النماذج الأكثر شيوعاً هي الشبكات العصبية التلافيفية (CNNs) ومحولات الاكتشاف (DETRs).
يوفر هذا الدليل مقارنة تقنية متعمقة بين نموذجين محوريين في هذه الفئات: Ultralytics YOLOv5، وهو نموذج يعتمد على CNN يتميز بكفاءة عالية واعتماد واسع النطاق، وRTDETRv2، وهو نموذج كاشف كائنات في الوقت الفعلي يعتمد على تقنية Transformer ويعد الأحدث في مجاله.
Ultralytics YOLOv5: المعيار الصناعي للكفاءة
منذ إطلاقه، أصبح Ultralytics YOLOv5 حجر زاوية في مجتمع الذكاء الاصطناعي، حيث يدعم آلاف التطبيقات التجارية والمشاريع البحثية على مستوى العالم. تم بناؤه بالكامل على إطار عمل PyTorch، وقد أعطى الأولوية لتجربة مطور بديهية دون المساومة على الأداء في الوقت الفعلي.
الخصائص الرئيسية:
- المؤلف: Glenn Jocher
- المنظمة: Ultralytics
- التاريخ: 2020-06-26
- روابط: مستودع GitHub
الهيكلية ونقاط القوة
يستخدم YOLOv5 بنية CNN مبسطة مصممة لتحقيق أقصى قدر من كفاءة استخراج الميزات مع الحفاظ على بصمة ذاكرة منخفضة للغاية. وهو يستخدم عموداً فقرياً CSPDarknet وعنقاً PANet، مما يخلق مزيجاً قوياً لدمج الميزات متعددة النطاقات.
تتمثل إحدى المزايا الأساسية لـ YOLOv5 في توازن الأداء. فهو يحقق مقايضة استثنائية بين السرعة والدقة، مما يجعله خياراً مثالياً لـ نشر النماذج على الأجهزة ذات الموارد المحدودة مثل أجهزة NVIDIA Jetson والهواتف الذكية.
علاوة على ذلك، يتمتع YOLOv5 بـ تعدد استخدامات لا مثيل له. فبخلاف النماذج المحصورة بدقة في تنبؤات المربعات المحيطة، يدعم YOLOv5 أصلاً تصنيف الصور وتجزئة المثيلات، مما يوفر إطار عمل موحداً لمهام مرئية متنوعة. كما أن كفاءة التدريب الخاصة به ملحوظة أيضاً، حيث تتطلب ذاكرة CUDA أقل بكثير أثناء التدريب مقارنة بالبنيات القائمة على Transformer.
نقاط الضعف
نظراً لاعتماده على إطار عمل CNN أقدم، يعتمد YOLOv5 بشكل أساسي على كبت الحد الأقصى غير (NMS) أثناء المعالجة اللاحقة للتخلص من المربعات المحيطة المكررة. وعلى الرغم من تحسينه بشكل كبير ضمن إطار عمل Ultralytics، إلا أن NMS قد يتسبب أحياناً في اختناقات زمن الوصول على وحدات NPU الطرفية المتخصصة.
RTDETRv2: محولات الوقت الفعلي من Baidu
يمثل RTDETRv2 (محول اكتشاف الوقت الفعلي v2) قفزة كبيرة في تطبيق بنيات Transformer على اكتشاف الكائنات في الوقت الفعلي، حيث يعالج أوجه القصور الحسابية التي عانت منها نماذج DETR القياسية تاريخياً.
الخصائص الرئيسية:
- المؤلفون: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang, و Yi Liu
- المنظمة: Baidu
- التاريخ: 2024-07-24
- روابط: ورقة بحثية على Arxiv، مستودع GitHub
الهيكلية ونقاط القوة
يعتمد RTDETRv2 على سابقه من خلال استخدام مشفر هجين وتصميم وحدة فك ترميز مرنة لمعالجة الصور. يوفر آلية الانتباه الذاتي لـ Transformer للنموذج فهماً عالمياً لسياق الصورة، مما يسمح له بأداء جيد بشكل استثنائي في المشاهد المعقدة مع وجود انسداد شديد للكائنات.
من السمات المميزة لـ RTDETRv2 تصميمه الشامل الذي لا يحتاج إلى NMS. فمن خلال التنبؤ باستعلامات الكائنات مباشرة دون الحاجة إلى مربعات الارتكاز أو المعالجة اللاحقة بواسطة NMS، فإنه يبسط خط أنابيب الاستدلال. تحقق هذه البنية mAP (متوسط الدقة) مثيراً للإعجاب على مجموعات بيانات قياسية مثل COCO.
نقاط الضعف
على الرغم من قدراته في الوقت الفعلي، فإن RTDETRv2 لديه متطلبات ذاكرة أعلى بشكل ملحوظ مقارنة بنماذج YOLO. تتوسع آليات الانتباه في Transformer بشكل تربيعي مع طول التسلسل، مما قد يؤدي إلى أخطاء نفاد الذاكرة أثناء التدريب عالي الدقة ما لم يتم استخدام مجموعات GPU ضخمة. بالإضافة إلى ذلك، يفتقر إلى تعدد الاستخدامات الجاهز لنظام Ultralytics البيئي، حيث يركز بشكل أساسي على اكتشاف الكائنات ثنائي الأبعاد فقط دون دعم أصلي للتجزئة أو تقدير الوضع.
جدول مقارنة الأداء
لتقييم هذه البنيات بموضوعية، قمنا بتجميع مقاييس أدائها. تمثل القيم المميزة بـ الخط العريض المقاييس الأكثر كفاءة أو الأعلى أداءً عبر النطاقات التي تم اختبارها.
| النموذج | الحجم (بكسل) | mAPval 50-95 | السرعة CPU ONNX (ملي ثانية) | السرعة T4 TensorRT10 (ملي ثانية) | المعلمات (مليون) | FLOPs (مليار) |
|---|---|---|---|---|---|---|
| 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 |
| RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20 | 60 |
| RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36 | 100 |
| RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42 | 136 |
| RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76 | 259 |
بينما يحقق RTDETRv2-x أعلى mAP مطلق، فإنه يتطلب ما يقرب من 30 ضعفاً من معاملات YOLOv5n. بالنسبة للتطبيقات عالية السرعة التي تعمل على أجهزة محدودة، توفر نماذج Ultralytics باستمرار أفضل كفاءة حسابية.
ميزة نظام Ultralytics البيئي
When moving a model from a research notebook to a production environment, the software surrounding the model is as important as the neural network architecture. The Well-Maintained Ecosystem provided by Ultralytics dramatically accelerates the development lifecycle.
سهولة استخدام لا تضاهى
تعطي نماذج Ultralytics الأولوية لتجربة مستخدم مبسطة للغاية. سواء كنت ترغب في تدريب نموذج مخصص، أو إجراء التحقق، أو التصدير إلى تنسيقات خاصة بالأجهزة مثل TensorRT أو ONNX، فإن Ultralytics Python API يجعل ذلك ممكناً في بضعة أسطر فقط من التعليمات البرمجية.
إليك مثال عملي للتعليمات البرمجية يوضح مدى بساطة التدريب وتشغيل الاستدلال باستخدام نموذج Ultralytics:
from ultralytics import YOLO
# Initialize the model (automatically downloads the weights)
model = YOLO("yolov5s.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device="cpu")
# Perform inference on an online image
inference_results = model.predict("https://ultralytics.com/images/bus.jpg")
# Display the resulting image with bounding boxes
inference_results[0].show()تدعم واجهة برمجة التطبيقات البسيطة والموحدة هذه أصلاً عمليات دمج تتبع التجارب مع أدوات مثل Weights & Biases وComet، مما يسمح للمطورين بتسجيل المقاييس بسلاسة دون كتابة تعليمات برمجية نمطية معقدة.
حالات الاستخدام والتوصيات
يعتمد الاختيار بين YOLOv5 وRT-DETR على متطلبات مشروعك المحددة، وقيود النشر، وتفضيلات النظام البيئي.
متى تختار YOLOv5
YOLOv5 هو خيار قوي لـ:
- أنظمة الإنتاج المثبتة: عمليات النشر الحالية التي يتم فيها تقدير سجل YOLOv5 الطويل من الاستقرار، والتوثيق المكثف، والدعم المجتمعي الهائل.
- التدريب بموارد محدودة: البيئات ذات موارد GPU المحدودة حيث يكون خط أنابيب التدريب الفعال ومتطلبات الذاكرة الأقل لـ YOLOv5 ميزة كبيرة.
- دعم واسع لتنسيقات التصدير: المشاريع التي تتطلب النشر عبر العديد من التنسيقات بما في ذلك ONNX، و TensorRT، و CoreML، و TFLite.
متى تختار RT-DETR
يُوصى بـ RT-DETR لـ:
- أبحاث الاكتشاف القائمة على Transformer: المشاريع التي تستكشف آليات الانتباه ومعماريات Transformer لاكتشاف الأشياء بشكل شامل (end-to-end) بدون NMS.
- سيناريوهات الدقة العالية مع زمن انتقال مرن: التطبيقات التي تكون فيها دقة الاكتشاف هي الأولوية القصوى ويكون قبول زمن انتقال استدلال أعلى قليلاً مقبولاً.
- اكتشاف الأشياء الكبيرة: المشاهد التي تحتوي بشكل أساسي على أشياء متوسطة إلى كبيرة حيث توفر آلية الانتباه العالمي للمحولات ميزة طبيعية.
متى تختار Ultralytics (YOLO26)
بالنسبة لمعظم المشاريع الجديدة، يوفر Ultralytics YOLO26 أفضل مزيج من الأداء وتجربة المطورين:
- نشر الحافة الخالي من NMS: التطبيقات التي تتطلب استدلالاً ثابتاً ومنخفض التأخير دون تعقيد المعالجة اللاحقة لـ Non-Maximum Suppression.
- بيئات تعتمد فقط على CPU: الأجهزة التي لا تحتوي على تسريع GPU مخصص، حيث توفر سرعة استدلال YOLO26 الأسرع بنسبة تصل إلى 43% على CPU ميزة حاسمة.
- اكتشاف الكائنات الصغيرة: السيناريوهات الصعبة مثل صور الطائرات بدون طيار أو تحليل مستشعرات إنترنت الأشياء حيث تعزز ProgLoss و STAL الدقة بشكل كبير على الكائنات الصغيرة جداً.
نتطلع إلى المستقبل: YOLO11 وYOLO26
إذا كنت تبدأ مشروع رؤية جديداً اليوم، فمن المستحسن بشدة استكشاف أحدث أجيال نماذج Ultralytics.
بينما لا يزال YOLOv5 موثوقاً للغاية، يوفر YOLO11 دقة محسنة ومجموعة موسعة من المهام بما في ذلك اكتشاف المربع المحيط الموجه (OBB).
والأهم من ذلك، يجمع YOLO26 المتطور بين أفضل ما في العالمين. فهو ينفذ تصميماً شاملاً لا يحتاج إلى NMS (تم استخدامه لأول مرة في YOLOv10)، مما يلغي عبء المعالجة اللاحقة مع الحفاظ على كفاءة CNN. يقدم YOLO26 أيضاً محسن MuSGD، المستوحى من ابتكارات تدريب LLM، من أجل تقارب أسرع. مع إزالة DFL (تمت إزالة Distribution Focal Loss لتبسيط التصدير وتحسين التوافق مع الأجهزة الطرفية/منخفضة الطاقة)، يقدم YOLO26 استدلالاً أسرع لوحدة المعالجة المركزية بنسبة تصل إلى 43%، مما يجعله الخيار الأفضل على الإطلاق للذكاء الاصطناعي الطرفي. بالإضافة إلى ذلك، توفر ProgLoss + STAL وظائف خسارة محسنة مع تحسينات ملحوظة في التعرف على الكائنات الصغيرة، وهو أمر بالغ الأهمية لإنترنت الأشياء، والروبوتات، والصور الجوية.
خاتمة
يعتمد الاختيار بين YOLOv5 وRTDETRv2 بشكل كبير على قيود النشر الخاصة بك. يدفع RTDETRv2 حدود mAP باستخدام آليات انتباه قوية في Transformer ولكنه يأتي بتكلفة باهظة في الذاكرة والعبء الحسابي.
على العكس من ذلك، يوفر Ultralytics YOLOv5 حلاً مجرباً ومُحسناً للغاية ومتعدد الاستخدامات يعمل بسلاسة في كل مكان - من خوادم السحابة إلى وحدات التحكم الدقيقة. بالنسبة للفرق التي تبحث عن أعلى دقة ممكنة جنباً إلى جنب مع أدوات نشر سلسة، فإن الترقية داخل نظام Ultralytics البيئي إلى YOLO26 توفر الحل النهائي والأحدث لتطبيقات الرؤية بالذكاء الاصطناعي الحديثة.