YOLOv7 مقابل YOLOv6-3.0: مقارنة تقنية شاملة
يشهد مجال رؤية الكمبيوتر تطوراً مستمراً، حيث تواصل نماذج كشف الكائنات الجديدة دفع حدود السرعة والدقة. ومن أبرز المحطات في هذه الرحلة نموذجا YOLOv7 و YOLOv6-3.0. قدم كلا النموذجين ابتكارات معمارية فريدة مصممة لزيادة الإنتاجية والدقة إلى أقصى حد للتطبيقات الواقعية. توفر هذه الصفحة تحليلاً تقنياً متعمقاً لكلا البنيتين، مع مقارنة أدائهما ومنهجيات التدريب وحالات الاستخدام المثالية لمساعدتك في اتخاذ قرار مستنير لمشروع الذكاء الاصطناعي التالي الخاص بك.
YOLOv7: رائد "مجموعة الهدايا" (Bag-of-Freebies)
تم إصدار YOLOv7 في منتصف عام 2022، وقدم العديد من الاستراتيجيات المبتكرة لتحسين بنية الشبكة دون زيادة تكلفة الاستدلال. وقد ركز بشكل كبير على "مجموعة الهدايا" (bag-of-freebies) القابلة للتدريب لتحسين الدقة مع الحفاظ على الأداء في الوقت الفعلي.
- المؤلفون: Chien-Yao Wang و Alexey Bochkovskiy و Hong-Yuan Mark Liao
- المؤسسة: معهد علوم المعلومات، أكاديمية سينيكا، تايوان
- التاريخ: 2022-07-06
- Arxiv: 2207.02696
- GitHub: WongKinYiu/yolov7
- التوثيق: توثيق Ultralytics YOLOv7
أبرز ملامح البنية
يتميز YOLOv7 بشبكة تجميع الطبقات الفعالة والموسعة (E-ELAN). تسمح هذه البنية للنموذج بتعلم ميزات أكثر تنوعاً من خلال التحكم في أقصر وأطول مسار للتدرج. علاوة على ذلك، يستخدم YOLOv7 تقنيات إعادة التقييم الهيكلي أثناء الاستدلال لدمج طبقات الالتفاف، مما يقلل بشكل فعال من عدد المعلمات ووقت الحساب دون التضحية بالتمثيلات المتعلمة.
يتميز النموذج أيضاً باستراتيجية تدريب فريدة تعتمد على الرأس المساعد. من خلال استخدام "رأس رئيسي" للتنبؤات النهائية و"رأس مساعد" لتوجيه التدريب في الطبقات الوسطى، يحقق YOLOv7 تقارباً أفضل واستخراجاً أغنى للميزات، وهو أمر مفيد بشكل خاص عند التعامل مع مهام كشف الكائنات الصعبة.
YOLOv6-3.0: إنتاجية بمستوى صناعي
تم تطوير YOLOv6-3.0 بواسطة قسم رؤية الكمبيوتر في Meituan، وصُمم صراحةً كـ "كاشف كائنات من الجيل التالي للتطبيقات الصناعية". تم إصداره في أوائل عام 2023، ويركز بشكل كبير على تعظيم الاستفادة من الأجهزة، وخاصة وحدات معالجة الرسومات من NVIDIA.
- المؤلفون: Chuyi Li, Lulu Li, Yifei Geng، وآخرون.
- المنظمة: Meituan
- التاريخ: 2023-01-13
- Arxiv: 2301.05586
- GitHub: meituan/YOLOv6
- المستندات: توثيق Ultralytics YOLOv6
أبرز ملامح البنية
يعتمد YOLOv6-3.0 على بنية EfficientRep، التي تم تحسينها بشكل كبير للمعالجة المتوازية على وحدات معالجة الرسومات. وهذا يجعله فعالاً بشكل لا يصدق لمعالجة الدفعات واسعة النطاق. قدم الإصدار 3.0 وحدة ربط ثنائية الاتجاه (BiC) في الرقبة لتعزيز دمج الميزات عبر مقاييس مختلفة، مما يحسن قدرة النموذج على كشف الكائنات ذات الأحجام المتفاوتة.
بالإضافة إلى ذلك، يستخدم YOLOv6-3.0 استراتيجية تدريب بمساعدة المراسي (AAT). يجمع هذا النهج المبتكر بين مزايا التدريب القائم على المراسي والاستدلال بدون مراسي، مما يسمح للنموذج بالاستمتاع باستقرار المراسي أثناء مرحلة التعلم مع الحفاظ على سرعة وبساطة التصميم الخالي من المراسي أثناء النشر.
مقارنة الأداء
عند تقييم النماذج للإنتاج، يعد تحقيق التوازن بين الدقة (mAP) وسرعة الاستدلال والنفقات الحسابية (FLOPs) أمراً بالغ الأهمية. فيما يلي مقارنة تفصيلية للمتغيرات القياسية لكلا النموذجين.
| النموذج | الحجم (بكسل) | 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 |
| YOLOv6-3.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
| YOLOv6-3.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
| YOLOv6-3.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
| YOLOv6-3.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
يعد YOLOv6-3.0 مناسباً بشكل استثنائي لبيئات وحدات معالجة الرسومات ذات الإنتاجية العالية (مثل TensorRT)، بينما يوفر YOLOv7 توازناً قوياً للأنظمة التي يتم فيها إعطاء الأولوية القصوى للاحتفاظ بالميزات.
ميزة Ultralytics
في حين أن المستودعات المستقلة لـ YOLOv7 و YOLOv6-3.0 قوية، فإن الاستفادة منها داخل نظام Ultralytics البيئي تغير تجربة المطور. تقوم حزمة ultralytics بلغة Python بتوحيد هذه البنى المتنوعة ضمن إطار عمل واحد بديهي.
- سهولة الاستخدام: لقد ولت أيام برامج إعداد الإعداد المعقدة. تتيح لك واجهة برمجة تطبيقات Ultralytics تحميل وتدريب ونشر نماذج YOLOv7 أو YOLOv6 بأقل قدر من التعليمات البرمجية. يمكنك التبديل بسهولة بين البنى بمجرد تغيير ملف أوزان النموذج.
- نظام بيئي مُصان جيداً: توفر Ultralytics بيئة قوية مع تحديثات متكررة، مما يضمن التوافق الأصلي مع أحدث توزيعات PyTorch وإصدارات CUDA.
- كفاءة التدريب: تم تحسين خطوط أنابيب التدريب بشكل عميق لاستخدام موارد وحدة معالجة الرسومات بفعالية. علاوة على ذلك، تتطلب نماذج Ultralytics YOLO عموماً متطلبات ذاكرة أقل أثناء التدريب مقارنة بالنماذج الثقيلة القائمة على Transformer (مثل RT-DETR)، مما يتيح أحجام دفعات أكبر على الأجهزة الاستهلاكية.
- تعدد الاستخدامات: بالإضافة إلى كشف المربع المحيط القياسي، يدعم إطار عمل Ultralytics بسلاسة مهام متقدمة مثل تقدير الوضعية وتقسيم المثيلات عبر عائلات النماذج المتوافقة، وهي ميزة غالباً ما تفتقر إليها مستودعات الأبحاث المعزولة.
مثال برمجي: التدريب والاستنتاج
دمج هذه النماذج في خط أنابيب Python الخاص بك أمر مباشر. تأكد من تهيئة مجموعة البيانات الخاصة بك بشكل صحيح (على سبيل المثال، COCO القياسي) وقم بتشغيل ما يلي:
from ultralytics import YOLO
# Load a pretrained YOLOv7 model (or 'yolov6n.pt' for YOLOv6)
model = YOLO("yolov7.pt")
# Train the model with built-in hyperparameter management
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image URL or local path
predictions = model("https://ultralytics.com/images/bus.jpg")
# Visualize the detection results
predictions[0].show()حالات الاستخدام المثالية
متى تختار YOLOv7
يتفوق YOLOv7 في السيناريوهات التي تتطلب دقة عالية واستخراج ميزات كثيفة.
- المراقبة المعقدة: قدرته على الاحتفاظ بتفاصيل دقيقة تجعله مناسباً لمراقبة المشاهد المزدحمة أو كشف الشذوذات الصغيرة في البنية التحتية للمدن الذكية.
- المقارنة المعيارية الأكاديمية: يُستخدم غالباً كخط أساس قوي في الأبحاث نظراً لفلسفة تصميمه الشاملة القائمة على "مجموعة الهدايا".
متى تختار YOLOv6-3.0
YOLOv6-3.0 هو الحصان الرابح لخطوط الأنابيب عالية الحجم والمعجلة بوحدات معالجة الرسومات.
- الأتمتة الصناعية: مثالي لخطوط المصانع وكشف عيوب التصنيع حيث تقوم وحدات معالجة الرسومات بمستوى الخوادم بمعالجة تدفقات فيديو متعددة في وقت واحد.
- التحليلات عالية الإنتاجية: ممتاز لمعالجة أرشيفات الفيديو غير المتصلة بالإنترنت حيث يكون الهدف الأساسي هو تعظيم عدد الإطارات في الثانية.
المستقبل: YOLO26
على الرغم من أن YOLOv7 و YOLOv6-3.0 يتمتعان بقدرات عالية، إلا أن وتيرة ابتكار الذكاء الاصطناعي السريعة تتطلب كفاءة أكبر. تم إصدار Ultralytics YOLO26 في يناير 2026، وهو يمثل قفزة جيلية في رؤية الكمبيوتر، حيث يعالج بشكل منهجي قيود البنى القديمة.
إذا كنت تبدأ مشروعاً جديداً، فإننا نوصي بشدة باستخدام YOLO26 بدلاً من الأجيال السابقة. وهو يقدم العديد من الميزات الرائدة:
- تصميم بدون NMS من البداية للنهاية: بناءً على الأسس التي وضعها YOLOv10، يلغي YOLO26 بشكل أصلي كبت الحد الأقصى (NMS). وهذا يقلل من نفقات المعالجة اللاحقة، مما يبسط النشر في تطبيقات الأجهزة المحمولة ويضمن استدلالاً حتمياً للغاية ومنخفض الكمون.
- مُحسّن MuSGD: مستوحى من تقنيات تدريب LLM المتقدمة (مثل تلك المستخدمة في Kimi K2 من Moonshot AI)، يستخدم YOLO26 مُحسّناً هجيناً يجمع بين SGD و Muon. وهذا يضمن ديناميكيات تدريب أكثر استقراراً وتقارباً أسرع بكثير.
- استدلال أسرع بنسبة تصل إلى 43% على وحدة المعالجة المركزية: من خلال إزالة فقدان التوزيع البؤري (DFL) بشكل استراتيجي، يحقق YOLO26 تسريعات هائلة على وحدات المعالجة المركزية. وهذا يجعله البطل بلا منازع لبيئات الحافة مثل Raspberry Pi وأجهزة استشعار إنترنت الأشياء عن بُعد.
- ProgLoss + STAL: وظائف خسارة متقدمة مصممة خصيصاً لتحسين التعرف على الكائنات الصغيرة، وهي نقطة ضعف تاريخية لأجهزة الكشف أحادية المرحلة.
من خلال الجمع بين هذه الابتكارات ومنصة Ultralytics القوية، يوفر YOLO26 أداءً لا مثيل له وتعدد استخدامات وسهولة في النشر لمهندس تعلم الآلة الحديث.