YOLOv8 مقابل YOLOv5: مقارنة تقنية شاملة

يعد اختيار بنية الرؤية الحاسوبية المناسبة خطوة حاسمة في بناء خطوط معالجة قوية للتعلم الآلي. في هذه المقارنة التقنية التفصيلية، نستكشف الاختلافات بين نموذجين من أكثر النماذج شيوعًا في نظام الرؤية بالذكاء الاصطناعي: YOLOv8 و YOLOv5. تم تطوير كلا النموذجين بواسطة Ultralytics، وقد شكلا بشكل كبير مشهد اكتشاف الأشياء في الوقت الفعلي، مما وضع معايير الصناعة للسرعة والدقة وسهولة الاستخدام.

سواء كنت تقوم بالنشر على أجهزة الحافة أو توسيع نطاق الاستدلال السحابي، فإن فهم التحولات المعمارية، ومقاييس الأداء، ومنهجيات التدريب لهذه النماذج سيساعدك على اتخاذ قرار مستنير لمشاريع الرؤية الحاسوبية الخاصة بك.

Ultralytics YOLOv8: المعيار المتعدد الاستخدامات

تم إصدار YOLOv8 في أوائل عام 2023، ومثل تحولًا معماريًا كبيرًا عن سابقاته. صُمم من الألف إلى الياء ليكون إطار عمل موحدًا قادرًا على التعامل مع مهام رؤية متعددة بشكل أصلي، بما في ذلك تجزئة المثيلات، وتصنيف الصور، وتقدير الوضعية.

العمارة والمنهجيات

قدم YOLOv8 رأس اكتشاف خالٍ من المراسٍ (anchor-free)، مما يبسط عملية التدريب من خلال القضاء على الحاجة إلى تكوين مربعات المراسٍ (anchor boxes) يدويًا بناءً على توزيع مجموعة البيانات. وهذا يجعل النموذج أكثر قوة عند التعميم على مجموعات بيانات مخصصة ويقلل من عدد توقعات المربعات، مما يسرع من قمع العناصر غير القصوى (NMS).

تتميز البنية بـ وحدة C2f (عنق زجاجة جزئي عبر المراحل مع عمليتين التفافيتين)، والتي تحل محل وحدة C3 الموجودة في YOLOv5. تعمل وحدة C2f على تحسين تدفق التدرج وتسمح للنموذج بتعلم تمثيلات ميزات أغنى دون زيادة كبيرة في التكلفة الحسابية. علاوة على ذلك، يستخدم YOLOv8 بنية رأس مفكك (decoupled head)، تفصل بين مهام كائنية الوجود (objectness)، والتصنيف، والانحدار، مما ثبت أنه يحسن سرعة التقارب والدقة.

كفاءة الذاكرة

نماذج Ultralytics YOLO، بما في ذلك YOLOv8، مُحسّنة لاستخدام ذاكرة CUDA أقل أثناء التدريب مقارنة بالعديد من البدائل القائمة على المحولات (Transformer) مثل RT-DETR. يسمح هذا للمطورين باستخدام أحجام دفعات (batch sizes) أكبر على وحدات معالجة الرسومات الاستهلاكية القياسية مثل سلسلة NVIDIA RTX.

نقاط القوة والضعف

نقاط القوة:

  • تعدد استخدامات لا مثيل له عبر مهام متعددة تتجاوز مجرد اكتشاف مربعات الإحاطة.
  • واجهة برمجة تطبيقات Python مبسطة عبر حزمة ultralytics، مما يجعل التدريب والتصدير بديهيًا للغاية.
  • متوسط دقة متوسطة mAP أعلى عبر جميع متغيرات الحجم مقارنة بـ YOLOv5.

نقاط الضعف:

  • يؤدي الرأس المفكك ووحدة C2f إلى زيادة طفيفة في عدد المعلمات وFLOPs لبعض المتغيرات مقارنة بنظرائها المباشرة في YOLOv5.

اعرف المزيد عن YOLOv8

Ultralytics YOLOv5: الرائد الرشيق

تم تقديم YOLOv5 في عام 2020، وجلب YOLO إلى نظام PyTorch البيئي، مما أدى إلى تحسين إمكانية وصول المطورين بشكل كبير. سرعان ما أصبح معيار الصناعة لنماذج اكتشاف الأشياء السريعة والموثوقة والقابلة للنشر بسهولة.

العمارة والمنهجيات

يعتمد YOLOv5 على بنية قائمة على المراسٍ (anchor-based) ويستخدم عمودًا فقريًا معدلًا من CSPDarknet53. في حين أن الأساليب القائمة على المراسٍ تتطلب تجميعًا دقيقًا لمربعات إحاطة مجموعة البيانات لتحديد المراسٍ المثلى قبل التدريب، فهي فعالة للغاية لمجموعات بيانات محددة ومحددة جيدًا.

يدمج YOLOv5 وحدة C3، التي تستخرج الميزات بكفاءة مع الحفاظ على بصمة معلمات منخفضة. تعتمد دالة الخسارة الخاصة به بشكل كبير على خسارة كائنية الوجود (Objectness loss) مدمجة مع خسائر التصنيف وانحدار مربعات الإحاطة لتوجيه الشبكة نحو تنبؤات دقيقة.

نقاط القوة والضعف

نقاط القوة:

  • خفيف الوزن للغاية، مما يجعل متغيرات Nano (YOLOv5n) و Small (YOLOv5s) مناسبة جدًا لعمليات نشر ذكاء اصطناعي على الحافة محدودة الموارد.
  • سرعات استدلال سريعة للغاية، خاصة على وحدات المعالجة المركزية (CPUs).
  • نظام بيئي راسخ بعمق مع دروس تعليمية مجتمعية واسعة وتكاملات من أطراف خارجية.

نقاط الضعف:

  • يتطلب تكوين مربع المراسٍ، مما قد يعقد الإعداد لمجموعات البيانات شديدة التباين أو المخصصة.
  • دقة إجمالية (mAP) أقل مقارنة بالبنى الحديثة الخالية من المراسٍ مثل YOLOv8 و YOLO26.

اعرف المزيد حول YOLOv5

مقارنة الأداء

عند تقييم هذه النماذج، يعد تحقيق توازن مناسب بين السرعة والدقة أمرًا بالغ الأهمية. يوضح الجدول أدناه مقاييس الأداء لكلا البنيتين اللتين تم تقييمهما على مجموعة بيانات COCO. تم قياس سرعات CPU باستخدام ONNX، بينما تم اختبار سرعات GPU باستخدام TensorRT.

النموذجالحجم
(بكسل)
mAPval
50-95
السرعة
CPU ONNX
(ملي ثانية)
السرعة
T4 TensorRT10
(ملي ثانية)
المعلمات
(مليون)
FLOPs
(مليار)
YOLOv8n64037.380.41.473.28.7
YOLOv8s64044.9128.42.6611.228.6
YOLOv8m64050.2234.75.8625.978.9
YOLOv8l64052.9375.29.0643.7165.2
YOLOv8x64053.9479.114.3768.2257.8
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4

بينما يحتفظ YOLOv5 بميزة طفيفة في عدد المعلمات والسرعة الخام المطلقة لمتغير Nano الخاص به، يقدم YOLOv8 قفزة هائلة في mAP في جميع المجالات، مما يوفر توازن أداء أقوى بكثير لسيناريوهات النشر الواقعية المتطلبة.

سهولة الاستخدام ونظام 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 Platform يبسط إدارة مجموعة البيانات، والتدريب السحابي، والنشر، مما يضمن التطوير النشط ودعم المجتمع القوي.

حالات الاستخدام المثالية

متى تختار YOLOv5: إذا كنت تحافظ على أنظمة قديمة، أو تشغل استدلالًا على وحدات معالجة مركزية مقيدة بشدة مثل Raspberry Pi، أو تعمل على مشروع حيث يكون توفير كل جزء من الميجابايت في حجم النموذج أمرًا بالغ الأهمية، يظل YOLOv5 خيارًا موثوقًا.

متى تختار YOLOv8: بالنسبة لجميع المشاريع الجديدة تقريبًا التي تبدأ اليوم، يوصى بشدة باستخدام YOLOv8 بدلاً من YOLOv5. تتعامل بنيته المتقدمة مع التتبع المعقد، ومربعات الإحاطة الموجهة (OBB)، والتجزئة دون عناء. إنه مثالي للتطبيقات الحديثة بدءًا من الروبوتات المستقلة إلى تحليل الصور الطبية وبنية المدن الذكية.

هل تبحث عن أحدث ما توصلت إليه التكنولوجيا؟

بينما يعد YOLOv8 قادرًا بشكل لا يصدق، يجب على المطورين الذين يسعون للحصول على أقصى حدود الأداء التفكير في YOLO26. تم إصداره في عام 2026، وهو يقدم العديد من التطورات الرائدة:

  • تصميم من طرف إلى طرف خالٍ من NMS: يلغي معالجة NMS اللاحقة لنشر أسرع وأبسط، وهو مفهوم تم الريادة فيه لأول مرة في YOLOv10.
  • مُحسِّن MuSGD: مزيج من SGD و Muon يجلب ابتكارات تدريب النماذج اللغوية الكبيرة (LLM) إلى الرؤية الحاسوبية، مما يتيح تدريبًا أكثر استقرارًا وتقاربًا أسرع.
  • استدلال CPU أسرع بنسبة تصل إلى 43%: مُحسّن بشكل كبير لبيئات الحوسبة الطرفية بدون وحدات معالجة رسومات مخصصة.
  • إزالة DFL: تمت إزالة توزيع خسارة البؤرة (Distribution Focal Loss) لتبسيط التصدير وتعزيز توافق أجهزة الحافة.
  • ProgLoss + STAL: دوال خسارة متقدمة تقود تحسينات ملحوظة في التعرف على الأشياء الصغيرة، وهو أمر بالغ الأهمية للصور الجوية وإنترنت الأشياء (IoT).

من خلال الاستفادة من التوثيق الشامل والأدوات المقدمة من Ultralytics، يمكنك بسهولة نشر YOLOv8، أو استكشاف YOLO26 المتطور، لحل تحديات بصرية معقدة بسرعة ودقة غير مسبوقين. لمزيد من التعلم، فكر في استكشاف أدلتنا حول ضبط المعلمات الفائقة وممارسات نشر النماذج.

التعليقات