YOLOv10 مقابل YOLOX#
يشهد مجال الرؤية الحاسوبية تطورات سريعة في بُنى اكتشاف الأجسام في الوقت الفعلي. وتستعرض هذه المقارنة التقنية المفصّلة نموذجين مؤثرين أسهما في دفع حدود الكفاءة ونُهج التصميم: YOLOv10 وYOLOX. ومن خلال فحص الاختلافات المعمارية ومقاييس الأداء ومنهجيات التدريب، يستطيع المطورون والباحثون اتخاذ قرارات مستنيرة لنشر أنظمة رؤية قوية.
خلفية النماذج ونشأتها#
يوفر فهم أصول نماذج التعلم العميق هذه سياقًا قيّمًا لأهدافها المعمارية وحالات الاستخدام المستهدفة.
YOLOv10: الاستغناء عن NMS لتحقيق اكتشاف شامل من البداية إلى النهاية#
طُوّر YOLOv10 لمعالجة اختناقات زمن الاستجابة المزمنة، وقدم نهجًا أصيلًا شاملًا من البداية إلى النهاية لعائلة YOLO.
- المؤلفون: Ao Wang وHui Chen وLihao Liu وآخرون
- الجهة: جامعة تسينغهوا
- التاريخ: 23 مايو 2024
- ArXiv: 2405.14458
- GitHub: THU-MIG/yolov10
- الوثائق: وثائق Ultralytics YOLOv10
YOLOX: ردم الفجوة بين البحث والصناعة#
ظهر YOLOX بوصفه إصدارًا من تصميم YOLO التقليدي لا يعتمد على المراسي، مقدمًا منهجية أبسط بأداء تنافسي، وموجهًا تحديدًا إلى تسهيل النشر في الأوساط الصناعية.
- المؤلفون: Zheng Ge وSongtao Liu وFeng Wang وZeming Li وJian Sun
- المؤسسة: Megvii
- التاريخ: 18 يوليو 2021
- ArXiv: 2107.08430
- GitHub: Megvii-BaseDetection/YOLOX
- التوثيق: التوثيق الرسمي لـ YOLOX
تعرّف على مزيد من المعلومات عن YOLOX
أبرز الملامح المعمارية والابتكارات#
يختلف كلا الإطارين عن كواشف الأجسام التقليدية القائمة على المراسي، لكنهما يعالجان مشكلات مختلفة في مسار اكتشاف الأجسام.
بنية YOLOX#
أدخل YOLOX عدة تحديثات محورية إلى المنظومة في عام 2021. وتمثل إسهامه الأساسي في التحول إلى تصميم كاشف لا يعتمد على المراسي. ومن خلال الاستغناء عن مربعات المراسي المحددة مسبقًا، قلّل YOLOX بدرجة كبيرة عدد معلمات التصميم وضبط المعلمات الاستدلالية المطلوبة لمجموعات البيانات المختلفة.
علاوة على ذلك، يستخدم YOLOX رأسًا منفصلًا يفصل بين مهمتي التصنيف والانحدار. وقد عالج هذا التعارض بين الهدفين، وسرّع التقارب أثناء التدريب بدرجة كبيرة. كما يستخدم SimOTA لتعيين التسميات بأسلوب متقدم، ما يحسن التعامل مع المشاهد المزدحمة وحالات الاحتجاب الشائعة في مجموعة بيانات COCO.
تقلل التصاميم التي لا تعتمد على المراسي، مثل التصميم الذي ابتكره YOLOX، تعقيد ضبط النماذج بدرجة كبيرة. فلم يعد المطورون بحاجة إلى إجراء تجميع k-means على مجموعات بيانات مخصصة لتحديد الأحجام المثلى لمربعات المراسي، ما يوفر وقتًا ثمينًا في مرحلة الإعداد.
بنية YOLOv10#
على الرغم من أن YOLOX حسّن رأس الاكتشاف، فإنه ظل يعتمد على الكبت غير الأقصى (NMS) أثناء الاستدلال، ما يؤدي إلى تفاوت زمن الاستجابة. استهدف YOLOv10 هذا القصور تحديدًا من خلال تقديم استراتيجية التعيين المزدوج المتسق للتدريب دون NMS. يستخدم أثناء التدريب تعيينات التسميات من واحد إلى متعدد ومن واحد إلى واحد، لكنه يتخلى أثناء الاستدلال عن رأس التعيين من واحد إلى متعدد بالكامل، ليخرج تنبؤات واضحة من دون معالجة لاحقة باستخدام NMS.
يتميز YOLOv10 أيضًا بتصميم شامل للنموذج يوازن بين الكفاءة والدقة. فهو يتضمن رؤوس تصنيف خفيفة الوزن وخفضًا لأخذ العينات يفصل بين القنوات والمعلومات المكانية، ما يقلل عدد المعلمات وعمليات FLOPs بدرجة كبيرة من دون التضحية بالدقة.
مقارنة الأداء#
يكشف تقييم هذه النماذج على أجهزة مثل وحدة معالجة الرسوميات NVIDIA T4 عن مزايا مختلفة بحسب الحجم. وفيما يلي جدول المقارنة الشامل.
| النموذج | الحجم (بكسل) | mAPالتحقق 50-95 | السرعة CPU ONNX (مللي ثانية) | السرعة T4 TensorRT10 (ms) | المعاملات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 38.5 | - | 1.84 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.3 | - | 2.49 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.1 | - | 4.74 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.5 | - | 5.74 | 19.1 | 92.0 |
| YOLOv10l | 640 | 53.2 | - | 7.28 | 24.4 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 10.70 | 29.5 | 160.4 |
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
كما يتضح أعلاه، يتوسع YOLOv10 بكفاءة استثنائية. يحقق الإصدار YOLOv10x أعلى دقة (54.4 mAP)، بينما يوفر الإصدار YOLOv10n أسرع استدلال بفضل التكامل مع TensorRT. وفي المقابل، يتميز نموذج YOLOX nano الأقدم بأصغر حجم إجمالي، ما يجعله ملائمًا للبيئات شديدة القيود.
منهجيات التدريب ومتطلبات الموارد#
عند تنفيذ النماذج في بيئات الإنتاج، لا تقل منظومة التدريب ومتطلبات الموارد أهمية عن سرعة الاستدلال الخام.
غالبًا ما يعتمد YOLOX على إعدادات بيئة أقدم قد يصعب إدارتها. فضلًا عن ذلك، تتطلب قاعدة شفرته القديمة مزيدًا من الشفرة التمهيدية لإجراء التدريب الموزع على وحدات معالجة رسومية متعددة أو التحسين باستخدام الدقة المختلطة.
على النقيض من ذلك، يتكامل YOLOv10 بسلاسة مع مسارات عمل PyTorch الحديثة، لكن منظومة Ultralytics هي ما يغير تجربة المطور حقًا. وتتميز نماذج Ultralytics باستهلاك أقل بكثير لذاكرة CUDA أثناء التدريب مقارنة بالبنى المعتمدة على Transformer مثل RT-DETR.
مثال على الشفرة: تدريب مبسط#
باستخدام واجهة برمجة التطبيقات الموحدة من Ultralytics، يمكنك تدريب أحدث النماذج بسلاسة باستخدام بضعة أسطر فقط من Python. ويجنبك ذلك ترجمة مشغلات C++ يدويًا أو التعامل مع ملفات إعداد معقدة.
from ultralytics import YOLO
# تهيئة نموذج YOLOv10 مدرّب مسبقًا
model = YOLO("yolov10s.pt")
# تدريب النموذج على مجموعة بيانات COCO8
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# التحقق من أداء النموذج
metrics = model.val()
# تصدير النموذج المحسّن إلى تنسيق ONNX
model.export(format="onnx")تتيح هذه الصياغة البسيطة الوصول الفوري إلى الدقة المختلطة التلقائية وزيادة البيانات تلقائيًا والتكامل مع أدوات مثل Weights & Biases، كل ذلك جاهزًا للاستخدام.
حالات الاستخدام والتوصيات#
يعتمد الاختيار بين YOLOv10 وYOLOX على متطلبات مشروعك المحددة وقيود النشر وتفضيلاتك المتعلقة بالمنظومة.
متى تختار YOLOv10#
يُعد YOLOv10 خيارًا قويًا لما يلي:
- الكشف الآني دون NMS: التطبيقات التي تستفيد من الكشف الشامل من البداية إلى النهاية من دون الكبت غير الأقصى، مما يقلل تعقيد النشر.
- موازنة السرعة والدقة: المشاريع التي تتطلب توازناً جيداً بين سرعة الاستدلال ودقة الكشف عبر مقاييس نماذج متعددة.
- التطبيقات ذات زمن الاستجابة الثابت: سيناريوهات النشر التي تتطلب أوقات استدلال قابلة للتنبؤ، مثل الروبوتات أو الأنظمة ذاتية التشغيل.
متى تختار YOLOX#
يوصى باستخدام YOLOX في الحالات التالية:
- أبحاث الاكتشاف دون مراسي: الأبحاث الأكاديمية التي تستخدم بنية YOLOX النظيفة والخالية من المراسي أساسًا لتجربة رؤوس اكتشاف أو دوال خسارة جديدة.
- الأجهزة الطرفية فائقة الخفة: النشر على المتحكمات الدقيقة أو الأجهزة المحمولة القديمة، حيث يكون الحجم الصغير للغاية لإصدار YOLOX-Nano (0.91M معلمة) أمرًا بالغ الأهمية.
- دراسات إسناد التسميات باستخدام SimOTA: مشاريع بحثية تدرس استراتيجيات إسناد التسميات القائمة على النقل الأمثل وتأثيرها في تقارب التدريب.
متى تختار Ultralytics (YOLO26)#
بالنسبة إلى معظم المشاريع الجديدة، يقدم Ultralytics YOLO26 أفضل مزيج من الأداء وتجربة المطور:
- النشر الطرفي دون NMS: التطبيقات التي تتطلب استدلالاً ثابتاً بزمن استجابة منخفض، من دون تعقيد المعالجة اللاحقة للكبت غير الأقصى.
- البيئات التي تعتمد على CPU فقط: الأجهزة التي لا تتضمن تسريعاً مخصصاً بواسطة GPU، حيث يمنح الاستدلال الأسرع على CPU بنسبة تصل إلى 43% في YOLO26 ميزة حاسمة.
- اكتشاف الأجسام الصغيرة: السيناريوهات الصعبة مثل صور الطائرات المسيّرة الجوية أو تحليل مستشعرات إنترنت الأشياء، حيث يعزز ProgLoss وSTAL دقة اكتشاف الأجسام الدقيقة بدرجة كبيرة.
مستقبل الذكاء الاصطناعي للرؤية: ظهور YOLO26#
رغم أن YOLOv10 وYOLOX يمثلان محطتين بارزتين، فإن مشهد الرؤية الحاسوبية يواصل التقدم بلا توقف. وبالنسبة إلى المطورين الذين يبدؤون مشاريع جديدة اليوم، فإن Ultralytics YOLO26 هو التوصية الحاسمة.
صدر Ultralytics YOLO26 في يناير 2026، وبنى على الإنجاز التأسيسي الذي حققه تصميم شامل من البداية إلى النهاية ودون NMS، والذي ابتكره YOLOv10، مع تحسينه لتحقيق استقرار وسرعة أكبر.
يتميز YOLO26 بإدخال قفزات نوعية كبيرة عدة إلى الأمام:
- استدلال أسرع على CPU بنسبة تصل إلى 43%: من خلال إزالة خسارة البؤرة التوزيعية (DFL) على نحو مدروس، يحقق YOLO26 أداءً أفضل بكثير على الأجهزة الطرفية التي لا تحتوي على وحدات معالجة رسومية.
- محسّن MuSGD: استُلهم هذا النهج الهجين المبتكر من استقرار تدريب نماذج اللغة الكبيرة؛ إذ يجمع بين SGD وMuon لضمان تقارب أسرع وجولات تدريب عالية الاستقرار.
- ProgLoss + STAL: تحقق دوال الخسارة المتقدمة هذه تحسينات ملحوظة في التعرف على الأجسام الصغيرة، وهو عامل مهم في الصور الجوية ومستشعرات إنترنت الأشياء.
- تعدد استخدامات لا مثيل له: بخلاف YOLOX، الذي يقتصر على اكتشاف الأجسام، يدعم YOLO26 أصيلًا تقسيم الكائنات وتقدير الوضعيات وتصنيف الصور واكتشاف مربعات الإحاطة الموجهة (OBB) ضمن مكتبة موحدة واحدة.
للوصول إلى الإنتاج بأبسط طريقة، يستطيع المطورون استخدام منصة Ultralytics لتعليق مجموعات البيانات، وتدريب نماذج YOLO26 على السحابة، ونشرها على أي جهاز طرفي دون الحاجة إلى أي إعداد.
تطبيقات واقعية#
يحدد اختيار النموذج المناسب نجاح عمليات النشر في العالم الحقيقي عبر قطاعات مختلفة.
تحليلات الفيديو عالية السرعة#
لمعالجة تدفقات الفيديو الكثيفة، مثل إدارة حركة المرور في المدن الذكية، يوفر YOLOv10 ميزة كبيرة بفضل المعالجة اللاحقة الخالية من NMS. ويؤدي التخلص من اختناق NMS إلى زمن استجابة منخفض ومتسق، ما يجعله مثاليًا للاستخدام مع خوارزميات التتبع مثل BoT-SORT.
النشر الطرفي على الأنظمة القديمة#
في الإعدادات الأكاديمية القديمة أو تطبيقات Android القديمة المحسّنة بشدة لنُهج الالتفاف الخالصة، قد تظل النماذج الأصغر مثل YOLOX-Tiny ملائمة لحالات استخدام متخصصة، حيث يُقبل الإبقاء على بيئات PyTorch القديمة بوصفه حلًا وسطًا.
الأجهزة الطرفية الحديثة وأجهزة إنترنت الأشياء#
في عمليات النشر على أجهزة الجيل التالي، مثل الروبوتات والطائرات المسيّرة وتحليل رفوف المتاجر، يُعد YOLO26 الحل الأمثل. ويجعله انخفاض زمن الاستجابة على CPU بدرجة كبيرة وقدرته الفائقة على اكتشاف الأجسام الصغيرة مؤهلًا على نحو فريد للملاحة الذاتية وإدارة المخزون التفصيلية.
ولإثراء أدواتك في التعلم العميق بمقارنات إضافية، يمكنك أيضًا استكشاف كيفية مقارنة هذه النماذج ببدائل مثل YOLO11 المرن أو RT-DETR المدعوم بـ Transformer.