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 عدة تحديثات جوهرية إلى المنظومة في عام 2021. وتمثلت مساهمته الأساسية في التحول إلى تصميم كاشف لا يعتمد على المراسي. ومن خلال إلغاء مربعات المراسي المحددة مسبقًا، خفّض YOLOX بدرجة كبيرة عدد معلمات التصميم والضبط الاستدلالي المطلوب لمجموعات البيانات المختلفة.
علاوة على ذلك، يستخدم YOLOX رأسًا مفككًا يفصل بين مهمتَي التصنيف والانحدار. وقد عالج ذلك التعارض بين الهدفين، مسرّعًا التقارب بدرجة كبيرة أثناء التدريب. كما يستخدم SimOTA لإسناد التسميات المتقدم، مما يحسّن التعامل مع المشاهد المزدحمة وحالات الحجب الشائعة في مجموعة بيانات COCO.
تقلل التصميمات التي لا تعتمد على المراسي، مثل التصميم الذي ابتكره YOLOX، تعقيد ضبط النموذج بدرجة كبيرة. فلم يعد المطورون بحاجة إلى إجراء تجميع k-means على مجموعات البيانات المخصصة لتحديد أحجام مربعات المراسي المثلى، مما يوفر وقتًا ثمينًا في مرحلة الإعداد.
هندسة YOLOv10#
مع أن YOLOX حسّن رأس الاكتشاف، فإنه ظل يعتمد على قمع غير الأعظمي (NMS) أثناء الاستدلال، مما يسبب تباينًا في زمن الاستجابة. استهدف YOLOv10 هذا القصور تحديدًا من خلال تقديم استراتيجية إسناد مزدوج متسق للتدريب الخالي من NMS. وأثناء التدريب، يستخدم إسنادَي تسميات واحد إلى متعدد وواحد إلى واحد، لكنه أثناء الاستدلال يتخلى تمامًا عن رأس الواحد إلى متعدد، ويخرج تنبؤات نظيفة دون معالجة لاحقة باستخدام NMS.
يتميز YOLOv10 أيضًا بتصميم شامل للنموذج تقوده الكفاءة والدقة. إذ يدمج رؤوس تصنيف خفيفة الوزن، وعمليات خفض عينات مفككة مكانيًا وقنويًا، مما يقلل بدرجة كبيرة عدد المعلمات وFLOPs دون التضحية بالدقة.
مقارنة الأداء#
يكشف تقييم هذه النماذج على عتاد مثل NVIDIA T4 GPU عن مزايا متميزة تبعًا للحجم. يرد أدناه جدول المقارنة الشامل.
| النموذج | الحجم (بكسل) | mAPval 50-95 | السرعة CPU ONNX (مللي ثانية) | السرعة T4 TensorRT10 (مللي ثانية) | المعاملات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 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 على إعدادات بيئة قديمة يصعب إدارتها. علاوة على ذلك، تتطلب قاعدة شفرته القديمة مزيدًا من الشفرة التمهيدية لتحقيق التدريب الموزع متعدد GPU أو تحسين الدقة المختلطة.
على النقيض، يتكامل YOLOv10 بسلاسة مع مسارات عمل PyTorch الحديثة، إلا أن منظومة Ultralytics هي التي تحوّل تجربة المطور فعلًا. وتتميز نماذج Ultralytics باستخدام أقل بكثير لذاكرة CUDA أثناء التدريب مقارنة بالمعماريات القائمة على Transformer مثل RT-DETR.
مثال على الشفرة: تدريب مبسّط#
باستخدام API الموحد من Ultralytics، يمكنك تدريب نماذج متقدمة بسلاسة عبر بضعة أسطر من Python فقط. ويجنبك ذلك التجميع اليدوي لمشغلات C++ أو ملفات الإعداد المعقدة.
from ultralytics import YOLO
# Initialize a pre-trained YOLOv10 model
model = YOLO("yolov10s.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model's performance
metrics = model.val()
# Export the optimized model to ONNX format
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 مخصصًا، حيث يوفر استدلال YOLO26 الأسرع على CPU بنسبة تصل إلى 43% ميزة حاسمة.
- اكتشاف الأجسام الصغيرة: السيناريوهات الصعبة مثل الصور الجوية الملتقطة بالطائرات المسيّرة أو تحليل مستشعرات إنترنت الأشياء، حيث يعزّز ProgLoss وSTAL الدقة بدرجة كبيرة عند التعامل مع الأجسام الصغيرة جدًا.
مستقبل الذكاء الاصطناعي للرؤية: ظهور YOLO26#
يمثل YOLOv10 وYOLOX محطتين رئيسيتين، إلا أن مشهد الرؤية الحاسوبية يواصل تقدمه بلا هوادة. وبالنسبة إلى المطورين الذين يبدؤون مشاريع جديدة اليوم، فإن Ultralytics YOLO26 هو التوصية الحاسمة.
أُطلق Ultralytics YOLO26 في يناير 2026، وهو يبني على الاختراق التأسيسي المتمثل في التصميم الخالي من NMS من البداية إلى النهاية الذي ابتكره YOLOv10، مع صقله لتحقيق استقرار وسرعة أكبر.
يتميز YOLO26 بتقديم عدة قفزات هائلة إلى الأمام:
- استدلال أسرع على CPU بنسبة تصل إلى 43%: من خلال إزالة خسارة البؤرة التوزيعية (DFL) استراتيجيًا، يحقق YOLO26 أداءً أعلى بكثير على الأجهزة الطرفية التي لا تحتوي على GPU.
- محسّن MuSGD: يستلهم هذا المزيج الهجين الجديد من SGD وMuon استقرار تدريب LLM، ويضمن تقاربًا أسرع وعمليات تدريب مستقرة بدرجة كبيرة.
- ProgLoss + STAL: تحقق دوال الخسارة المتقدمة هذه تحسينات ملحوظة في التعرف على الأجسام الصغيرة، وهو عامل حاسم للصور الجوية ومستشعرات IoT.
- تعدد استخدامات لا مثيل له: بخلاف YOLOX، الذي يقتصر على اكتشاف الأجسام، يدعم YOLO26 أصليًا تجزئة الكائنات، وتقدير الوضعية، وتصنيف الصور، واكتشاف OBB ضمن مكتبة موحدة واحدة.
للحصول على أبسط مسار إلى الإنتاج، يمكن للمطورين استخدام منصة Ultralytics لوضع تعليقات توضيحية على مجموعات البيانات، وتدريب نماذج YOLO26 في السحابة، والنشر على أي جهاز طرفي دون الحاجة إلى أي إعداد.
التطبيقات الواقعية#
يحدد اختيار النموذج المناسب نجاح عمليات النشر الواقعية عبر مختلف الصناعات.
تحليلات الفيديو عالية السرعة#
لمعالجة تدفقات الفيديو الكثيفة، مثل إدارة حركة المرور في المدن الذكية، يوفر YOLOv10 ميزة كبيرة بفضل المعالجة اللاحقة الخالية من NMS. ويتيح إلغاء اختناق NMS الحفاظ على زمن استجابة منخفض ومتسق، مما يجعله مثاليًا للاقتران بخوارزميات التتبع مثل BoT-SORT.
النشر الطرفي القديم#
بالنسبة إلى الإعدادات الأكاديمية القديمة أو تطبيقات Android القديمة المحسّنة بدرجة كبيرة لنماذج الالتفاف الخالصة، قد تظل النماذج الأصغر مثل YOLOX-Tiny مناسبة لحالات استخدام متخصصة، حيث يُعد الحفاظ على بيئات PyTorch القديمة مفاضلة مقبولة.
الأجهزة الطرفية وأجهزة IoT الحديثة#
بالنسبة إلى عمليات النشر على العتاد من الجيل التالي، مثل الروبوتات والطائرات المسيّرة وتحليل أرفف البيع بالتجزئة، فإن YOLO26 هو الحل الأمثل. ويجعله انخفاض زمن استجابة CPU بدرجة كبيرة وتفوقه في اكتشاف الأجسام الصغيرة مؤهلًا بصورة فريدة للملاحة الذاتية وإدارة المخزون التفصيلية.
ولإجراء مقارنات إضافية توسّع مجموعة أدوات التعلم العميق لديك، يمكنك أيضًا استكشاف كيفية مقارنة هذه النماذج ببدائل مثل YOLO11 المرن أو RT-DETR المدعوم بـ Transformer.