YOLOv6.0 مقابل YOLOv9: السرعة الصناعية تلتقي مع أحدث ما توصلت إليه التكنولوجيا
يعد اختيار النموذج الأمثل للكشف عن الأجسام قرارًا محوريًا في تطوير الرؤية الحاسوبية، ويتطلب توازنًا استراتيجيًا بين الدقة وسرعة الاستدلال والكفاءة الحسابية. تتعمق هذه المقارنة في الفروق الفنية الدقيقة لنموذج YOLOv6.0، وهو نموذج صممته شركة Meituan للإنتاجية الصناعية، ونموذج YOLOv9وهي بنية متطورة تعيد تعريف الكفاءة من خلال الحفاظ على المعلومات.
YOLOv6.0: مُحسّن للتطبيقات الصناعية
يركز YOLOv6.0 بشكل كبير على سيناريوهات النشر العملية حيث يكون زمن انتقال الأجهزة هو عنق الزجاجة الأساسي.
- المؤلفون: Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu, و Xiangxiang Chu
- المنظمةميتوان
- التاريخ: 2023-01-13
- اركسيف:https://arxiv.org/abs/2301.05586
- جيثبhttps://github.com/meituan/YOLOv6
- المستنداتhttps://docs.ultralytics.com/models/yolov6/
فلسفة العمارة والتصميم
صُمم YOLOv6.0 كشبكة عصبية تلافيفية (CNN) مدركة للأجهزة. وتستخدم البنية عمودًا فقريًا فعالاً لإعادة تحديد المعلمات وكتلًا هجينة (RepBi-PAN) لزيادة الإنتاجية على وحدات معالجة الرسومات. يهدف YOLOv6 إلى توفير سرعات استنتاج عالية دون المساس بالدقة بشكل كبير، وذلك من خلال تكييف بنية النموذج مع خصائص أجهزة محددة. إنه بمثابة كاشف أحادي المرحلة مُحسَّن للأتمتة الصناعية والمراقبة حيث تكون المعالجة في الوقت الحقيقي غير قابلة للتفاوض.
نقاط القوة والقيود
نقاط القوة:
- سرعة الاستدلال: يتفوق النموذج في البيئات ذات الكمون المنخفض، خاصةً على وحدات معالجة الرسومات NVIDIA T4، مما يجعله مناسباً لخطوط التصنيع عالية السرعة.
- تحسين الأجهزة: يضمن تصميمه "الملائم للأجهزة" أن يستخدم النموذج عرض النطاق الترددي للذاكرة والوحدات الحاسوبية بفعالية أثناء النشر.
نقاط الضعف:
- تمثيل الميزات: يفتقر إلى تقنيات الحفاظ على معلومات التدرج المتقدمة الموجودة في النماذج الأحدث مثل YOLOv9 مما يؤدي إلى انخفاض حاد في الدقة مع انخفاض حجم النموذج.
- دعم النظام الإيكولوجي: على الرغم من فعاليته، إلا أن النظام البيئي المحيط بالأدوات ودعم المجتمع وسهولة التكامل أقل شمولاً مقارنةً بإطار عمل Ultralytics .
- براعة محدودة: يركز في المقام الأول على اكتشاف المربع المحدود، مع دعم أصلي أقل للمهام المعقدة مثل التجزئة أو تقدير الوضعية مقارنةً بنماذج Ultralytics متعددة الاستخدامات.
YOLOv9: إعادة تعريف الدقة وتدفق المعلومات
YOLOv9 مفاهيم معمارية جديدة تعالج المشكلة الأساسية المتمثلة في فقدان المعلومات في الشبكات العميقة، مما يحقق مقاييس أداء متفوقة.
- المؤلفون: Chien-Yao Wang و Hong-Yuan Mark Liao
- المنظمــةمعهد علوم المعلومات، الأكاديمية الصينية للمعلومات، تايوان
- التاريخ: 2024-02-21
- اركسيف:https://arxiv.org/abs/2402.13616
- جيثبhttps://github.com/WongKinYiu/yolov9
- المستنداتhttps://docs.ultralytics.com/models/yolov9/
الهندسة المعمارية: PGI و GELAN
يتميز YOLOv9 بابتكارين رائدين: معلومات التدرج القابلة للبرمجة (PGI) وشبكة تجميع الطبقات الفعالة المعممة (GELAN).
- تكافح PGI مشكلة اختناق المعلومات المتأصلة في الشبكات العصبية العميقة. من خلال الحفاظ على بيانات التدرج الحاسمة عبر الطبقات، تضمن PGI أن يتعلم النموذج ميزات أكثر موثوقية، مما يؤدي إلى دقة أعلى.
- يعمل GELAN على تحسين استخدام البارامترات، مما يسمح للنموذج بتحقيق دقة أعلى مع عدد أقل من البارامترات والتكاليف الحسابية مقارنةً بالبنى التقليدية.
أضواء على الابتكار: معلومات التدرج القابلة للبرمجة (PGI)
غالبًا ما تفقد الشبكات العميقة المعلومات أثناء مرور البيانات عبر الطبقات المتتالية، وهي ظاهرة تُعرف باسم عنق الزجاجة المعلوماتي. يعمل PGI الخاص ب YOLOv9 كآلية إشراف مساعدة، مما يضمن الحفاظ على البيانات الأساسية لتعلم الكائنات المستهدفة في جميع أنحاء عمق الشبكة. ينتج عن ذلك تقارب ودقة أفضل بكثير، خاصةً بالنسبة للأجسام التي يصعب detect .
مزايا نظام Ultralytics البيئي
يوفر دمج YOLOv9 في منظومة Ultralytics مزايا مميزة للمطورين:
- سهولة الاستخدام: واجهة برمجة تطبيقاتPython API و CLI تبسيط التدريب والتحقق من الصحة والنشر.
- توازن الأداء: YOLOv9 يحقق أحدث ما توصلت إليه التكنولوجيا الحديثة mAP مع الحفاظ على سرعات استدلال تنافسية، مما يوفر مفاضلة ممتازة للتطبيقات المتنوعة.
- كفاءة الذاكرة: تم تحسين تطبيقات Ultralytics من أجل تقليل آثار أقدام الذاكرة أثناء التدريب، على عكس متطلبات ذاكرة الوصول العشوائي العالية لبعض النماذج القائمة على المحولات.
- تعدد الاستخدامات: بالإضافة إلى الكشف، تدعم مرونة البنية داخل إطار عمل Ultralytics التوسع في مهام أخرى، مدعومة بمجتمع قوي وتحديثات متكررة.
تحليل الأداء المقارن
تبرز بيانات الأداء تمييزًا واضحًا: يعمل YOLOv6.0 على تحسين السرعة الأولية على أجهزة معينة، بينما يهيمن YOLOv9 على الكفاءة (الدقة لكل معلمة).
على سبيل المثال، يحقق YOLOv9c نسبة 53.0% من المعلمات مع 25.3 مليون معلمة فقط، متفوقًا بذلك على YOLOv6.0l (52.8% mAP المعلمات) التي تتطلب أكثر من ضعف المعلمات (59.6 مليون) وعمليات معالجة FLOP أعلى بكثير. يشير هذا إلى أن ابتكارات YOLOv9 المعمارية (GELAN وPGI) تسمح له "بتعلم المزيد بموارد أقل"، مما يجعله خيارًا عالي الكفاءة للبيئات محدودة الموارد التي لا تزال تتطلب دقة عالية.
على العكس من ذلك، يوفر YOLOv6.0n زمن انتقال منخفض للغاية (1.17 مللي ثانية)، مما يجعله قابلاً للتطبيق في الاستدلال في الوقت الحقيقي فائق السرعة حيث يكون انخفاض الدقة (37.5% mAP) مقبولاً.
| النموذج | الحجم (بالبكسل) | mAPفال 50-95 | السرعة وحدة المعالجة المركزية CPU ONNX (بالمللي ثانية) | السرعة T4 TensorRT10 (بالمللي ثانية) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv6.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
| YOLOv6.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
| YOLOv6.0 م | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
| YOLOv6.0L | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
سير عمل التدريب والنشر
تختلف تجربة المطور بشكل كبير بين النموذجين. عادةً ما يعتمد YOLOv6.0 على سير عمل خاص بالمستودع يتضمن نصوص برمجية وملفات تكوين يدوية. على الرغم من قوتها، إلا أن هذا يمكن أن يمثل منحنى تعليمي أكثر حدة للقادمين الجدد.
وفي المقابل، يستفيد YOLOv9 من نظام YOLOv9 المبسط Ultralytics المبسطة. يتطلب تدريب نموذج متطور الحد الأدنى من التعليمات البرمجية، ويدعم النظام البيئي التصدير السلس إلى تنسيقات مثل ONNX, TensorRTو CoreML لتوافق النشر على نطاق واسع.
مثال على ذلك: تدريب YOLOv9 مع Ultralytics
تسمح واجهة Ultralytics Python ببدء عمليات التدريب ببضعة أسطر من التعليمات البرمجية، والتعامل مع زيادة البيانات وتسجيلها وتقييمها تلقائيًا.
from ultralytics import YOLO
# Load a pre-trained YOLOv9 model
model = YOLO("yolov9c.pt")
# Train the model on your custom dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
مرونة النشر
تدعم نماذج Ultralytics بما في ذلك YOLOv9 التصدير بنقرة واحدة إلى تنسيقات مختلفة مناسبة للذكاء الاصطناعي المتطور والنشر السحابي. تعمل هذه المرونة على تبسيط الانتقال من البحث إلى الإنتاج.
حالات الاستخدام المثالية
YOLOv6.0
- خطوط التجميع عالية السرعة: أنظمة مراقبة الجودة حيث تتطلب سرعات الناقل زمن استجابة أقل من 2 مللي ثانية.
- أجهزة مخصصة: سيناريوهات تعمل على وحدات معالجة رسومات NVIDIA محددة حيث يتم الاستفادة من البنية المدركة للأجهزة بشكل كامل.
YOLOv9
- الأنظمة ذاتية القيادة:المركبات ذاتية القيادة والروبوتات التي تتطلب دقة عالية للتنقل في البيئات المعقدة بأمان.
- التصوير الطبي: تطبيقات مثل الكشف عن الأورام حيث يكون فقدان ميزة صغيرة (سلبية كاذبة) غير مقبول.
- السيرة الذاتية للأغراض العامة: المطورون الذين يبحثون عن نموذج قوي وسهل الاستخدام مع توثيق ممتاز ودعم مجتمعي للمهام المتنوعة.
الخلاصة
في حين يظل YOLOv6.0 أداة فعالة للتطبيقات الصناعية المتخصصة التي تعطي الأولوية للإنتاجية الأولية على أجهزة محددة, YOLOv9 هو الخيار الأفضل لغالبية مشاريع الرؤية الحاسوبية الحديثة.
توفر بنية YOLOv9 المبتكرة لـ YOLOv9 وبنية GELAN توازنًا أفضل بين الدقة والكفاءة، وغالبًا ما تتفوق على YOLOv6 في مقاييس الأداء لكل معيار. علاوةً على ذلك، يضمن التكامل مع نظامUltralytics الإيكولوجي استفادة المطورين من سير عمل مبسط وصيانة نشطة ومجموعة من الأدوات التي تسرّع الرحلة من البيانات إلى النشر. بالنسبة لأولئك الذين يبحثون عن نموذج مقاوم للمستقبل ومتعدد الاستخدامات وعالي الأداء، فإن YOLOv9 هو المسار الموصى به للمضي قدمًا.
استكشف نماذج أخرى
إذا كنت تستكشف أحدث الخيارات، ففكر في هذه النماذج القوية الأخرى في مكتبة Ultralytics :
- YOLO11: أحدث تطور في سلسلة YOLO حيث يقدم أداءً متطورًا للكشف والتجزئة وتقدير الوضعية.
- YOLOv8: نموذج شائع للغاية ومتعدد الاستخدامات معروف بتوازنه بين السرعة والدقة في مهام متعددة.
- RT-DETR: كاشف قائم على محول يتفوق في الدقة دون الحاجة إلى كبت غير أقصىNMS.