YOLOv8 مقابل YOLOv7#
يتطور مجال الرؤية الحاسوبية باستمرار، إذ تدفع البُنى الجديدة حدود ما هو ممكن في اكتشاف الأجسام في الوقت الفعلي. في هذا التحليل المتعمق، نقارن بين نموذجين بالغي التأثير: Ultralytics YOLOv8 وYOLOv7. لقد أثّر كلا النموذجين تأثيرًا كبيرًا في مجتمع المطورين والبحث الأكاديمي، إذ يقدّم كل منهما أساليب فريدة لحل المهام البصرية المعقدة.
يُعد فهم الاختلافات البنيوية والمنهجية بين هذين النموذجين أمرًا بالغ الأهمية لمهندسي تعلّم الآلة الذين يسعون إلى تحسين مسارات نشرهم. فبينما قدّم YOLOv7 نهجًا قويًا قائمًا على «حقيبة المزايا المجانية» ومصممًا لتحقيق أعلى معدل معالجة خام، ركّز Ultralytics YOLOv8 على إنشاء منظومة متكاملة وسهلة الاستخدام توازن بين الدقة العالية وانخفاض استهلاك الذاكرة وتعدد الاستخدامات في المهام.
Ultralytics YOLOv8: معيار المنظومة المتعددة الاستخدامات#
أطلقته Ultralytics في أوائل عام 2023، ويمثّل YOLOv8 تحولًا معماريًا كبيرًا مقارنةً بأسلافه. وقد صُمّم من الأساس ليكون أكثر من مجرد كاشف أجسام في الوقت الفعلي؛ فهو إطار موحّد قادر على التعامل مع مجموعة واسعة من مهام الرؤية مباشرةً.
- المؤلفون: Glenn Jocher وAyush Chaurasia وJing Qiu
- المنظمة: Ultralytics
- التاريخ: 2023-01-10
- GitHub: ultralytics/ultralytics
- الوثائق: وثائق YOLOv8
الابتكارات المعمارية#
قدّم YOLOv8 رأس كشف خاليًا من المراسي. ويبسّط ذلك عملية التدريب بصورة جوهرية من خلال إلغاء الحاجة إلى ضبط صناديق المراسي يدويًا استنادًا إلى التوزيع المحدد لمجموعة بياناتك المخصصة. ويجعل هذا الخيار التصميمي النموذجَ متينًا للغاية وأسهل في التعميم عبر البيئات المختلفة.
بالإضافة إلى ذلك، تتضمن البنية وحدة C2f (عنق زجاجة جزئي عبر المراحل مع التفافين)، وهي ترقية بنيوية تحسّن تدفق التدرجات وتتيح للشبكة العصبية تعلّم تمثيلات أغنى للسمات دون زيادة كبيرة في التكلفة الحسابية. ويجعل ذلك النموذج عالي الكفاءة عند إجراء الاستدلال عبر أطر التعلّم العميق القياسية مثل PyTorch.
صُمّمت نماذج Ultralytics YOLO لتحقيق أعلى كفاءة في التدريب. وعادةً ما تتطلب ذاكرة CUDA أقل بكثير أثناء التدريب مقارنةً بالبُنى المعتمدة على Transformer أو شبكات CNN الأثقل. ويتيح لك ذلك التدريب باستخدام أحجام دفعات أكبر على عتاد مخصص للمستهلكين، مما يسرّع دورة التطوير لديك.
YOLOv7: نهج «حقيبة المزايا المجانية»#
قُدّم YOLOv7 في منتصف عام 2022، وسرعان ما أصبح خط أساس شائعًا في الأوساط الأكاديمية. وقد ركّز بدرجة كبيرة على إعادة المعلمة المعمارية وتحسين مسارات التدرج لدفع حدود اكتشاف الأجسام في الوقت الفعلي على وحدات GPU عالية الأداء.
- المؤلفون: Chien-Yao Wang وAlexey Bochkovskiy وHong-Yuan Mark Liao
- الجهة: معهد علوم المعلومات، Academia Sinica، تايوان
- التاريخ: 2022-07-06
- Arxiv: 2207.02696
- GitHub: WongKinYiu/yolov7
الابتكارات المعمارية#
يستخدم YOLOv7 شبكة تجميع طبقات فعّالة موسّعة (E-ELAN)، مما يتيح للنموذج تعلّم سمات أكثر تنوعًا بصورة مستمرة. ويعتمد بدرجة كبيرة على نهج قائم على المراسي، ويقدّم «حقيبة مزايا مجانية» قابلة للتدريب—وهي مجموعة من أساليب التحسين التي ترفع الدقة دون زيادة تكلفة الاستدلال.
مع أن YOLOv7 يحقق أداءً ممتازًا على المعايير الأكاديمية القياسية مثل مجموعة بيانات MS 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 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
كما يتضح من البيانات، يحقق YOLOv8x أعلى دقة مطلقة (53.9 mAP)، بينما يوفر الإصدار Nano (YOLOv8n) سرعات استدلال استثنائية وبصمة خفيفة للغاية. ويجعل هذا التنوع YOLOv8 أكثر قدرة بكثير على التكيف مع بيئات العتاد محدودة الموارد.
ميزة Ultralytics: سهولة الاستخدام والمنظومة#
مع أن YOLOv7 يوفر مقاييس كشف خامًا قوية، فإن Ultralytics YOLOv8 يتفوق عليه بدرجة كبيرة من حيث تجربة المطور، وتكامل المنظومة، وقدرات تعدد المهام.
تعدد استخدامات لا مثيل له#
يُعد YOLOv7 نموذج كشف في المقام الأول، مع فروع تجريبية لمهام أخرى. وعلى النقيض، يدعم YOLOv8 أصليًا اكتشاف الأجسام، وتجزئة المثيلات، وتصنيف الصور، وتقدير الوضعية، والمربعات المحيطة الموجّهة (OBB). ويعني هذا النهج الموحّد أن بوسع الفريق تعلّم API واحد ونشره عبر متطلبات مشاريع مختلفة تمامًا.
النشر والتكاملات المبسّطة#
قد يكون تصدير نموذج للاستخدام في الإنتاج عنق زجاجة في كثير من الأحيان. وتتيح حزمة Ultralytics للمطورين التصدير إلى تنسيقات مثل ONNX وTensorRT وCoreML باستخدام سطر واحد من تعليمات Python البرمجية. ويجنّب ذلك مشكلات دعم المعاملات التي تُواجه أحيانًا عند تصدير الرسوم البيانية المعقدة القائمة على المراسي.
علاوةً على ذلك، يتكامل YOLOv8 بسلاسة مع أدوات MLOps. سواء أكنت تتتبّع التجارب باستخدام Weights & Biases أم تختبر عمليات النشر على Hugging Face Spaces، فإن منظومة Ultralytics تتولى الجزء الأكبر من العمل.
مثال برمجي: تدريب YOLOv8 وتصديره#
يوضح الكود التالي بساطة Python API الخاصة بـ Ultralytics. ويمكنك الانتقال من تهيئة النموذج إلى تدريبه وتصديره للنشر على الأجهزة الطرفية في أقل من عشرة أسطر من التعليمات البرمجية.
from ultralytics import YOLO
# Load a pretrained YOLOv8 nano model for fast inference
model = YOLO("yolov8n.pt")
# Train the model on the COCO8 dataset
# The API handles data loading, augmentation, and logging automatically
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on a test image
predictions = model("https://ultralytics.com/images/bus.jpg")
# Export the trained model to ONNX format for deployment
model.export(format="onnx")يوفر استخدام الدالة model.export() جسرًا فوريًا إلى محركات استدلال عالية الأداء، مما يتيح لك دمج YOLOv8 بسهولة في تطبيقات الأجهزة المحمولة أو الأنظمة المضمّنة أو خوادم السحابة ذات معدل المعالجة العالي.
حالات الاستخدام الواقعية#
تحدد الاختلافات المعمارية بين النموذجين سيناريوهات النشر المثالية لكل منهما.
متى تختار YOLOv8:
- الذكاء الاصطناعي الطرفي وأجهزة إنترنت الأشياء: يتيح توفر نموذجي Nano وSmall فائقَي السرعة جعل YOLOv8 مناسبًا تمامًا للعتاد محدود القدرة الحاسوبية، مثل الكاميرات الذكية أو الطائرات المسيّرة.
- مشاريع متعددة المهام: إذا كان مسار العمل لديك يتطلب تتبّع مفاصل الإنسان (تقدير الوضعية) مع رسم خرائط للعوائق في الوقت نفسه (التجزئة)، فإن YOLOv8 يتعامل مع ذلك أصليًا.
- من النمذجة الأولية السريعة إلى الإنتاج: تتيح وثائق Ultralytics الشاملة وPython API السلسة للفرق طرح المنتجات في السوق بسرعة أكبر.
متى تنظر في YOLOv7:
- المقارنة المعيارية الأكاديمية: غالبًا ما يستخدم الباحثون الذين يدرسون تأثيرات أساليب إعادة المعلمة YOLOv7 خط أساس قياسيًا، كما يتضح من شعبيته على Papers With Code.
- مسارات الخوادم القديمة: إذا كان مسار عمل قائم ذو متطلبات حوسبة مرتفعة محسّنًا بالفعل بصورة صارمة حول مخرجات المراسي الخاصة بـ YOLOv7، فقد يكون الإبقاء عليه عمليًا على المدى القصير.
نظرة مستقبلية: الجيل التالي#
مع أن YOLOv8 لا يزال أداة قوية ومتعددة الاستخدامات، فإن مشهد الذكاء الاصطناعي يتطور بسرعة. ونوصي بشدة الفرق التي تبدأ مشاريع جديدة باستكشاف أحدث التطورات في مجموعة نماذج Ultralytics.
يمثّل الجيل الأحدث، YOLO26، ذروة الذكاء الاصطناعي الحالي في مجال الرؤية. فهو يتميز بتصميم شامل من البداية وخالٍ من NMS، مما يلغي المعالجة اللاحقة لقمع القيم غير العظمى ويتيح نشرًا أبسط وأسرع. ومع إزالة خسارة البؤرة التوزيعية (DFL) وإدخال محسّن MuSGD المستوحى من LLM، يوفر YOLO26 تدريبًا أكثر استقرارًا واستدلالًا على CPU أسرع بنسبة تصل إلى 43%. وتحسّن دوال الخسارة المتقدمة ProgLoss + STAL التعرّف على الأجسام الصغيرة بدرجة كبيرة، مما يجعله الخيار الأمثل للحوسبة الطرفية الحديثة والصور الجوية.
بالنسبة إلى المستخدمين الذين ينتقلون من الأنظمة الأقدم، يظل كل من YOLO11 ذي القدرات العالية و**YOLOv5** الكلاسيكي مدعومًا بالكامل ضمن منظومة Ultralytics الموحّدة، مما يضمن توفر نموذج سلس وعالي الأداء جاهز للنشر مهما كانت قيود العتاد لديك.