YOLOv7 مقابل YOLOv10: تطور اكتشاف الكائنات في الوقت الفعلي
شهد مجال الرؤية الحاسوبية تطورات ملحوظة على مدار السنوات القليلة الماضية، حيث قادت عائلة نماذج YOLO (You Only Look Once) زمام المبادرة في اكتشاف الكائنات في الوقت الفعلي. يتطلب اختيار البنية المناسبة لمشاريع الرؤية الحاسوبية فهماً عميقاً للخيارات المتاحة. في هذه المقارنة التقنية الشاملة، سنستكشف الاختلافات الرئيسية بين بنيتين بارزتين: YOLOv7 و YOLOv10.
مقدمة عن النماذج
يمثل كلا النموذجين معالم هامة في تاريخ الذكاء الاصطناعي، ومع ذلك فإنهما يتبعان أساليب مختلفة جذرياً في حل تحديات اكتشاف الكائنات.
YOLOv7: رائد "مجموعة الهدايا" (Bag-of-Freebies)
تم إطلاق YOLOv7 في 6 يوليو 2022 بواسطة الباحثين Chien-Yao Wang و Alexey Bochkovskiy و Hong-Yuan Mark Liao من معهد علوم المعلومات في أكاديمية سينيكا، وقد قدم نموذجاً غيّر المفاهيم السائدة حول كيفية تحسين الشبكات العصبية. ركز البحث الأصلي، المفصل في ورقتهم الأكاديمية والموجود في مستودع GitHub الرسمي، بشكل كبير على إعادة معايير البنية (architectural re-parameterization) و"مجموعة المجانيات" (bag-of-freebies) القابلة للتدريب.
يستفيد YOLOv7 من شبكة تجميع الطبقات الفعالة الموسعة (E-ELAN) لتوجيه الشبكة في تعلم ميزات متنوعة دون تدمير مسار التدرج الأصلي. وهذا يجعله خياراً قوياً لمقاييس الأبحاث الأكاديمية والأنظمة التي تعتمد بشكل كبير على وحدات GPU القياسية المتطورة.
YOLOv10: اكتشاف من الطرف إلى الطرف في الوقت الفعلي
تم تطوير YOLOv10 بواسطة Ao Wang وفريقه في جامعة تسينغhua، وأُطلق في 23 مايو 2024. وكما هو مفصل في منشور arxiv الخاص به وفي مستودع GitHub الخاص بجامعة تسينغhua، يلغي هذا النموذج عقبة طويلة الأمد في اكتشاف الكائنات: وهي قمع غير الأقصى (NMS).
قدم YOLOv10 تعيينات مزدوجة متسقة للتدريب بدون NMS، مما أدى إلى تغيير جذري في خط أنابيب المعالجة اللاحقة. ومن خلال نشر استراتيجية تصميم نموذج شاملة مدفوعة بالكفاءة والدقة، يقلل YOLOv10 من التكرار الحسابي. وينتج عن ذلك بنية مصممة خصيصاً لأجهزة الحافة التي تتطلب زمن انتقال منخفضاً للغاية.
مقارنة الأداء والمقاييس
عند تحليل أداء النموذج، من الضروري تقييم المقايضات بين الدقة والسرعة والوزن الحسابي. يوضح الجدول التالي كيف تقارن أحجام مختلفة من هذه النماذج ببعضها البعض.
| النموذج | الحجم (بكسل) | mAPval 50-95 | السرعة CPU ONNX (ملي ثانية) | السرعة T4 TensorRT10 (ملي ثانية) | المعلمات (مليون) | FLOPs (مليار) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| 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 |
تحليل المقايضات
تكشف المقاييس أعلاه عن فجوة جيلية واضحة. فبينما يقدم YOLOv7x قيمة mAPval قوية جداً تبلغ 53.1%، فإنه يتطلب 71.3 مليون معلمة و189.9 مليار FLOPs. في المقابل، يتفوق YOLOv10l في تلك الدقة (53.3% mAP) مع تطلبه لأقل من نصف المعلمات (29.5 مليون) وعدد أقل بكثير من FLOPs (120.3 مليار). علاوة على ذلك، يوفر YOLOv10n المحسن للغاية سرعة استنتاج مذهلة تبلغ 1.56 مللي ثانية، مما يجعله مثالياً لتحليلات الفيديو في الوقت الفعلي وتطبيقات الهاتف المحمول.
حالات الاستخدام الواقعية
الاختلافات الهيكلية بين هذه النماذج تحدد حالات استخدامها المثلى.
متى تستخدم YOLOv7
نظراً لتمثيله الغني للميزات، يتفوق YOLOv7 في البيئات المعقدة للغاية. تستفيد حالات الاستخدام مثل مراقبة تدفق حركة المرور في المناطق الحضرية المزدحمة، أو تحليل صور الأقمار الصناعية، أو تحديد العيوب في أتمتة التصنيع الثقيلة من إعادة معايير بنيته القوية. كما أنه مفضل بشدة في البيئات القديمة التي تم دمجها بالفعل بعمق مع خطوط أنابيب PyTorch 1.12 المحددة.
متى تستخدم YOLOv10
يبرز تصميم YOLOv10 الخفيف والخالي من NMS في البيئات المقيدة. يوصى به بشدة لأجهزة حوسبة الحافة مثل NVIDIA Jetson Nano أو Raspberry Pi. أداؤه منخفض زمن الانتقال يجعله مثالياً للتطبيقات سريعة الحركة مثل تحليلات الرياضة، والملاحة المستقلة للطائرات بدون طيار، والفرز الآلي عالي السرعة على أحزمة النقل.
ميزة نظام Ultralytics البيئي
على الرغم من أن كلا النموذجين لهما جذور أكاديمية قوية، إلا أن إمكاناتهما الحقيقية تتحرر عند استخدامهما ضمن منصة Ultralytics الموحدة. تطوير نماذج الرؤية الحاسوبية من الصفر أمر صعب للغاية، لكن نظام Ultralytics البيئي يوفر تجربة لا مثيل لها لمهندسي تعلم الآلة.
- سهولة الاستخدام: توفر واجهة برمجة تطبيقات Python الخاصة بـ Ultralytics واجهة موحدة. يمكنك تدريب النماذج والتحقق منها وتصديرها ببضعة أسطر فقط من التعليمات البرمجية، مما يجنبك كوابيس التبعيات المعقدة المرتبطة بالمستودعات الأكاديمية النموذجية.
- نظام بيئي مُصان جيداً: تضمن Ultralytics أن الكود الأساسي يتم تطويره بنشاط. يستفيد المستخدمون من عمليات التكامل السلسة مع أدوات تعلم الآلة الشهيرة مثل Weights & Biases للتسجيل، أو Hugging Face للعروض التوضيحية السريعة عبر الويب.
- متطلبات الذاكرة: تستهلك أجهزة كشف الكائنات القائمة على Transformer غالباً كميات هائلة من ذاكرة CUDA أثناء التدريب. في المقابل، تتطلب نماذج Ultralytics YOLO ذاكرة أقل بكثير، مما يسمح بـ أحجام دفعات أكبر بكثير على الأجهزة الاستهلاكية.
- تعدد الاستخدامات: لا يقتصر خط أنابيب Ultralytics على الصناديق المحيطة القياسية. فهو يدعم بسلاسة تقدير الوضع، وتجزئة المثيلات، والصناديق المحيطة الموجهة عبر عائلات النماذج المدعومة مثل YOLO11 و YOLOv8.
مثال على تدريب مبسط
تشغيل خط أنابيب تدريب باستخدام Ultralytics أمر مباشر بشكل لافت للنظر. بغض النظر عما إذا كنت تستفيد من المتانة التاريخية لـ YOLOv7 أو السرعة الخالية من NMS لـ YOLOv10، فإن البنية تظل متسقة:
from ultralytics import YOLO
# Load the preferred model (e.g., YOLOv10 Nano)
model = YOLO("yolov10n.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run an inference prediction on a sample image
predictions = model.predict("https://ultralytics.com/images/bus.jpg")
# Export to an edge-friendly format like ONNX
model.export(format="onnx")حالات الاستخدام والتوصيات
يعتمد الاختيار بين YOLOv7 و YOLOv10 على متطلبات مشروعك المحددة، وقيود النشر، وتفضيلات النظام البيئي.
متى تختار YOLOv7
YOLOv7 هو خيار قوي لـ:
- قياس الأداء الأكاديمي: إعادة إنتاج نتائج متطورة من حقبة 2022 أو دراسة تأثيرات تقنيات E-ELAN والحقيبة القابلة للتدريب من الميزات المجانية.
- أبحاث إعادة المعاملة: التحقيق في الالتفافات المخطط لها والمُعاد معاملتها واستراتيجيات تحجيم النماذج المركبة.
- خطوط الأنابيب المخصصة الحالية: المشاريع ذات خطوط الأنابيب المخصصة بشكل كبير والمبنية حول معمارية YOLOv7 المحددة والتي لا يمكن إعادة هيكلتها بسهولة.
متى تختار YOLOv10
يُنصح بـ YOLOv10 لـ:
- اكتشاف الوقت الفعلي الخالي من NMS: التطبيقات التي تستفيد من الاكتشاف الشامل دون Non-Maximum Suppression، مما يقلل من تعقيد النشر.
- موازنة مقايضات السرعة والدقة: المشاريع التي تتطلب توازناً قوياً بين سرعة الاستدلال ودقة الاكتشاف عبر مختلف مقاييس النماذج.
- Consistent-Latency Applications: Deployment scenarios where predictable inference times are critical, such as robotics or autonomous systems.
متى تختار Ultralytics (YOLO26)
بالنسبة لمعظم المشاريع الجديدة، يوفر Ultralytics YOLO26 أفضل مزيج من الأداء وتجربة المطورين:
- نشر الحافة الخالي من NMS: التطبيقات التي تتطلب استدلالاً ثابتاً ومنخفض التأخير دون تعقيد المعالجة اللاحقة لـ Non-Maximum Suppression.
- بيئات تعتمد فقط على CPU: الأجهزة التي لا تحتوي على تسريع GPU مخصص، حيث توفر سرعة استدلال YOLO26 الأسرع بنسبة تصل إلى 43% على CPU ميزة حاسمة.
- اكتشاف الكائنات الصغيرة: السيناريوهات الصعبة مثل صور الطائرات بدون طيار أو تحليل مستشعرات إنترنت الأشياء حيث تعزز ProgLoss و STAL الدقة بشكل كبير على الكائنات الصغيرة جداً.
المستقبل: تقديم YOLO26
بينما يعد YOLOv7 و YOLOv10 معلمين مثيرين للإعجاب، فإن حدود الذكاء الاصطناعي تتقدم دائماً. تم إطلاق Ultralytics YOLO26 في يناير 2026، وهو المعيار الجديد بلا منازع للكفاءة والدقة عبر جميع سيناريوهات النشر على الحافة والسحابة.
إذا كنت تبدأ مشروع رؤية حاسوبية جديد اليوم، فإن YOLO26 هو البنية الموصى بها. إنه يبني على إرث أسلافه من خلال دمج العديد من الابتكارات الرائدة:
- تصميم NMS-Free من الطرف إلى الطرف: باستلهام من YOLOv10، يلغي YOLO26 أصلاً المعالجة اللاحقة لـ NMS، مما يضمن استنتاجاً بزمن انتقال منخفض للغاية للروبوتات الحتمية في الوقت الفعلي.
- استنتاج أسرع بنسبة تصل إلى 43% على CPU: من خلال إزالة وحدة خسارة التنسيق التوزيعي (DFL) بشكل استراتيجي، يسرع YOLO26 التنفيذ بشكل كبير على أجهزة حوسبة الحافة غير المزودة بـ GPU، مما يجعله قوة محركة لـ أجهزة IoT.
- مُحسِّن MuSGD: مستوحى من ابتكارات تدريب نماذج اللغة الكبيرة الحديثة، يدمج YOLO26 مزيجاً من SGD و Muon، مما يؤدي إلى استقرار مسارات التدريب وضمان تقارب أسرع.
- ProgLoss + STAL: تحقق دوال الخسارة المتقدمة هذه تحسينات ملحوظة في التعرف على الكائنات الصغيرة، متغلبة على نقطة ضعف تاريخية في أجيال YOLO القديمة.
- تعدد استخدامات لا مثيل له: يتميز YOLO26 بتحسينات أصلية خاصة بالمهمة مثل تقدير احتمالية اللوغاريتم المتبقي (RLE) لتتبع الوضع وخسائر الزاوية المتخصصة لاكتشاف OBB الدقيق في صور الجو.
بالنسبة للمهندسين الذين يسعون للحصول على التوازن الأمثل بين السرعة والدقة وبساطة النشر، فإن الانتقال من النماذج القديمة إلى YOLO26 يوفر ميزة تنافسية فورية وقابلة للقياس.