YOLOv5 مقابل YOLOv10#
شهد مجال الرؤية الحاسوبية الآنية نموًا هائلًا خلال السنوات القليلة الماضية، مع دفع مختلف البنى حدود الإمكانات على العتاد الحديث. وعند تقييم البنى المتطورة، تكشف المقارنة بين YOLOv5 وYOLOv10 عن خطوة تطورية كبيرة في مجال كشف الأجسام. ويستكشف هذا التحليل التقني المتعمق نماذجهما المعمارية، والمفاضلات المتعلقة بالأداء، وكيفية استفادة المطورين من هذه الأدوات في بيئات الإنتاج.
تحليل معمّق للبنية#
يُعد فهم الاختلافات الهيكلية بين هذه النماذج أمرًا بالغ الأهمية لنشرها بكفاءة في العالم الحقيقي.
Ultralytics YOLOv5: معيار القطاع#
قدّمت Ultralytics نموذج YOLOv5، الذي لطالما عُرف بتوازنه الاستثنائي بين السرعة والدقة وسهولة الإتاحة.
- المؤلف: Glenn Jocher
- الجهة: Ultralytics
- التاريخ: 2020-06-26
- GitHub: مستودع YOLOv5
- التوثيق: وثائق YOLOv5
يعتمد YOLOv5 على آلية كشف قائمة على المراسي، مقترنة بعمود فقري CSPDarknet محسّن بعمق. وتعتمد هذه البنية بدرجة كبيرة على العمليات القياسية التي تدعمها جميع محركات الاستدلال تقريبًا، ما يجعلها متعددة الاستخدامات للغاية. وتكمن إحدى أبرز نقاط قوتها في حزمة Ultralytics Python SDK، التي توفر تجربة استخدام مبسطة وواجهة API سهلة ووثائق شاملة. بالإضافة إلى ذلك، تعني متطلبات الذاكرة الأقل لدى YOLOv5 مقارنةً بالنماذج القائمة على Transformer أنه يتدرب بسرعة على وحدات GPU المخصصة للمستهلكين، من دون عبء كبير على ذاكرة VRAM.
YOLOv10: تطوير النموذج السائد#
طوّر باحثون في جامعة تسينغهوا YOLOv10 بهدف معالجة اختناقات زمن الاستجابة المحددة الموجودة في البنى السابقة.
- المؤلفون: Ao Wang وHui Chen وLihao Liu وآخرون
- الجهة: جامعة تسينغهوا
- التاريخ: 2024-05-23
- ArXiv: 2405.14458
- GitHub: مستودع YOLOv10
- الوثائق: وثائق YOLOv10
السمة المميزة لـ YOLOv10 هي تصميمه الأصلي الخالي من NMS (كبح القيم غير العظمى). فمن خلال استخدام إسناد مزدوج متسق أثناء التدريب، يلغي النموذج الحاجة إلى المعالجة اللاحقة باستخدام NMS أثناء الاستدلال. ويُعد هذا الانخفاض النظري في زمن الاستجابة مفيدًا للغاية لعمليات النشر على الأجهزة المتطورة المزودة بتسريع NVIDIA TensorRT القوي، رغم أنه قد يضيف تعقيدات بنيوية للأجهزة الطرفية.
مع أن YOLOv10 يقدم ابتكارات معمارية مثيرة للاهتمام، فإن نماذج Ultralytics مثل YOLOv5 وYOLO26 الأحدث مدعومة أصليًا ضمن منصة Ultralytics، وتوفر كفاءة تدريب أفضل، وتطورًا تلقائيًا للمعلمات الفائقة، وخيارات تصدير شاملة جاهزة للاستخدام.
تحليل الأداء#
عند مقارنة هذه النماذج، يحدد التوازن بين الدقة (mAP) والتكلفة الحاسوبية (زمن الاستجابة وعدد المعلمات) حالة الاستخدام الأنسب. فيما يلي مقارنة الأداء التقنية على مجموعة بيانات COCO.
| النموذج | الحجم (بكسل) | mAPالتحقق 50-95 | السرعة CPU ONNX (مللي ثانية) | السرعة T4 TensorRT10 (ms) | المعاملات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | - | 1.12 | 1.9 | 4.5 |
| YOLOv5s | 640 | 37.4 | - | 1.92 | 7.2 | 16.5 |
| YOLOv5m | 640 | 45.4 | - | 4.03 | 21.2 | 49.0 |
| YOLOv5l | 640 | 49.0 | - | 6.61 | 46.5 | 109.1 |
| YOLOv5x | 640 | 50.7 | - | 11.89 | 86.7 | 205.7 |
| 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 |
يحقق YOLOv10 بوضوح mAP50-95 أعلى عند مستويات الأحجام المكافئة، مستفيدًا من تصميم نموذجه الحديث المدفوع بالكفاءة والدقة. ومع ذلك، يحافظ YOLOv5 على زمن استجابة تنافسي للغاية، ولا سيما في فئتي Nano وSmall، ما يجعله موثوقًا للغاية للبيئات المضمنة محدودة الموارد، مثل سلسلة NVIDIA Jetson أو وحدات CPU القياسية عبر OpenVINO.
منهجيات التدريب والمنظومة#
ترتبط قيمة النموذج ارتباطًا وثيقًا بالنظام المتكامل المحيط به. وتحافظ Ultralytics على منظومة متكاملة عالية العناية تدعم مجموعة واسعة للغاية من المهام. وفي حين يركز YOLOv10 حصريًا على كشف الأجسام ثنائي الأبعاد، تدعم Ultralytics أصليًا تجزئة الكائنات، وتصنيف الصور، وتقدير الوضعيات، ومربعات الإحاطة الموجّهة (OBB).
علاوة على ذلك، يتطلب تدريب نموذج Ultralytics ذاكرة أقل بكثير من الأساليب المنافسة القائمة على Transformer، ما يحافظ على سرعة دورة التطوير وفعاليتها من حيث التكلفة.
تنفيذ سلس للتعليمات البرمجية#
يجمع API واحد بين تدريب النماذج والتحقق من صحتها وتصديرها. ويمكنك التبديل بين النماذج بمجرد تغيير سلسلة نصية.
from ultralytics import YOLO
# تحميل نموذج YOLOv5 مدرّب مسبقًا لاختباره كخط أساس
model_v5 = YOLO("yolov5su.pt") # YOLOv5u: أوزان YOLOv5 الخالية من المراسي لحزمة ultralytics
# تحميل نموذج YOLOv10 للمقارنة
model_v10 = YOLO("yolov10s.pt")
# تدريب النموذج بكفاءة على مجموعة بيانات COCO8
results = model_v5.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
device="0", # استخدام تسريع PyTorch CUDA تلقائيًا
batch=16,
)
# التصدير إلى ONNX لنشر الاستدلال على CPU
model_v5.export(format="onnx", simplify=True)حالات الاستخدام والتوصيات#
يعتمد الاختيار بين YOLOv5 وYOLOv10 على متطلبات مشروعك المحددة وقيود النشر وتفضيلاتك للنظام المتكامل.
متى تختار YOLOv5#
يُعد YOLOv5 خيارًا قويًا لما يلي:
- أنظمة إنتاج مُجرّبة: عمليات النشر القائمة التي تُقدّر سجل YOLOv5 الطويل في الاستقرار ووثائقه الشاملة ودعم مجتمعه الكبير.
- التدريب مع موارد محدودة: البيئات التي تعاني من محدودية موارد GPU، حيث يكون مسار التدريب الفعّال في YOLOv5 ومتطلباته الأقل للذاكرة مفيدين.
- دعم واسع لتنسيقات التصدير: المشاريع التي تتطلب النشر بتنسيقات عديدة، منها ONNX وTensorRT وCoreML وLiteRT.
متى تختار YOLOv10#
يوصى بـ YOLOv10 في الحالات التالية:
- الكشف الآني دون NMS: التطبيقات التي تستفيد من الكشف الشامل من البداية إلى النهاية من دون الكبت غير الأقصى، مما يقلل تعقيد النشر.
- موازنة السرعة والدقة: المشاريع التي تتطلب توازناً جيداً بين سرعة الاستدلال ودقة الكشف عبر مقاييس نماذج متعددة.
- التطبيقات ذات زمن الاستجابة الثابت: سيناريوهات النشر التي تتطلب أوقات استدلال قابلة للتنبؤ، مثل الروبوتات أو الأنظمة ذاتية التشغيل.
متى تختار Ultralytics (YOLO26)#
بالنسبة إلى معظم المشاريع الجديدة، يقدم Ultralytics YOLO26 أفضل مزيج من الأداء وتجربة المطور:
- النشر الطرفي دون NMS: التطبيقات التي تتطلب استدلالاً ثابتاً بزمن استجابة منخفض، من دون تعقيد المعالجة اللاحقة للكبت غير الأقصى.
- البيئات التي تعتمد على CPU فقط: الأجهزة التي لا تتضمن تسريعاً مخصصاً بواسطة GPU، حيث يمنح الاستدلال الأسرع على CPU بنسبة تصل إلى 43% في YOLO26 ميزة حاسمة.
- اكتشاف الأجسام الصغيرة: السيناريوهات الصعبة مثل صور الطائرات المسيّرة الجوية أو تحليل مستشعرات إنترنت الأشياء، حيث يعزز ProgLoss وSTAL دقة اكتشاف الأجسام الدقيقة بدرجة كبيرة.
المستقبل: Ultralytics YOLO26#
مع أن YOLOv5 أحدث ثورة في سهولة الوصول، وأن YOLOv10 دفع حدود البنية الخالية من NMS، فإن أحدث ما توصلت إليه التقنية يواصل التطور. ونوصي بشدة للمشروعات الجديدة باستخدام Ultralytics YOLO26 المتطور، الذي صدر في يناير 2026.
يجمع YOLO26 بين موثوقية منظومة Ultralytics والتطورات الرائدة:
- تصميم شامل خالٍ من NMS: من خلال دمج نهج خلو النموذج من NMS مباشرةً في إطار عمل Ultralytics كطبقة إخراج اختيارية أحادية المطابقة (
nms=False)، يبسّط YOLO26 النشر ويقلل زمن الاستجابة. - استدلال أسرع بنسبة تصل إلى 43% على CPU: بفضل إزالة Distribution Focal Loss (DFL)، يتميز YOLO26 بسرعة أكبر بكثير على الأجهزة الطرفية التي لا تحتوي على وحدات GPU.
- مُحسِّن MuSGD: استلهامًا من ابتكارات تدريب LLM لدى Moonshot AI، يوفر مُحسِّن MuSGD استقرارًا غير مسبوق وتقاربًا سريعًا.
- ProgLoss + STAL: تحسن دالتا الخسارة الجديدتان هاتان التعرف على الأجسام الصغيرة بدرجة كبيرة، وهو أمر حيوي لمجالات مثل صور الطائرات المسيّرة والروبوتات.
يمكنك إدارة YOLO26 وتدريبه ونشره مباشرةً عبر منصة Ultralytics.
الخلاصة#
غالبًا ما يتوقف الاختيار بين YOLOv5 وYOLOv10 على قيود المشروع المحددة. يقدم YOLOv10 قيمة mAP ممتازة للباحثين والتطبيقات التي تستفيد من الإنتاجية الخام لوحدات GPU. وعلى النقيض، يظل YOLOv5 خيارًا عمليًا موثوقًا ومتوافقًا بدرجة عالية لعمليات النشر القياسية.
ومع ذلك، فإن مجال الرؤية الحاسوبية ديناميكي. وللاستفادة من أفضل توازن ممكن بين الأداء وتعدد الاستخدامات وسهولة الاستخدام، ينبغي للمطورين التوجه إلى Ultralytics YOLO26. فهو يجمع بين سرعة الاستدلال الخالي من NMS ومنظومة Ultralytics القوية والموثقة جيدًا، ما يضمن جاهزية حلول الذكاء الاصطناعي للرؤية لديك للمستقبل. ويمكن للمطورين أيضًا استكشاف YOLO11 للمتانة العامة، أو RT-DETR للدقة القائمة على Transformer، لحالات الاستخدام المتخصصة.