Link to this sectionYOLOv8 مقابل YOLOv5#
يعد اختيار بنية الرؤية الحاسوبية المناسبة خطوة حاسمة في بناء خطوط معالجة قوية للتعلم الآلي. في هذه المقارنة التقنية التفصيلية، نستكشف الاختلافات بين نموذجين من أكثر النماذج شيوعاً في نظام الذكاء الاصطناعي البصري: YOLOv8 و YOLOv5. تم تطوير كلا النموذجين بواسطة Ultralytics وقد شكلا بشكل كبير مشهد اكتشاف الكائنات في الوقت الفعلي، مما وضع معايير صناعية للسرعة والدقة وسهولة الاستخدام.
سواء كنت تقوم بالنشر على أجهزة الحافة (edge devices) أو توسيع نطاق الاستنتاج السحابي، فإن فهم التحولات المعمارية، ومقاييس الأداء، ومنهجيات التدريب لهذه النماذج سيساعدك على اتخاذ قرار مستنير لمشاريع الرؤية الحاسوبية الخاصة بك.
Link to this sectionUltralytics YOLOv8: المعيار متعدد الاستخدامات#
تم إطلاق YOLOv8 في أوائل عام 2023، ومثل تحولاً معمارياً رئيسياً عن أسلافه. لقد تم تصميمه من الأساس ليكون إطار عمل موحداً قادراً على التعامل مع مهام رؤية متعددة بشكل أصلي، بما في ذلك تجزئة المثيلات، وتصنيف الصور، وتقدير الوضعية.
- المؤلفون: Glenn Jocher، وAyush Chaurasia، وJing Qiu
- المنظمة: Ultralytics
- التاريخ: 2023-01-10
- GitHub: ultralytics/ultralytics
- المستندات: توثيق YOLOv8
Link to this sectionالهندسة المعمارية والمنهجيات#
قدم YOLOv8 رأس اكتشاف خالٍ من المراسٍ (anchor-free)، مما يبسط عملية التدريب من خلال القضاء على الحاجة إلى تكوين مربعات المراسٍ يدوياً بناءً على توزيع مجموعة البيانات. هذا يجعل النموذج أكثر قوة عند التعميم على مجموعات بيانات مخصصة ويقلل من عدد تنبؤات المربعات، مما يسرع كبت غير الأعظمية (NMS).
تتميز البنية بـ وحدة C2f (عنق زجاجة جزئي متعدد المراحل مع التوائين)، والتي تحل محل وحدة C3 الموجودة في YOLOv5. تعمل وحدة C2f على تحسين تدفق التدرج وتسمح للنموذج بتعلم تمثيلات ميزات أكثر ثراءً دون زيادة كبيرة في التكلفة الحسابية. علاوة على ذلك، يستخدم YOLOv8 هيكل رأس مفكك (decoupled head)، حيث يفصل مهام الكائنية والتصنيف والانحدار، مما ثبت أنه يحسن سرعة التقارب والدقة.
نماذج Ultralytics YOLO، بما في ذلك YOLOv8، محسنة لاستخدام ذاكرة CUDA أقل أثناء التدريب مقارنة بالعديد من البدائل القائمة على Transformer مثل RT-DETR. هذا يسمح للمطورين باستخدام أحجام دفعات أكبر على وحدات معالجة الرسومات الاستهلاكية القياسية مثل سلسلة NVIDIA RTX.
Link to this sectionنقاط القوة والضعف#
نقاط القوة:
- تعدد استخدامات لا مثيل له عبر مهام متعددة تتجاوز مجرد اكتشاف مربعات الإحاطة.
- واجهة برمجة تطبيقات Python مبسطة عبر حزمة
ultralytics، مما يجعل التدريب والتصدير بديهياً للغاية. - متوسط دقة أعلى mean Average Precision (mAP) عبر جميع متغيرات الحجم مقارنة بـ YOLOv5.
نقاط الضعف:
- يؤدي الرأس المفكك ووحدة C2f إلى زيادة طفيفة في عدد المعلمات وFLOPs لبعض المتغيرات مقارنة بنظرائهم الدقيقين في YOLOv5.
Link to this sectionUltralytics YOLOv5: الرائد المرن#
تم تقديم YOLOv5 في عام 2020، وجلب YOLO إلى نظام PyTorch البيئي، مما أدى إلى تحسين إمكانية وصول المطورين بشكل كبير. سرعان ما أصبح المعيار الصناعي لنماذج اكتشاف الكائنات السريعة والموثوقة والقابلة للنشر بسهولة.
- المؤلف: Glenn Jocher
- المنظمة: Ultralytics
- التاريخ: 2020-06-26
- GitHub: ultralytics/yolov5
- التوثيق: توثيق YOLOv5
Link to this sectionالهندسة المعمارية والمنهجيات#
يعتمد YOLOv5 على بنية قائمة على المراسٍ (anchor-based) ويستخدم backbone معدل من CSPDarknet53. في حين أن النهج القائم على المراسٍ يتطلب تجميعاً دقيقاً لمربعات الإحاطة في مجموعة البيانات لتحديد المراسٍ المثلى قبل التدريب، إلا أنها فعالة للغاية لمجموعات بيانات محددة ومحددة جيداً.
يدمج YOLOv5 وحدة C3، التي تستخرج الميزات بكفاءة مع الحفاظ على بصمة معلمات منخفضة. تعتمد دالة الخسارة الخاصة به بشكل كبير على خسارة الكائنية (Objectness loss) مدمجة مع خسائر التصنيف وانحدار مربعات الإحاطة لتوجيه الشبكة نحو تنبؤات دقيقة.
Link to this sectionنقاط القوة والضعف#
نقاط القوة:
- خفيف الوزن للغاية، مما يجعل متغيرات Nano (YOLOv5n) و Small (YOLOv5s) مناسبة جداً لعمليات نشر ذكاء اصطناعي للحافة (edge AI) ذات الموارد المحدودة.
- سرعات استنتاج سريعة بشكل استثنائي، خاصة على وحدات المعالجة المركزية (CPUs).
- نظام بيئي راسخ بعمق مع دروس تعليمية مجتمعية واسعة وتكاملات من جهات خارجية.
نقاط الضعف:
- يتطلب تكوين مربعات المراسٍ، مما قد يعقد الإعداد لمجموعات البيانات شديدة التباين أو المخصصة.
- دقة إجمالية أقل (mAP) مقارنة بالبنى الحديثة الخالية من المراسٍ مثل YOLOv8 و YOLO26.
Link to this sectionمقارنة الأداء#
عند تقييم هذه النماذج، يعد تحقيق مقايضة مواتية بين السرعة والدقة أمراً بالغ الأهمية. يوضح الجدول أدناه مقاييس الأداء لكلتا البنيتين اللتين تم تقييمهما على مجموعة بيانات COCO. تم قياس سرعات وحدة المعالجة المركزية باستخدام ONNX، بينما تم اختبار سرعات وحدة معالجة الرسومات باستخدام TensorRT.
| النموذج | الحجم (بكسل) | mAPval 50-95 | السرعة CPU ONNX (ms) | السرعة T4 TensorRT10 (ms) | المعلمات (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 |
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
في حين يحتفظ YOLOv5 بميزة طفيفة في عدد المعلمات والسرعة الخام المطلقة لمتغير Nano الخاص به، يقدم YOLOv8 قفزة هائلة في mAP في جميع المجالات، مما يوفر توازناً أقوى بكثير في الأداء لسيناريوهات النشر الواقعية الصعبة.
Link to this sectionسهولة الاستخدام ونظام Ultralytics البيئي#
من السمات المميزة لنماذج Ultralytics الحديثة هو النظام البيئي الذي تتم صيانته جيداً والذي يحيط بها. جلب الانتقال من YOLOv5 إلى YOLOv8 تقديم حزمة ultralytics pip الموحدة، مما خلق تجربة مستخدم مبسطة للغاية.
يمكن للمطورين التعامل بسلاسة مع تدريب النموذج، والتحقق، والتنبؤ، والتصدير ببضعة أسطر فقط من كود Python، متجاوزين نصوص البرمجة المعقدة التي كانت مطلوبة تاريخياً في مشاريع التعلم العميق.
from ultralytics import YOLO
# Load a pretrained YOLOv8 model
model = YOLO("yolov8n.pt")
# Train the model on custom data efficiently
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device=0)
# Export the model to ONNX for production deployment
path = model.export(format="onnx")علاوة على ذلك، فإن التكامل مع أدوات مثل منصة Ultralytics يبسط إدارة مجموعات البيانات، والتدريب السحابي، والنشر، مما يضمن التطوير النشط والدعم المجتمعي القوي.
Link to this sectionحالات الاستخدام المثالية#
متى تختار YOLOv5: إذا كنت تحافظ على أنظمة قديمة، أو تقوم بتشغيل الاستنتاج على وحدات معالجة مركزية مقيدة بشدة مثل Raspberry Pi، أو تعمل على مشروع حيث يكون توفير كل جزء من الميجابايت في حجم النموذج أمراً بالغ الأهمية، يظل YOLOv5 خياراً موثوقاً.
متى تختار YOLOv8: بالنسبة لجميع المشاريع الجديدة تقريباً التي تبدأ اليوم، يوصى بشدة باستخدام YOLOv8 بدلاً من YOLOv5. تتعامل بنيته المتقدمة مع التتبع المعقد، ومربعات الإحاطة الموجهة (OBB)، والتجزئة دون عناء. إنه مثالي للتطبيقات الحديثة التي تتراوح من الروبوتات المستقلة إلى تحليل الصور الطبية والبنية التحتية للمدن الذكية.
في حين أن YOLOv8 قادر بشكل لا يصدق، يجب على المطورين الذين يسعون للحصول على أقصى حدود الأداء التفكير في YOLO26. الذي تم إطلاقه في عام 2026، ويقدم العديد من التطورات الرائدة:
- تصميم من البداية للنهاية بدون NMS: يلغي معالجة NMS اللاحقة لنشر أسرع وأبسط، وهو مفهوم تم ريادته لأول مرة في YOLOv10.
- محسن MuSGD: هجين من SGD و Muon يجلب ابتكارات تدريب LLM إلى الرؤية الحاسوبية، مما يتيح تدريباً أكثر استقراراً وتقارباً أسرع.
- استنتاج وحدة المعالجة المركزية أسرع بنسبة تصل إلى 43%: محسّن بشكل كبير لبيئات الحوسبة الطرفية بدون وحدات معالجة رسومات مخصصة.
- إزالة DFL: تمت إزالة Distribution Focal Loss لتبسيط التصدير وتحسين توافق أجهزة الحافة.
- ProgLoss + STAL: وظائف خسارة متقدمة تدفع تحسينات ملحوظة في التعرف على الكائنات الصغيرة، وهو أمر بالغ الأهمية للصور الجوية وإنترنت الأشياء (IoT).
من خلال الاستفادة من التوثيق والأدوات الشاملة التي توفرها Ultralytics، يمكنك بسهولة نشر YOLOv8، أو استكشاف YOLO26 المتطور، لحل تحديات بصرية معقدة بسرعة ودقة غير مسبوقة. لمزيد من التعلم، ضع في اعتبارك استكشاف أدلتنا حول ضبط المعلمات الفائقة وممارسات نشر النموذج.