YOLOv8 مقابل YOLOv10#
يتطور اكتشاف الأجسام في الوقت الفعلي بوتيرة غير مسبوقة. ومع سعي المطورين والباحثين إلى دمج نماذج الرؤية الحاسوبية الأكثر كفاءة ودقة في مسارات عملهم، تصبح مقارنة البنى الرائدة أمرًا ضروريًا. في هذا التعمق، نقارن بين YOLOv8 وYOLOv10 من Ultralytics، مع فحص الاختلافات المعمارية، ومقاييس الأداء، وسيناريوهات النشر المثالية، لمساعدتك على اتخاذ قرار مستنير لمشروعك التالي في مجال الذكاء الاصطناعي.
نظرة عامة على النموذج: YOLOv8#
طُرح YOLOv8 باعتباره قفزة كبيرة إلى الأمام في سلالة YOLO، وأرسى معيارًا جديدًا لإطار عمل موحّد ومتعدد الاستخدامات. وقد صُمم من البداية لدعم مجموعة واسعة من المهام التي تتجاوز مربعات الإحاطة التقليدية، مما يجعله أداة مرنة للغاية للرؤية الحاسوبية الحديثة.
تفاصيل YOLOv8:
- المؤلفون: Glenn Jocher وAyush Chaurasia وJing Qiu
- المنظمة: Ultralytics
- التاريخ: 2023-01-10
- GitHub: https://github.com/ultralytics/ultralytics
- المستندات: https://docs.ultralytics.com/models/yolov8
البنية ونقاط القوة#
قدّم YOLOv8 رأس كشف خاليًا من المراسي وعمودًا فقريًا مُحدّثًا من CSPDarknet، مما حسّن بدرجة كبيرة كلًا من الدقة وزمن استجابة الاستدلال. ومن خلال إزالة مربعات المراسي، يقلل النموذج عدد تنبؤات المربعات، مما يسرّع قمع القيم غير العظمى (NMS) أثناء المعالجة اللاحقة.
تتمثل إحدى أبرز مزايا اختيار YOLOv8 في تعدد استخداماته الهائل. ففي حين تركز نماذج كثيرة على اكتشاف الأجسام فحسب، يدعم YOLOv8 أصلاً تجزئة المثيلات، وتصنيف الصور، وتقدير الوضعيات، ومربعات الإحاطة الموجّهة (OBB). وهذا يجعله أداة قوية لمسارات العمل المعقدة متعددة المراحل التي تتطلب أنواعًا مختلفة من الفهم البصري في الوقت نفسه. علاوة على ذلك، جرى تحسين متطلبات الذاكرة أثناء التدريب بدرجة كبيرة مقارنة بالبنى القائمة على Transformer مثل RT-DETR، مما يتيح للباحثين تدريب نماذج كبيرة على وحدات GPU الاستهلاكية القياسية.
نظرة عامة على النموذج: YOLOv10#
طوّر باحثون في جامعة تسينغهوا YOLOv10 بهدف معالجة إحدى أقدم عنق الزجاجات في عائلة YOLO، وهي الاعتماد على المعالجة اللاحقة باستخدام NMS.
تفاصيل YOLOv10:
- المؤلفون: Ao Wang، Hui Chen، Lihao Liu، وآخرون.
- الجهة: جامعة تسينغهوا
- التاريخ: 2024-05-23
- Arxiv: https://arxiv.org/abs/2405.14458
- GitHub: https://github.com/THU-MIG/yolov10
- التوثيق: https://docs.ultralytics.com/models/yolov10
البنية ونقاط القوة#
يتمثل الابتكار الأساسي في YOLOv10 في استراتيجية التعيينات المزدوجة المتسقة، التي تتيح التدريب الخالي من NMS والنشر الشامل من البداية إلى النهاية. ومن خلال إلغاء خطوة NMS، يقلل YOLOv10 زمن استجابة الاستدلال بدرجة كبيرة، ولا سيما على الأجهزة الطرفية حيث يمكن أن تكون عمليات المعالجة اللاحقة مكلفة حسابيًا.
بالإضافة إلى ذلك، يدمج YOLOv10 تصميمًا شاملًا للنموذج مدفوعًا بالكفاءة والدقة، مع ضبط الحمل الحسابي لكل طبقة بعناية. وينتج عن ذلك نموذج يتطلب عددًا أقل من المعلمات وFLOPs، مع تحقيق متوسط دقة (mAP) تنافسي. وهو إسهام أكاديمي ممتاز لحالات الاستخدام التي تتطلب أدنى زمن استجابة ممكن في مهام اكتشاف الأجسام البحتة.
مقارنة الأداء والمقاييس#
عند مقارنة هاتين البنيتين، من الضروري النظر في المفاضلات بين عدد المعلمات وFLOPs والدقة. فيما يلي المقارنة الدقيقة لمقاييس أدائهما على مجموعة بيانات COCO.
| النموذج | الحجم (بكسل) | mAPval 50-95 | السرعة CPU ONNX (مللي ثانية) | السرعة T4 TensorRT10 (مللي ثانية) | المعاملات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| 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 قيمة mAP أعلى قليلًا مع عدد أقل من المعلمات في بعض المقاييس، يوفر YOLOv8 منظومة أكثر متانة ودعمًا أوسع للمهام، مما يجعله عمومًا أكثر موثوقية في بيئات الإنتاج التي تتطلب أكثر من مجرد مربعات الإحاطة.
المنظومة ومنهجية التدريب#
غالبًا ما يكون العامل الفارق الحقيقي في مسارات عمل ML الحديثة هو المنظومة المحيطة بالبنية. إذ يوفّر اختيار نموذج من Ultralytics مثل YOLOv8 سهولة استخدام لا مثيل لها وتجربة سلسة للمطورين.
باستخدام Python SDK عالي السهولة والبديهي، يستطيع المطورون التعامل مع وسم البيانات والتدريب والنشر بأقل قدر من التعقيد. وتحظى منظومة Ultralytics بصيانة استثنائية، إذ توفر تحديثات متكررة، ووثائق شاملة حول ضبط المعلمات الفائقة، ودعمًا قويًا من المجتمع على منصات مثل Discord وGitHub.
مثال على التعليمات البرمجية: تدريب مبسّط#
تجعل Python API في Ultralytics إنشاء أي من النموذجين وتدريبه والتحقق منه أمرًا بالغ السهولة. لاحظ كيف ينطبق مسار العمل نفسه بغض النظر عن البنية الأساسية.
from ultralytics import YOLO
# Load a pretrained YOLOv8 model
model = YOLO("yolov8n.pt")
# Train the model efficiently with automated learning rate scheduling
results = model.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
device=0, # optimized CUDA memory usage
batch=16,
)
# Validate the model to check mAP metrics
metrics = model.val()
print(f"Validation mAP: {metrics.box.map}")
# Export to ONNX for edge deployment
model.export(format="onnx")حالات الاستخدام والتوصيات#
يعتمد الاختيار بين YOLOv8 وYOLOv10 على متطلبات مشروعك المحددة وقيود النشر وتفضيلات المنظومة.
متى تختار YOLOv8#
يُعد YOLOv8 خيارًا قويًا من أجل:
- النشر متعدد المهام ومتعدد الاستخدامات: المشروعات التي تتطلب نموذجًا مُثبتًا لـالكشف والتجزئة والتصنيف وتقدير الوضعية ضمن منظومة Ultralytics.
- أنظمة الإنتاج الراسخة: بيئات الإنتاج الحالية المبنية مسبقًا على بنية YOLOv8، مع مسارات نشر مستقرة ومختبرة جيدًا.
- دعم واسع من المجتمع والمنظومة: التطبيقات التي تستفيد من البرامج التعليمية الشاملة لـYOLOv8، وعمليات التكامل التابعة لجهات خارجية، وموارد المجتمع النشطة.
متى تختار YOLOv10#
يوصى باستخدام YOLOv10 من أجل:
- الاكتشاف في الوقت الفعلي الخالي من NMS: التطبيقات التي تستفيد من الاكتشاف من الطرف إلى الطرف دون كبت القيم غير العظمى، ما يقلل تعقيد النشر.
- المفاضلة المتوازنة بين السرعة والدقة: المشاريع التي تتطلب توازنًا قويًا بين سرعة الاستدلال ودقة الاكتشاف عبر مقاييس نماذج مختلفة.
- التطبيقات ذات زمن الانتقال المتسق: سيناريوهات النشر التي تكون فيها أزمنة الاستدلال المتوقعة أمرًا بالغ الأهمية، مثل الروبوتات أو الأنظمة الذاتية.
متى تختار Ultralytics (YOLO26)#
بالنسبة إلى معظم المشاريع الجديدة، يقدم Ultralytics YOLO26 أفضل مزيج من الأداء وتجربة المطور:
- النشر الطرفي الخالي من NMS: التطبيقات التي تتطلب استدلالًا متسقًا منخفض زمن الانتقال دون تعقيد المعالجة اللاحقة لكبت القيم غير العظمى.
- البيئات المعتمدة على CPU فقط: الأجهزة التي لا تتضمن تسريع GPU مخصصًا، حيث يوفر استدلال YOLO26 الأسرع على CPU بنسبة تصل إلى 43% ميزة حاسمة.
- اكتشاف الأجسام الصغيرة: السيناريوهات الصعبة مثل الصور الجوية الملتقطة بالطائرات المسيّرة أو تحليل مستشعرات إنترنت الأشياء، حيث يعزّز ProgLoss وSTAL الدقة بدرجة كبيرة عند التعامل مع الأجسام الصغيرة جدًا.
المستقبل: الارتقاء إلى YOLO26#
في حين أن YOLOv8 نموذج شامل ممتاز، ويوفر YOLOv10 رؤى أكاديمية مهمة حول البنى الخالية من NMS، فقد تقدمت أحدث تقنيات الرؤية الحاسوبية. ولتحقيق التوازن الأمثل بين السرعة والدقة وسهولة النشر، نوصي بشدة بالانتقال إلى YOLO26.
أُطلق YOLO26 في أوائل عام 2026، ويمثل قمة عائلة YOLO على الإطلاق. فهو يدمج بسلاسة أفضل ميزات أسلافه، مع تقديم تقنيات جديدة رائدة:
- تصميم شامل من البداية إلى النهاية خالٍ من NMS: باعتماد الاختراق الذي ابتكره YOLOv10، يلغي YOLO26 أصلاً استخدام NMS لتوفير نشر أسرع وأبسط.
- إزالة DFL: تجعل إزالة Distribution Focal Loss تصدير النموذج إلى CoreML والأجهزة الطرفية أكثر سلاسة بدرجة كبيرة.
- مُحسِّن MuSGD: يستلهم هذا المُحسِّن الهجين منهجيات تدريب نموذج اللغة الكبير (LLM)، ويضمن تقاربًا أسرع واستقرارًا تدريبيًا لا مثيل له.
- هيمنة الاستدلال على CPU: يحقق YOLO26 استدلالًا على CPU أسرع بنسبة تصل إلى 43% مقارنة بالأجيال السابقة، مما يجعله عاملًا مغيرًا لقواعد اللعبة في تطبيقات Raspberry Pi وإنترنت الأشياء (IoT).
- ProgLoss + STAL: توفر دوال الخسارة المتقدمة هذه تحسينات ملحوظة في التعرّف على الأجسام الصغيرة، وهو أمر بالغ الأهمية للصور الجوية والروبوتات.
إذا كنت تقيّم النماذج حاليًا، فقد تهتم أيضًا بـYOLO11، السلف المباشر لـYOLO26، والذي لا يزال إطار عمل متينًا وجاهزًا للإنتاج ويُستخدم على نطاق واسع في حلول المؤسسات اليوم. ومع ذلك، ولتحقيق أقصى قدر من الاستعداد للمستقبل والأداء، فإن استكشاف الإمكانات المتقدمة لـمنصة Ultralytics مع YOLO26 هو المسار الأفضل لاستراتيجية الذكاء الاصطناعي للرؤية لديك.