مقارنة بين YOLOX و YOLOv10#
تميز تطور نماذج الرؤية الحاسوبية في الوقت الفعلي بقفزات معمارية كبيرة. وتعد YOLOX و YOLOv10 علامتين فارقتين في هذه المسيرة. أطلقت YOLOX في عام 2021، ونجحت في سد الفجوة بين البحث الأكاديمي والتطبيق الصناعي من خلال تقديم تصميم فعال للغاية يعتمد على التخلص من المرساة (anchor-free). وبعد ثلاث سنوات، أحدثت YOLOv10 ثورة في هذا المجال من خلال إلغاء الحاجة إلى خوارزمية كبت غير الأقصى (NMS) أثناء المعالجة اللاحقة، مما دفع حدود الكفاءة والسرعة.
تستكشف هذه المقارنة التقنية الشاملة البنى، ومقاييس الأداء، وحالات الاستخدام المثالية لكلا النموذجين، مما يوفر رؤى لمساعدتك في اختيار الأداة المناسبة لمشروعك القادم للكشف عن الكائنات.
أصول النماذج والبيانات الوصفية#
يساعد فهم أصول هذه النماذج في تقديم سياق لخياراتها المعمارية وبيئات النشر المقصودة لها.
تفاصيل YOLOX
المؤلفون: Zheng Ge، Songtao Liu، Feng Wang، Zeming Li، و Jian Sun
المنظمة: Megvii
التاريخ: 2021-07-18
Arxiv: https://arxiv.org/abs/2107.08430
GitHub: https://github.com/Megvii-BaseDetection/YOLOX
المستندات: https://github.com/Megvii-BaseDetection/YOLOX/tree/main/docs
تفاصيل YOLOv10
المؤلفون: Ao Wang، وHui Chen، وLihao Liu، وKai Chen، وZijia Lin، وJungong Han، وGuiguang Ding
المنظمة: جامعة تسينغهوا
التاريخ: 2024-05-23
Arxiv: https://arxiv.org/abs/2405.14458
GitHub: https://github.com/THU-MIG/yolov10
المستندات: https://docs.ultralytics.com/models/yolov10
الابتكارات المعمارية#
تكمن الاختلافات الجوهرية بين YOLOX و YOLOv10 في كيفية تعاملهما مع توقعات الصناديق المحيطة والمعالجة اللاحقة.
YOLOX: ريادة التصميم الخالي من المرساة#
أحدثت YOLOX ضجة كبيرة من خلال نقل عائلة YOLO إلى بنية خالية من المرساة (anchor-free). ومن خلال توقع مركز الكائن بدلاً من الاعتماد على صناديق مرساة محددة مسبقًا، قللت YOLOX بشكل كبير من عدد معايير التصميم والضبط الإرشادي المطلوب لمجموعات البيانات المخصصة. علاوة على ذلك، قدمت رأسًا مفككًا، مما يفصل مهام التصنيف والانحدار إلى مسارات متميزة. حل هذا النهج الصراع بين تحديد ما هو الكائن وتحديد أين يقع، مما أدى إلى زيادة ملحوظة في سرعة التقارب والدقة.
YOLOv10: ثورة خالية من NMS#
بينما قامت YOLOX بتبسيط رأس الكشف، إلا أنها لا تزال تعتمد على NMS لتصفية توقعات الصناديق المحيطة الزائدة. عالجت YOLOv10 هذا الاختناق الجوهري. فمن خلال استخدام تعيينات مزدوجة متسقة أثناء التدريب، تحقق YOLOv10 كشفًا أصليًا من البداية إلى النهاية. وهي تستخدم رأسًا من واحد إلى متعدد أثناء التدريب لضمان إشارات إشراف غنية، بينما تستخدم رأسًا من واحد إلى واحد أثناء الاستدلال لإخراج التوقعات النهائية مباشرة. هذا التصميم الشامل القائم على الكفاءة والدقة يلغي NMS تمامًا، مما يقلل بشكل كبير من زمن انتقال الاستدلال على الرقائق المضمنة.
غالبًا ما تكون عملية الكبح غير الأقصى (Non-Maximum Suppression) عملية معقدة للتسريع على وحدات المعالجة العصبية (NPUs). من خلال إزالتها، يسمح YOLOv10 لمخطط النموذج بالكامل بالتنفيذ بسلاسة على الأجهزة المتخصصة، مما يحسن بشكل كبير التوافق مع أطر التحسين مثل OpenVINO و TensorRT.
مقاييس الأداء والمقارنة#
عند تقييم النماذج للإنتاج، يعد الموازنة بين الدقة والحمل الحسابي أمرًا بالغ الأهمية. يوضح الجدول أدناه المقايضات بين مختلف أحجام YOLOX و YOLOv10.
| النموذج | الحجم (بكسل) | mAPval 50-95 | السرعة CPU ONNX (ms) | السرعة T4 TensorRT10 (ms) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| 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 |
تحليل البيانات#
توضح المقاييس بوضوح القفزة الجيلية لـ YOLOv10. على سبيل المثال، يحقق YOLOv10-S متوسط الدقة المتوسطة بنسبة 46.7% مقارنة بـ 46.9% لـ YOLOX-m، ولكنه يفعل ذلك باستخدام أقل من ثلث المعلمات (7.2 مليون مقابل 25.3 مليون) وعدد أقل بكثير من عمليات الفاصلة العائمة في الثانية (FLOPs). علاوة على ذلك، يدفع نموذج YOLOv10-X من الفئة الأولى قيمة mAP إلى 54.4%، مما يجعله تنافسيًا للغاية لمهام الدقة المتطلبة مع الاحتفاظ بسرعته مقارنة ببنية YOLOX-x القديمة.
ميزة نظام Ultralytics البيئي#
بينما تظل YOLOX تنفيذًا بحثيًا قويًا مفتوح المصدر، فإن اعتماد YOLOv10 يوفر وصولاً فوريًا إلى النظام البيئي الذي تتم صيانته جيدًا والذي توفره Ultralytics. يضمن اختيار نموذج مدعوم من Ultralytics تجربة مستخدم مبسطة تتميز بـ API بسيط وتوثيق شامل.
يستفيد المطورون بشكل كبير من متطلبات الذاكرة للإطار؛ حيث عادةً ما يستهلك تدريب نماذج Ultralytics ذاكرة CUDA أقل بكثير من البدائل الثقيلة المستندة إلى المحولات (Transformer) مثل RT-DETR. تتيح بصمة التدريب الفعالة هذه أحجام دفعات أكبر على الأجهزة الاستهلاكية، مما يسرع الوقت من جمع البيانات إلى نشر النموذج. علاوة على ذلك، يوفر الإطار تنوعًا لا يُضاهى، مما يسمح للمستخدمين بالتبديل بسلاسة بين اكتشاف الكائنات، وتجزئة المثيلات، وتقدير الوضعية بأقل قدر من التغييرات في الكود.
مثال على التدريب والاستدلال#
تجعل واجهة برمجة التطبيقات (API) الموحدة التحقق من الأفكار سريعًا بشكل لا يُصدق. يوضح المقطع البرمجي التالي مدى سهولة تدريب ونشر نموذج YOLOv10 باستخدام خلفية PyTorch:
from ultralytics import YOLO
# Load a pre-trained YOLOv10 nano model
model = YOLO("yolov10n.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on a sample image
predictions = model.predict("https://ultralytics.com/images/bus.jpg")
# Export the model for edge deployment
model.export(format="engine", quantize=16)من خلال الاستفادة من روتين التصدير المدمج، يتطلب تحويل النماذج إلى تنسيقات مثل TensorRT أو ONNX سطرًا واحدًا فقط من الكود، مما يتخطى تمامًا عقبات التجميع المعقدة.
حالات الاستخدام المثالية وسيناريوهات النشر#
يعتمد الاختيار بين هذه البنى إلى حد كبير على قيود الأجهزة ومتطلبات المجال المحددة.
تحليلات الفيديو في الوقت الفعلي#
بالنسبة للتطبيقات التي تتطلب زمن انتقال منخفض للغاية، مثل القيادة الذاتية أو مراقبة حركة المرور في الوقت الفعلي، فإن YOLOv10 هي الخيار الأفضل. يضمن تصميمها الشامل الخالي من NMS أوقات تنفيذ حتمية، وهو أمر بالغ الأهمية لأنظمة السلامة التي لا يمكن فيها التسامح مع زمن انتقال المعالجة اللاحقة المتغير. تحقق النماذج بسهولة معدلات إطارات عالية على أجهزة مثل سلسلة NVIDIA Jetson.
الأساسيات الأكاديمية والمتحكمات الدقيقة للحافة#
لا تزال YOLOX تحتفظ بقيمتها في البيئات الأكاديمية حيث يريد الباحثون أساسًا نظيفًا ومفكك الرأس لتجربة استراتيجيات تعيين التسميات. بالإضافة إلى ذلك، يمكن ضغط YOLOX-Nano صغيرة الحجم بشكل استثنائي (أقل من مليون معلمة) على المتحكمات الدقيقة للحافة المقيدة للغاية حيث يتم قياس الذاكرة بالكيلوبايت، بشرط أن تكون الأجهزة قادرة على دعم عمليات الالتفاف القياسية.
المعيار النهائي: Ultralytics YOLO26#
في حين أن YOLOv10 قد مثل قفزة هائلة من خلال إزالة NMS، فإن مجال رؤية الكمبيوتر يتطور بسرعة. للمطورين الذين يهدفون إلى تطبيق الأداء الأفضل في فئته اليوم، نوصي بشدة باكتشاف YOLO26.
بصفتها أحدث معيار في ذكاء الرؤية، تأخذ YOLO26 الأفكار الأساسية لأسلافها وتعمل على تعزيزها. إنها توفر توازن الأداء النهائي، مع دعم أصلي للكشف، والتجزئة، والوضعية، والصناديق المحيطة الموجهة.
إليك سبب كون YOLO26 الخيار الموصى به لخطوط أنابيب الرؤية الحاسوبية الحديثة:
- تصميم شامل خالٍ من NMS: بالبناء على اختراقات YOLOv10، تعد YOLO26 شاملة أصلاً، مما يضمن أوقات استدلال أسرع وحتمية دون اختناقات المعالجة اللاحقة.
- أسرع بنسبة تصل إلى 43% في استدلال CPU: تم تحسينها خصيصًا لحوسبة الحافة، مما يضمن أداءً استثنائيًا على معالجات الأجهزة المحمولة والأجهزة التي تفتقر إلى وحدات معالجة الرسومات المنفصلة.
- محسن MuSGD: مستوحى من تدريب نماذج اللغات الكبيرة (تحديدًا Kimi K2 من Moonshot AI)، تستخدم YOLO26 مزيجًا من SGD و Muon لتدريب مستقر للغاية وتقارب سريع.
- ProgLoss + STAL: تقدم وظائف الخسارة المتقدمة هذه تحسينات ملحوظة في التعرف على الكائنات الصغيرة، وهو أمر بالغ الأهمية للمجالات الصعبة مثل الصور الجوية والملاحة بالطائرات بدون طيار.
- إزالة DFL: من خلال إزالة Distribution Focal Loss، تبسط YOLO26 مخطط النموذج للتصدير السلس إلى أجهزة الحافة والأجهزة منخفضة الطاقة.
- تحسينات خاصة بالمهمة: سواء كنت تستخدم Residual Log-Likelihood Estimation (RLE) لتقدير الوضعية أو خسارة الزاوية المتخصصة لـ OBB، تم ضبط YOLO26 بدقة لكل مهمة رؤية رئيسية.
للمطورين المستعدين لتحديث خطوط الأنابيب الخاصة بهم باستخدام أدوات التدريب والنشر الأكثر كفاءة المتاحة، يضمن الانتقال إلى منصة Ultralytics والاستفادة من YOLO26 بقاءك في طليعة الذكاء الاصطناعي. قد يراجع المستخدمون المهتمون باله architectures القديمة ولكن المستقرة أيضًا YOLO11 أو YOLOv8 للحصول على دعم واسع النطاق من المجتمع ومتانة مثبتة.