YOLOv6.0 مقابل YOLOv7: تحليل تقني لأجهزة الكشف عن الأجسام في الوقت الفعلي
غالبًا ما يتطلب اختيار نموذج الكشف عن الأجسام المناسب لتطبيقات الرؤية الحاسوبية التنقل بين مجموعة معقدة من العوامل مثل السرعة والدقة والفروق الدقيقة في البنية. ومن المعالم الهامة في هذا التطور YOLOv6.YOLOv6 و YOLOv7، وكلاهما دفع حدود ما كان ممكنًا في الاستدلال في الوقت الفعلي عند إصدارهما. تستكشف هذه المقارنة الشاملة الاختلافات المعمارية ومقاييس الأداء وسيناريوهات النشر المثالية لمساعدة المطورين على اتخاذ قرارات مستنيرة.
نظرة عامة على الأداء
يوضح الجدول التالي مقاييس الأداء لمتغيرات قابلة للمقارنة لكلا الطرازين. تشير القيم الرئيسية إلى المجالات التي قد يتفوق فيها أحد الطرازين على الآخر في تكوينات محددة.
| النموذج | الحجم (بالبكسل) | mAPval 50-95 | السرعة وحدة المعالجة المركزية CPU ONNX (بالمللي ثانية) | السرعة T4 TensorRT10 (بالمللي ثانية) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
YOLOv6.0: كفاءة على مستوى صناعي
يمثل YOLOv6.YOLOv6، الذي يشار إليه غالبًا باسم "YOLOv6 .0"، تكرارًا مهمًا في YOLOv6 التي طورتها Meituan. تم إصدار هذا الإصدار في يناير 2023، وركز بشكل كبير على "إعادة تحميل" البنية لتقديم خدمة أفضل للتطبيقات الصناعية التي تعتمد بشكل كبير على GPU .
تفاصيل YOLOv6-3.0:
- المؤلفون: Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu, و Xiangxiang Chu
- المؤسسة:Meituan
- التاريخ: 2023-01-13
- Arxiv:YOLOv6 v3.0: A Full-Scale Reloading
- GitHub:مستودع Meituan YOLOv6
الابتكارات المعمارية
يقدم YOLOv6.YOLOv6 العديد من التحسينات الرئيسية المصممة لزيادة الكفاءة إلى أقصى حد على مسرعات الأجهزة مثل وحدات معالجة الرسومات NVIDIA :
- التسلسل ثنائي الاتجاه (BiC): تعمل هذه الوحدة على تحسين دمج الميزات من خلال تسهيل تدفق المعلومات بشكل أفضل بين مختلف مستويات الشبكة، مما يعزز اكتشاف الأجسام على مسافات متفاوتة.
- التدريب بمساعدة المرجع (AAT): بينما يظل استنتاج النموذج خاليًا من المرجع، يستخدم YOLOv6 فرعًا إضافيًا قائمًا على المرجع أثناء التدريب. تعمل هذه الاستراتيجية المختلطة على استقرار التقارب وتعزيز الدقة النهائية دون التأثير على سرعة الاستنتاج.
- إعادة تحديد المعلمات: باستخدام كتل من نوع RepVGG بشكل مكثف، يبسط النموذج الهياكل المعقدة متعددة الفروع إلى تلافيف أحادية المسار أثناء الاستدلال. وينتج عن ذلك زيادة كبيرة في السرعة على GPU .
حالات الاستخدام المثالية
بفضل تحسيناته المحددة، يتفوق YOLOv6.0 في:
- مراقبة جودة التصنيع: الكشف السريع عن العيوب في خطوط التجميع حيث يمثل معدل الإنتاجية (FPS) القيد الأساسي.
- اللوجستيات والفرز: التعرف السريع على الطرود في مراكز التوزيع ذات الحجم الكبير باستخدام خطوط أنابيب التعلم الآلي.
- تحليلات الفيديو: معالجة تدفقات فيديو متعددة في وقت واحد على وحدات معالجة رسومات (GPU) من فئة الخوادم للحصول على رؤى أمنية أو تجارية.
YOLOv7: قوة "حقيبة التحسينات المجانية"
YOLOv7 تم إصداره في يوليو 2022 وسرعان ما أثبت نفسه كأحدث أجهزة الكشف. ركز المؤلفون على الإصلاحات المعمارية التي تحسن كفاءة التدريب ودقة الاستدلال دون زيادة عدد المعلمات بشكل كبير، وأطلقوا على هذه التقنيات اسم "trainable bag-of-freebies" (حقيبة الهدايا القابلة للتدريب).
تفاصيل YOLOv7:
- المؤلفون: Chien-Yao Wang و Alexey Bochkovskiy و Hong-Yuan Mark Liao
- المنظمة: معهد علوم المعلومات، أكاديميا سينيكا، تايوان
- التاريخ: 2022-07-06
- Arxiv:YOLOv7: Trainable bag-of-freebies sets new state-of-the-art
- GitHub:WongKinYiu YOLOv7
الابتكارات المعمارية
YOLOv7 مفاهيم حسنت طريقة تعلم الشبكات العصبية ونشر معلومات التدرج:
- E-ELAN (شبكة تجميع الطبقات الفعالة الموسعة): تتحكم هذه البنية في أقصر وأطول مسارات التدرج، مما يسمح للشبكة بتعلم ميزات أكثر تنوعًا دون مشكلة اختفاء التدرج التي غالبًا ما تظهر في الشبكات العميقة.
- تحجيم النموذج: YOLOv7 طريقة تحجيم مركبة تعمل على تعديل العمق والعرض في وقت واحد للنماذج القائمة على التسلسل، مما يضمن بنية مثالية عبر أحجام النماذج المختلفة (من Tiny إلى E6E).
- إعادة تحديد المعلمات المخطط لها: على غرار YOLOv6 يستخدم إعادة تحديد المعلمات ولكنه يطبق استراتيجيات مخططة بدقة لتحديد الوحدات التي يجب تبسيطها، مع تحقيق التوازن بين الاتصالات المتبقية والتلافيف البسيطة.
حالات الاستخدام المثالية
YOLOv7 مناسب بشكل خاص لما يلي:
- استخراج الميزات التفصيلية: سيناريوهات مثل المركبات ذاتية القيادة حيث يكون التعرف على التفاصيل الدقيقة للأجسام الصغيرة (مثل إشارات المرور البعيدة) أمرًا بالغ الأهمية.
- الذكاء الاصطناعي الحوافي على الأجهزة منخفضة الطاقة: يعد الإصدار YOLOv7 فعالاً للغاية في عمليات النشر على الأجهزة المحمولة، حيث يوفر توازناً قوياً بين الدقة والسرعة على الأجهزة المحدودة.
- أساسيات البحث: بفضل بنيتها الشفافة ودراساتها الشاملة حول الاستئصال، أصبحت هذه المنصة المفضلة للبحوث الأكاديمية في مجال البحث عن البنية العصبية.
مقارنة نقدية: نقاط القوة والضعف
عند الاختيار بين YOLOv6. YOLOv6 و YOLOv7 غالبًا ما يتوقف القرار على هدف نشر الأجهزة المحدد وطبيعة المهمة البصرية.
المفاضلة بين السرعة والدقة
يحقق YOLOv6.YOLOv6 عمومًا إنتاجية أعلى على وحدات معالجة الرسومات المخصصة (مثل NVIDIA ) نظرًا لإعادة معايرته القوية وتصميمه TensorRT. على سبيل المثال، يحقق نموذج YOLOv6.YOLOv6 52.8٪ mAP زمن انتقال منخفض جدًا. على العكس من ذلك، YOLOv7 على كفاءة المعلمات. يرفع نموذج YOLOv7 الدقة قليلاً (53.1٪ mAP) ولكن مع عدد أكبر من المعلمات وتعقيد حسابي أعلى (FLOPs)، مما قد يؤثر على زمن الاستجابة على الأجهزة الطرفية.
منهجية التدريب
يعد "التدريب بمساعدة المرساة" YOLOv6 ميزة فريدة تعمل على استقرار التدريب ولكنها تضيف تعقيدًا إلى كود خط أنابيب التدريب. يحافظ نهج "حقيبة الهدايا المجانية" الخالص YOLOv7 على حلقة التدريب قياسية إلى حد ما، ولكنه يعتمد على تعريفات معمارية معقدة مثل E-ELAN. قد يجد المطورون الذين يشاركون في التدريب المخصص أن الرؤوس المساعدة في YOLOv6 لسرعة التقارب.
اعتبارات النشر
إذا كانت بيئة النشر الخاصة بك تعتمد بشكل كاملGPU NVIDIA (مثل الخوادم السحابية أو أجهزة Jetson)، فإنYOLOv6.YOLOv6 غالبًا ما توفر معدل إطارات في الثانية أفضل مقابل كل دولار. ومع ذلك، إذا كنت بحاجة إلى نموذج يمكن تعميمه جيدًا عبر أجهزة متنوعة (وحدات المعالجة المركزية ووحدات المعالجة العصبية) دون الحاجة إلى ضبط مكثف، YOLOv7 أو Ultralytics الأحدث غالبًا ما تكون أكثر مرونة.
ميزة Ultralytics
على الرغم من YOLOv7 YOLOv6 YOLOv7 نموذجان YOLOv7 استخدامهما ضمن Ultralytics يوفر مزايا واضحة تعمل على تبسيط دورة حياة التعلم الآلي بأكملها.
- واجهة برمجة تطبيقات موحدة: تعملPython Ultralytics Python على إزالة تعقيدات البنى المختلفة. يمكنك التبديل بين YOLOv6 و YOLOv7 ونماذج أحدث مثل YOLO26 عن طريق تغيير سلسلة واحدة في الكود الخاص بك.
- نظام بيئي جيد الصيانة: على عكس مستودعات الأبحاث التي غالبًا ما تكون خاملة، Ultralytics التوافق مع أحدث إصدارات PyTorchو CUDA و Python.
- تعدد الاستخدامات: Ultralytics مجموعة واسعة من المهام التي تتجاوز مجرد الكشف، بما في ذلك تقسيم الحالات، وتقدير الوضع، والكشف عن الكائنات الموجهة (OBB).
- كفاءة الذاكرة: تم تحسين Ultralytics لتقليل استخدام VRAM أثناء التدريب، مما يجعل من الممكن تدريب نماذج قوية على وحدات معالجة الرسومات (GPU) المخصصة للمستهلكين، على عكس الحجم الكبير للذاكرة الذي تتطلبه قواعد البيانات البحثية الأولية في كثير من الأحيان.
التقدم نحو أحدث ما توصلت إليه التكنولوجيا: YOLO26
بالنسبة للمطورين الذين يبحثون عن أفضل أداء وسهولة في الاستخدام على الإطلاق، فإن YOLO26 الذي تم إصداره مؤخرًا يستند إلى إرث YOLO السابق مع اختراقات معمارية مهمة.
تم إصدار YOLO26 في يناير 2026، وهو مصمم ليكون النموذج النهائي "الذي يركز على الحافة". يتميز بتصميم أصلي شامل NMS مما يلغي الحاجة إلى المعالجة اللاحقة لـ Non-Maximum Suppression. وهذا يسمح CPU أسرع بكثير CPU — أسرع بنسبة تصل إلى 43٪ من الأجيال السابقة — ويبسط خطوط النشر عن طريق إزالة المعلمات الفائقة الحساسة.
علاوة على ذلك، يستخدم YOLO26 محسّن MuSGD، وهو محسّن هجين مستوحى من تقنيات تدريب LLM، مما يضمن الاستقرار والتقارب السريع. مع إزالة DFL، أصبح من السهل تصدير النموذج إلى تنسيقات مثل ONNX أو TensorRT لتحقيق توافق واسع النطاق مع الأجهزة.
مثال على التعليمات البرمجية
تشغيل هذه النماذج باستخدام Ultralytics بسيط. يوضح المثال التالي كيفية تحميل نموذج مدرب مسبقًا وتشغيل الاستدلال على صورة:
from ultralytics import YOLO
# Load a YOLOv6, YOLOv7, or the recommended YOLO26 model
model = YOLO("yolov6n.yaml") # or "yolov7.pt" or "yolo26n.pt"
# Train the model on the COCO8 example dataset
# The system automatically handles data downloading and preparation
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
الخلاصة
كل من YOLOv6.0 و YOLOv7 دوراً محورياً في تطوير الكشف عن الكائنات في الوقت الفعلي. قام YOLOv6. YOLOv6 بتحسين بنية GPU من GPU مما جعله منافساً قوياً في مجال التطبيقات الصناعية. أما YOLOv7 حدود تجميع الميزات وتدفق التدرج، مما يوفر أداءً قوياً للمشاهد المعقدة.
ومع ذلك، فإن هذا المجال يتطور بسرعة. من خلال الاستفادة Ultralytics يمكن للمطورين الوصول إلى هذه النماذج إلى جانب YOLO26 المتطورة، مما يضمن حصولهم دائمًا على أفضل أداة للقيام بالمهمة. سواء كنت تفضل GPU الخام لـ YOLOv6 براعة هندسة YOLOv7 فإن Ultralytics توحدهما في سير عمل واحد قوي.
لمزيد من الاستكشاف للنماذج ذات الصلة، يرجى مراجعة الوثائق الخاصة بـ YOLOv8و YOLOv9و YOLO11.