YOLOX ضد YOLOv9: مقارنة فنية
يعد اختيار البنية المناسبة لـ الكشف عن الأجسام قرارًا بالغ الأهمية يؤثر على السرعة والدقة وجدوى نشر مشاريع رؤية الكمبيوتر. تقارن هذه المقالة بين YOLOX، وهو نموذج محوري بدون نقاط ارتكاز تم إصداره في عام 2021، و YOLOv9، وهي بنية حديثة تم تقديمها في عام 2024 وتستفيد من معلومات التدرج القابلة للبرمجة (PGI).
في حين أن YOLOX حول النموذج إلى detect خالية من anchor، فإن YOLOv9 يقدم آليات جديدة للاحتفاظ بالمعلومات في الشبكات العميقة، مما يوفر مقاييس أداء فائقة. يحلل هذا الدليل بنياتها ومعاييرها وحالات الاستخدام المثالية لمساعدتك على اختيار أفضل نموذج لاحتياجاتك.
YOLOX: الرائد الخالي من الـ Anchor
تم إصدار YOLOX لسد الفجوة بين المجتمع البحثي والتطبيقات الصناعية عن طريق تبسيط رأس الكشف وإزالة الاعتماد على مربعات المرساة المحددة مسبقًا.
المؤلفون: تشنغ قه، سونغ تاو ليو، فنغ وانغ، تسه مينغ لي، و جيان صن
المنظمة:Megvii
التاريخ: 2021-07-18
Arxiv:arXiv:2107.08430
GitHub:Megvii-BaseDetection/YOLOX
المستندات:YOLOX Documentation
أبرز ملامح الهيكلة
قدم YOLOX بنية رأس مفصول، تفصل مهام التصنيف والانحدار. يسمح هذا الفصل للنموذج بالتقارب بشكل أسرع وتحقيق دقة أفضل. كما أنه يستخدم آلية خالية من الارتكاز، مما يلغي الحاجة إلى تحليل التجميع لتحديد أحجام مربع الارتكاز المثالية، مما يجعل النموذج أكثر قوة لأشكال الكائنات المتنوعة. علاوة على ذلك، يستخدم YOLOX SimOTA لتعيين التسميات، ويعامل العملية كمشكلة نقل مثالية لتحسين استقرار التدريب.
نقاط القوة والضعف
- نقاط القوة: يعمل التصميم الخالي من المرساة على تبسيط عملية ضبط المعلمات الفائقة. ينتج الرأس المفصول عمومًا دقة أعلى لمهام تحديد الموقع مقارنة بالرؤوس المقترنة في ذلك العصر.
- نقاط الضعف: كنموذج لعام 2021، فإنه يفتقر إلى التحسينات الحديثة الموجودة في البنى الأحدث. قد يتطلب المزيد من بيانات التدريب للوصول إلى ذروة الأداء مقارنة بالنماذج التي تستخدم تقنيات متقدمة لزيادة البيانات وتجميع الطبقات.
YOLOv9: معلومات التدرج القابلة للبرمجة
يمثل YOLOv9 قفزة كبيرة إلى الأمام، حيث يعالج مشكلة "عنق الزجاجة المعلوماتي" المتأصلة في الشبكات العصبية العميقة.
المؤلفون: تشين-ياو وانغ، هونغ-يوان مارك لياو
المنظمة:معهد علوم المعلومات، أكاديميا سينيكا
التاريخ: 2024-02-21
Arxiv:arXiv:2402.13616
GitHub:WongKinYiu/yolov9
المستندات:مستندات Ultralytics YOLOv9
أبرز ملامح الهيكلة
يقدم YOLOv9 معلومات التدرج القابلة للبرمجة (PGI) و شبكة تجميع الطبقات الفعالة المعممة (GELAN). تمنع PGI فقدان معلومات الإدخال الهامة أثناء مرور البيانات عبر الطبقات العميقة، مما يضمن توليد تدرج موثوق لتحديثات النموذج. تعمل GELAN على تحسين استخدام المعلمات، مما يسمح للنموذج بأن يكون خفيف الوزن ولكنه دقيق. تمكن هذه الابتكارات YOLOv9 من التفوق على سابقاتها بشكل كبير في كل من الكفاءة و متوسط الدقة (mAP).
نقاط القوة والضعف
- نقاط القوة: نسبة دقة إلى معلمة استثنائية، مما يجعلها فعالة للغاية لتطبيقات الوقت الفعلي. تحافظ البنية على تدفق المعلومات بشكل أفضل من التكرارات السابقة، مما يؤدي إلى اكتشاف أفضل للأجسام الصغيرة.
- نقاط الضعف: نظرًا لكونه بنية أحدث، فقد يتطلب برامج تشغيل CUDA محدثة ودعمًا للأجهزة مقارنة بالنماذج القديمة.
مقارنة الأداء
يقارن الجدول التالي أداء YOLOX و YOLOv9 على مجموعة بيانات COCO. يُظهر YOLOv9 باستمرار درجات mAP أعلى مع عدد أقل من المعلمات، مما يسلط الضوء على كفاءة بنية GELAN.
| النموذج | الحجم (بالبكسل) | mAPval 50-95 | السرعة وحدة المعالجة المركزية CPU ONNX (بالمللي ثانية) | السرعة T4 TensorRT10 (بالمللي ثانية) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
| 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 |
تحليل: يوفر YOLOv9 ترقية كبيرة في كثافة الأداء. على سبيل المثال، يحقق YOLOv9c قيمة 53.0% mAP مع 25.3 مليون بارامتر فقط، في حين أن YOLOX-L يتطلب 54.2 مليون بارامتر لتحقيق درجة أقل تبلغ 49.7% mAP. يشير هذا إلى أن YOLOv9 أكثر كفاءة بمرتين تقريبًا من حيث استخدام البارامترات لمستوى الدقة هذا.
أهمية الكفاءة
عند النشر على الأجهزة الطرفية، فإن النظر إلى FLOPs والمعلمات لا يقل أهمية عن mAP. تقلل بنية GELAN الخاصة بـ YOLOv9 بشكل كبير من النفقات الحسابية، مما يؤدي إلى تشغيل الأجهزة بشكل أكثر برودة وعمر أطول للبطارية في عمليات النشر على الأجهزة المحمولة.
ميزة Ultralytics
في حين أن YOLOX هو مستودع مستقل قوي، إلا أن استخدام YOLOv9 داخل النظام البيئي Ultralytics يوفر مزايا واضحة للمطورين والباحثين.
سهولة الاستخدام والتكامل
يوحد إطار عمل Ultralytics التفاعل مع النماذج. يمكنك تدريب YOLOv9 والتحقق من صحتها ونشرها باستخدام واجهة برمجة تطبيقات Python بسيطة وسهلة الاستخدام. يتناقض هذا مع قاعدة بيانات YOLOX، التي تتطلب غالبًا المزيد من التكوين اليدوي لمتغيرات البيئة ومسارات مجموعة البيانات.
from ultralytics import YOLO
# Load a pre-trained YOLOv9 model
model = YOLO("yolov9c.pt")
# Run inference on an image
results = model("path/to/image.jpg")
# Train the model on a custom dataset with a single line of code
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
نظام بيئي مُدار جيدًا
تستفيد نماذج Ultralytics من التحديثات المستمرة وإصلاحات الأخطاء ودعم المجتمع. يتيح التكامل مع Ultralytics HUB MLOps سلسًا، مما يمكّن الفرق من إدارة مجموعات البيانات وتتبع التجارب ونشر النماذج بتنسيقات مختلفة (ONNX، TensorRT، CoreML) دون كتابة نصوص تصدير معقدة.
موازنة الأداء وكفاءة الذاكرة
تم تصميم نماذج Ultralytics YOLO لتحقيق توازن عملي بين السرعة والدقة. علاوة على ذلك، فإنها تُظهر عادةً متطلبات ذاكرة أقل أثناء التدريب مقارنة بالبنى القديمة أو النماذج الثقيلة القائمة على المحولات. تقلل هذه الكفاءة من تكاليف الحوسبة السحابية وتجعل التدريب متاحًا على وحدات معالجة الرسومات (GPUs) من الدرجة الاستهلاكية.
تعدد الاستخدامات
في حين أن YOLOX هو في الأساس كاشف كائنات، فإن إطار عمل Ultralytics يوسع قدرات النماذج المدعومة. يمكن للمستخدمين التبديل بسهولة بين مهام مثل segmentation المثيل، و تقدير الوضعية، و detect الصندوق المحيط الموجه (OBB) باستخدام بناء جملة وسير عمل مماثلين، وهو تنوع تفتقر إليه غالبًا مستودعات الأبحاث المستقلة.
حالات الاستخدام المثالية
متى تختار YOLOv9
- الأنظمة الذاتية: الدقة العالية لـ YOLOv9-E مثالية للمركبات ذاتية القيادة حيث يعد detect العوائق الصغيرة عن بعد أمرًا بالغ الأهمية للسلامة.
- تحليلات في الوقت الفعلي: بالنسبة لتجارة التجزئة أو إدارة حركة المرور، يقدم YOLOv9c النقطة المثالية لمعدلات الإطارات العالية والـ detect الدقيق.
- الذكاء الاصطناعي الطرفي: إن الكفاءة المعمارية لـ GELAN تجعل YOLOv9t و YOLOv9s مثاليين للنشر على أجهزة مثل NVIDIA Jetson أو Raspberry Pi.
متى تختار YOLOX
- التكامل القديم: إذا كان خط إنتاج حالي مُهندسًا بالفعل بشكل كبير حول تنسيق الرأس الخالي من المرساة YOLOX المحدد.
- البحث الأكاديمي: قد يجد الباحثون الذين يبحثون تحديدًا في سلوك الرؤوس المنفصلة في الكاشفات المبكرة الخالية من المرساة أن YOLOX هو خط أساس قيم للمقارنة.
الخلاصة
اكتسبت كلتا البنيتين مكانتهما في تاريخ رؤية الكمبيوتر. نجح YOLOX في تحدي الوضع الراهن القائم على المرساة في عام 2021. ومع ذلك، يمثل YOLOv9 المعيار الحديث، الذي يشتمل على سنوات من التطورات في تحسين تدفق التدرج وتجميع الطبقات.
بالنسبة لمعظم التطورات الجديدة، يُعد YOLOv9 هو الخيار الموصى به. إن أداءه الفائق لكل معلمة، جنبًا إلى جنب مع سهولة الاستخدام و كفاءة التدريب وخيارات النشر القوية التي يوفرها نظام Ultralytics البيئي، يضمن مسارًا أسرع من المفهوم إلى الإنتاج.
استكشف الخيارات الحديثة الأخرى في النظام البيئي، مثل YOLO11 و YOLOv8، للعثور على الحل الأمثل لقيود التطبيق الخاصة بك.