RTDETRv2 مقابل YOLOv8: مقارنة فنية
يعد اختيار نموذج الكشف عن الكائنات المناسب قرارًا حاسمًا يوازن بين الدقة والسرعة والتكلفة الحسابية. تقدم هذه الصفحة مقارنة فنية مفصلة بين بنيتين قويتين: RTDETRv2، وهو نموذج قائم على المحولات من Baidu، و Ultralytics YOLOv8، وهو نموذج شبكة عصبية التفافية (CNN) حديث. سوف نتعمق في الاختلافات المعمارية وقياسات الأداء وحالات الاستخدام المثالية لمساعدتك في اختيار أفضل نموذج لمشروعك.
RTDETRv2: الجيل الثاني من المحولات للكشف في الوقت الحقيقي
RTDETRv2 (محول الكشف في الوقت الحقيقي v2) هو كاشف كائنات حديث يستفيد من قوة محولات الرؤية لتحقيق دقة عالية مع الحفاظ على الأداء في الوقت الفعلي. وهو يمثل تطورًا لبنية DETR (محول الكشف) الأصلية، والمحسّنة للسرعة.
المؤلفون: ويني يو ليف، يان زهاو، تشينياو تشانغ، كوي هوانغ، قوانتشونغ وانغ، و يي ليو
المنظمة: Baidu
التاريخ: 2023-04-17 (RT-DETR الأولي)، 2024-07-24 (تحسينات RT-DETRv2)
Arxiv: https://arxiv.org/abs/2304.08069، https://arxiv.org/abs/2407.17140
GitHub: https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch
المستندات: https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch#readme
البنية
يستخدم RTDETRv2 هندسة معمارية هجينة تجمع بين CNN تقليدي كعمود فقري مع وحدة ترميز وفك ترميز قائمة على المحولات. يستخرج العمود الفقري CNN خرائط الميزات الأولية، والتي يتم إدخالها بعد ذلك في المحول. تسمح آلية الانتباه الذاتي الخاصة بالمحول للنموذج بالتقاط العلاقات العامة بين أجزاء مختلفة من الصورة. يعد فهم السياق العام هذا عاملاً رئيسيًا يميزه عن النماذج القائمة على CNN البحتة ويمكّن RTDETRv2 من التفوق في الكشف عن الأجسام في المشاهد المعقدة والمزدحمة.
نقاط القوة
- دقة عالية: تتيح بنية المحولات لـ RTDETRv2 تحقيق درجات mAP ممتازة، خاصة في مجموعات البيانات ذات الكائنات الكثيفة أو الصغيرة حيث يكون السياق العام مفيدًا.
- استخلاص ميزات قوي: من خلال معالجة سياق الصورة بأكمله مرة واحدة، يمكنه التعامل بشكل أفضل مع الانسدادات وعلاقات الكائنات المعقدة.
- الوقت الفعلي على GPU: عند تسريع RTDETRv2 بأدوات مثل NVIDIA TensorRT، يمكنه تحقيق سرعات استدلال في الوقت الفعلي على وحدات معالجة الرسوميات GPU المتطورة.
نقاط الضعف
- تكلفة حسابية عالية: النماذج القائمة على المحولات تستهلك موارد بشكل كبير. يحتوي RTDETRv2 على عدد معلمات وعمليات حسابية (FLOPs) أعلى مقارنةً بـ YOLOv8، مما يتطلب أجهزة أقوى.
- تدريب بطيء واستخدام عالٍ للذاكرة: يعد تدريب المحولات مكلفًا حسابيًا وبطيئًا. غالبًا ما تتطلب ذاكرة CUDA أكثر بكثير من النماذج القائمة على CNN مثل YOLOv8، مما يجعلها غير متاحة للمستخدمين ذوي موارد الأجهزة المحدودة.
- استدلال أبطأ لوحدة المعالجة المركزية (CPU): على الرغم من سرعته على وحدات معالجة الرسومات (GPU)، إلا أن أداءه على وحدات المعالجة المركزية (CPU) أقل بكثير من أداء شبكات CNN المحسّنة للغاية مثل YOLOv8.
- نظام بيئي محدود: يفتقر RTDETRv2 إلى النظام البيئي الواسع والموحد الذي توفره Ultralytics. يتضمن ذلك عددًا أقل من عمليات التكامل ووثائق أقل شمولاً ومجتمعًا أصغر للدعم.
Ultralytics YOLOv8: السرعة والتنوع وسهولة الاستخدام
Ultralytics YOLOv8 هو أحدث تكرار في عائلة YOLO (You Only Look Once) الناجحة للغاية. تم تطويره بواسطة Ultralytics، ويضع معيارًا جديدًا للسرعة والدقة وسهولة الاستخدام، مما يجعله الخيار الأفضل لمجموعة واسعة من مهام رؤية الكمبيوتر.
المؤلفون: جلين جوتشر، أيوش شوراسيا، و جينغ تشيو
المنظمة: Ultralytics
التاريخ: 2023-01-10
GitHub: https://github.com/ultralytics/ultralytics
المستندات: https://docs.ultralytics.com/models/yolov8/
البنية
يتميز YOLOv8 ببنية حديثة أحادية المرحلة anchor-free. يستخدم عمودًا فقريًا جديدًا CSP (Cross Stage Partial) ورأسًا منفصلاً، يفصل بين مهام التصنيف والانحدار لتحسين الدقة. تم تحسين البنية بأكملها بشكل كبير لتحقيق توازن استثنائي بين الأداء والكفاءة، مما يتيح تشغيلها على نطاق واسع من الأجهزة، من وحدات معالجة الرسوميات السحابية القوية إلى الأجهزة الطرفية ذات الموارد المحدودة.
نقاط القوة
- موازنة الأداء: يوفر YOLOv8 توازنًا رائعًا بين السرعة والدقة، مما يجعله مناسبًا لتطبيقات العالم الحقيقي المتنوعة حيث يكون كلا المقياسين حاسمين.
- تنوع الاستخدامات: على عكس RTDETRv2، الذي يُعدّ في الأساس كاشفًا للكائنات، فإن YOLOv8 هو إطار عمل متعدد المهام يدعم أصلاً الكشف عن الكائنات، وتجزئة المثيلات، وتصنيف الصور، وتقدير الوضعية، والكشف عن الكائنات الموجهة (OBB).
- سهولة الاستخدام: تم تصميم YOLOv8 لتوفير تجربة مستخدم مبسطة مع واجهة برمجة تطبيقات Python بسيطة و CLI قوي. تجعل الوثائق الشاملة والمجتمع النشط من السهل على المطورين البدء.
- كفاءة التدريب والذاكرة المنخفضة: يتم تدريب YOLOv8 بشكل أسرع بكثير ويتطلب ذاكرة CUDA أقل بكثير من RTDETRv2. وهذا يجعله أكثر سهولة وفعالية من حيث التكلفة للتدريب المخصص.
- نظام بيئي مُدار بشكل جيد: توفر Ultralytics نظامًا بيئيًا قويًا مع تحديثات متكررة والعديد من عمليات التكامل وأدوات مثل Ultralytics HUB لإدارة سلسة للبيانات والتدريب.
نقاط الضعف
- السياق الشامل: على الرغم من فعاليته العالية، قد لا يلتقط هيكله المستند إلى CNN سياقًا شاملاً بنفس شمولية المحول (transformer) في بعض السيناريوهات المتخصصة ذات العلاقات المعقدة للغاية بين الكائنات. ومع ذلك، بالنسبة لمعظم التطبيقات، فإن أدائه أكثر من كافٍ.
مقارنة أداء مباشرة: RTDETRv2 ضد YOLOv8
تسلط مقارنة الأداء الضوء على فلسفات التصميم المختلفة للنموذجين. يسعى RTDETRv2 لتحقيق أقصى قدر من الدقة، في حين تم تصميم YOLOv8 لتحقيق توازن فائق بين السرعة والدقة والكفاءة عبر مجموعة من الأجهزة.
النموذج | الحجم (بالبكسل) |
mAPval 50-95 |
السرعة وحدة المعالجة المركزية CPU ONNX (بالمللي ثانية) |
السرعة T4 TensorRT10 (بالمللي ثانية) |
المعلمات (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
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 |
YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
من الجدول، يمكننا استخلاص عدة استنتاجات:
- الدقة: يتفوق أكبر نموذج RTDETRv2-x قليلاً على YOLOv8x في mAP. ومع ذلك، بشكل عام، توفر نماذج YOLOv8 دقة تنافسية للغاية لحجمها. على سبيل المثال، يتطابق YOLOv8l تقريبًا مع RTDETRv2-l في الدقة مع عدد أقل من FLOPs.
- سرعة وحدة معالجة الرسوميات (GPU): YOLOv8 أسرع بشكل ملحوظ، خاصةً المتغيرات الأصغر. YOLOv8n أسرع بأكثر من 3 مرات من أصغر نموذج RTDETRv2، مما يجعله مثاليًا لتطبيقات ذات معدل إطارات عالي. حتى أكبر نموذج YOLOv8x أسرع من نظيره RTDETRv2-x.
- سرعة وحدة المعالجة المركزية (CPU): يُظهر YOLOv8 ميزة كبيرة في استدلال وحدة المعالجة المركزية، وهو عامل حاسم للنشر على العديد من الأجهزة الطرفية والخوادم القياسية بدون وحدات معالجة رسوميات (GPU) مخصصة.
- الكفاءة: نماذج YOLOv8 أكثر كفاءة بكثير من حيث المعلمات وعمليات الفاصلة العائمة في الثانية (FLOPs). يحقق YOLOv8x نفس دقة RTDETRv2-x تقريبًا مع عدد أقل من المعلمات وعمليات الفاصلة العائمة في الثانية (FLOPs)، مما يدل على كفاءة معمارية فائقة.
التدريب والنشر
عندما يتعلق الأمر بالتدريب، يكون الفرق صارخًا. يعد تدريب RTDETRv2 عملية كثيفة الاستخدام للموارد تتطلب وحدات معالجة رسومات (GPUs) متطورة مع كميات كبيرة من VRAM ويمكن أن تستغرق قدرًا كبيرًا من الوقت.
في المقابل، تم تصميم إطار عمل Ultralytics YOLOv8 لتحقيق كفاءة التدريب. فهو يسمح بالتدريب المخصص السريع مع متطلبات ذاكرة أقل، مما يجعله في متناول مجموعة واسعة من المطورين. يعد سير العمل المبسط، من إعداد البيانات إلى تدريب النموذج والتحقق من صحته، ميزة كبيرة.
بالنسبة للنشر، يتألق تنوع YOLOv8. يمكن تصديره بسهولة إلى العديد من التنسيقات مثل ONNX و TensorRT و CoreML و OpenVINO، مما يضمن الأداء الأمثل على أي نظام أساسي تقريبًا، من الخوادم السحابية إلى الهواتف المحمولة والأنظمة المدمجة مثل Raspberry Pi.
الخلاصة: أي نموذج يجب أن تختاره؟
RTDETRv2 هو نموذج قوي للباحثين والفرق التي لديها موارد حسابية كبيرة والذين يحتاجون إلى استخلاص الجزء الأخير من النسبة المئوية في الدقة لمهام الكشف عن الأجسام المعقدة، كما هو الحال في القيادة الذاتية أو تحليل صور الأقمار الصناعية.
ومع ذلك، بالنسبة للغالبية العظمى من المطورين والباحثين والشركات، يعد Ultralytics YOLOv8 الفائز الواضح. فهو يوفر حلاً أكثر عملية وفعالية من خلال تقديم توازن استثنائي بين السرعة والدقة. إن مزاياه الرئيسية—تعدد الاستخدامات عبر مهام متعددة وسهولة الاستخدام وكفاءة التدريب الفائقة ومتطلبات الموارد المنخفضة ونظام بيئي شامل ومدعوم جيدًا—تجعله الخيار المثالي لبناء تطبيقات رؤية الكمبيوتر قوية في العالم الحقيقي بسرعة وكفاءة. سواء كنت تقوم بالنشر على خادم متطور أو جهاز طرفي منخفض الطاقة، فإن YOLOv8 يوفر حلاً قابلاً للتطوير وعالي الأداء وسهل الاستخدام.
استكشف نماذج أخرى
إذا كنت مهتمًا باستكشاف نماذج أخرى، فراجع هذه المقارنات الإضافية في سلسلة مقارنة النماذج الخاصة بنا:
- RT-DETR مقابل YOLOv9
- YOLOv8 ضد YOLOv9
- YOLOv8 ضد YOLOv5
- EfficientDet ضد YOLOv8
- YOLOv8 ضد YOLOv7
- استكشف أحدث النماذج مثل YOLOv10 و YOLO11