YOLOv8 مقابل YOLOv9: مقارنة فنية للكشف عن الكائنات
يُعد اختيار نموذج الرؤية الحاسوبية الأمثل قرارًا محوريًا يؤثر على نجاح مشاريع الذكاء الاصطناعي، حيث يوازن بين متطلبات الدقة وسرعة الاستدلال وكفاءة الحوسبة. يقارن هذا الدليل الشامل بين Ultralytics YOLOv8، وهو نموذج متعدد الاستخدامات وجاهز للإنتاج، و YOLOv9، وهي بنية تركز على زيادة دقة الكشف من خلال تدرجات جديدة. نحلل الاختلافات المعمارية ومقاييس الأداء وسيناريوهات النشر المثالية لمساعدتك في اتخاذ خيار مستنير.
Ultralytics YOLOv8: معيار التنوع وسهولة الاستخدام
تم إطلاق YOLOv8 بواسطة Ultralytics، وهو يمثل تطورًا كبيرًا في سلسلة YOLO، وهو مصمم ليس فقط كنموذج ولكن كإطار عمل كامل للذكاء الاصطناعي العملي. إنه يعطي الأولوية لتجربة مستخدم سلسة وأداء قوي عبر الأجهزة ودعم لمجموعة واسعة من مهام الرؤية تتجاوز الاكتشاف البسيط.
- المؤلفون: جلين جوتشر، أيوش شوراسيا، جينغ تشيو
- المؤسسة:Ultralytics
- التاريخ: 2023-01-10
- GitHub:https://github.com/ultralytics/ultralytics
- الوثائق:https://docs.ultralytics.com/models/yolov8/
الهندسة المعمارية والنظام البيئي
يقدم YOLOv8 رأس detect خاليًا من الـ anchor ووحدة C2f (Cross-Stage Partial with 2 convolutions)، مما يحسن تكامل الميزات مع الحفاظ على التنفيذ خفيف الوزن. على عكس النماذج التي تركز على البحث، تم تصميم YOLOv8 مع وضع النشر في الاعتبار. وهو يدعم أصلاً تصنيف الصور و تقسيم المثيلات و تقدير الوضعية و detect الصندوق المحيط الموجه (OBB).
تكمن القوة الحقيقية لـ YOLOv8 في النظام البيئي لـ Ultralytics. يستفيد المطورون من واجهة برمجة تطبيقات Python موحدة و CLI تعمل على توحيد التدريب والتحقق والنشر. يقلل هذا النهج "الشامل" بشكل كبير من الوقت اللازم لطرح تطبيقات رؤية الكمبيوتر في السوق.
نقاط القوة
- تنوع لا يضاهى: يتعامل مع الكشف، والتقسيم، والتصنيف، وتقدير الوضع في مكتبة واحدة.
- جاهز للنشر: دعم التصدير الأصلي لـ ONNX و OpenVINO و TensorRT و CoreML يبسط التكامل في الأجهزة الطرفية والخوادم السحابية.
- كفاءة الذاكرة: مُحسَّن لتقليل استخدام ذاكرة CUDA أثناء التدريب مقارنة بالبنى القائمة على المحولات، مما يجعله متاحًا على وحدات معالجة الرسومات القياسية للمستهلك.
- موازنة السرعة والدقة: يوفر سرعات استدلال في الوقت الفعلي استثنائية، غالبًا ما يتفوق على المنافسين على CPU والأجهزة الطرفية.
- دعم نشط: مدعوم من قبل مجتمع ضخم مفتوح المصدر وتحديثات متكررة من Ultralytics، مما يضمن التوافق مع أحدث المكتبات والأجهزة.
YOLOv9: ابتكار معماري لدقة عالية
تم إصدار YOLOv9 مع التركيز على معالجة مشكلة "عنق الزجاجة المعلوماتي" في التعلم العميق. يقدم مفاهيم نظرية تهدف إلى الحفاظ على معلومات البيانات أثناء مرورها عبر الطبقات العميقة، وتستهدف بشكل أساسي الحدود العليا لدقة detect الكائنات.
- المؤلفون: Chien-Yao Wang و Hong-Yuan Mark Liao
- المؤسسة:معهد علوم المعلومات، أكاديميا سينيكا، تايوان
- التاريخ: 2024-02-21
- Arxiv:https://arxiv.org/abs/2402.13616
- GitHub:https://github.com/WongKinYiu/yolov9
- الوثائق:https://docs.ultralytics.com/models/yolov9/
الابتكارات الأساسية
تعتمد بنية YOLOv9 على مكونين رئيسيين: Programmable Gradient Information (PGI) و Generalized Efficient Layer Aggregation Network (GELAN). يعمل PGI على منع فقدان معلومات الإدخال الهامة أثناء عملية التغذية الأمامية في الشبكات العميقة، مما يضمن إنشاء تدرجات موثوقة للتحديثات. تم تصميم GELAN لتحسين كفاءة المعلمات، مما يسمح للنموذج بتحقيق دقة عالية مع بصمة حسابية محترمة.
نقاط القوة
- دقة عالية: يضع أكبر متغير، YOLOv9-E، معايير رائعة لـ mAP على مجموعة بيانات COCO، ويتفوق في السيناريوهات التي تكون فيها الدقة ذات أهمية قصوى.
- كفاءة المعلمات: بفضل GELAN، تحقق نماذج YOLOv9 متوسطة الحجم دقة تنافسية مع عدد أقل من المعلمات مقارنة ببعض البنى القديمة.
- تطور نظري: يعالج المشكلات الأساسية في تدريب الشبكات العميقة فيما يتعلق بالحفاظ على المعلومات.
نقاط الضعف
- تنوع محدود: يركز بشكل أساسي على اكتشاف الكائنات. على الرغم من قدرته، إلا أنه يفتقر إلى الدعم الأصلي والمبسط للتقسيم والوضع والتصنيف (classify) الموجود في تشكيلة Ultralytics الأساسية.
- تدريب معقد: يمكن أن يجعل إدخال الفروع الإضافية لـ PGI عملية التدريب أكثر كثافة من حيث الموارد وأكثر تعقيدًا في الضبط مقارنة بخط أنابيب YOLOv8 المبسط.
- سرعة الاستدلال: على الرغم من كفاءة النموذج، إلا أن التعقيد المعماري يمكن أن يؤدي إلى أوقات استدلال أبطأ على أجهزة معينة مقارنةً بالكتل المحسّنة للغاية المستخدمة في YOLOv8.
مقارنة أداء مباشرة
عند مقارنة YOLOv8 و YOLOv9، غالبًا ما يعود الاختيار إلى القيود المحددة لبيئة النشر الخاصة بك. تهيمن YOLOv8 في سرعة الاستدلال ومرونة النشر، بينما تدفع YOLOv9 سقف مقاييس الكشف.
| النموذج | الحجم (بالبكسل) | mAPval 50-95 | السرعة وحدة المعالجة المركزية CPU ONNX (بالمللي ثانية) | السرعة T4 TensorRT10 (بالمللي ثانية) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
| 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 |
تسلط البيانات الضوء على تمييز واضح: يوفر YOLOv8 سرعة فائقة، خاصة على GPU (TensorRT) و CPU (ONNX)، وهو أمر بالغ الأهمية لتطبيقات الذكاء الاصطناعي المتطورة. على سبيل المثال، YOLOv8n أسرع بكثير من YOLOv9t على وحدات معالجة الرسومات T4 (1.47 مللي ثانية مقابل 2.3 مللي ثانية). في المقابل، يحقق YOLOv9e أعلى mAP (55.6٪)، مما يجعله مناسبًا للمعالجة من جانب الخادم حيث يكون زمن الوصول أقل أهمية من اكتشاف التفاصيل الدقيقة.
هل تعلم؟
تم تصميم Ultralytics YOLOv8 بدعم أصيل لـ الكل مهام رؤية الكمبيوتر الرئيسية. يمكنك التبديل من اكتشاف الكائنات إلى تجزئة المثيل ببساطة عن طريق تغيير ملف وزن النموذج (على سبيل المثال، yolov8n.pt إلى yolov8n-seg.pt)، وهو مستوى من المرونة غير متوفر في مستودع YOLOv9 القياسي.
حالات الاستخدام المثالية
اختر Ultralytics YOLOv8 إذا:
- أنت بحاجة إلى حل جاهز للإنتاج: تعمل الوثائق الشاملة ودعم المجتمع والتكاملات الجاهزة (مثل MLFlow و TensorBoard) على تبسيط المسار من النموذج الأولي إلى المنتج.
- السرعة بالغة الأهمية: بالنسبة لتحليلات الفيديو في الوقت الفعلي أو التنقل الذاتي أو تطبيقات الأجهزة المحمولة، توفر سرعة استدلال YOLOv8 المحسّنة ميزة واضحة.
- أنت تحتاج إلى مهام رؤية متعددة: المشاريع التي تتضمن تقدير الوضعية أو segment جنبًا إلى جنب مع detect يتم تقديمها على أفضل وجه من خلال الإطار الموحد لـ YOLOv8.
- وجود قيود على الموارد: تم تحسين نماذج YOLOv8 بشكل كبير للأجهزة المختلفة، مما يضمن التشغيل الفعال على الأجهزة التي تتراوح من Raspberry Pi إلى NVIDIA Jetson.
اختر YOLOv9 إذا:
- الدقة القصوى هي المقياس الوحيد: للبحث الأكاديمي أو مهام الفحص المتخصصة حيث يكون كل جزء صغير من النسبة المئوية في mAP أكثر أهمية من السرعة أو سهولة الاستخدام.
- أنت تبحث في الهندسة المعمارية: تعد مفاهيم PGI و GELAN ذات قيمة للباحثين الذين يدرسون تدفق التدرج في الشبكات العميقة.
تنفيذ التعليمات البرمجية
تتمثل إحدى المزايا الرئيسية لنظام Ultralytics البيئي في أنه يدعم كلا النموذجين بنفس واجهة برمجة التطبيقات (API) البسيطة. يتيح لك ذلك قياس أدائهما بسهولة على مجموعات البيانات المخصصة الخاصة بك.
إليك كيف يمكنك تدريب نموذج YOLOv8 في بضعة أسطر فقط من التعليمات البرمجية:
from ultralytics import YOLO
# Load a YOLOv8 model
model = YOLO("yolov8n.pt")
# Train the model on your data
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image
results = model("path/to/image.jpg")
نظرًا لأن Ultralytics تدمج YOLOv9، يمكنك تبديل سلسلة النموذج إلى yolov9c.pt للتجربة مع YOLOv9 داخل نفس خط الأنابيب القوي، على الرغم من أن نماذج YOLOv8 الأصلية غالبًا ما تستفيد من تكامل أكثر إحكامًا مع أدوات النشر.
الخلاصة
بالنسبة للغالبية العظمى من المطورين والتطبيقات التجارية، يظل Ultralytics YOLOv8 هو الخيار الموصى به. إن توازنه الفائق بين السرعة والدقة، جنبًا إلى جنب مع نظام بيئي ناضج وجيد الصيانة، يضمن أن تكون المشاريع مقاومة للمستقبل وأسهل في الصيانة. توفر القدرة على التعامل مع الاكتشاف والتقسيم وتقدير الوضع داخل إطار عمل واحد تنوعًا لا مثيل له.
في حين أن YOLOv9 تقدم نظريات معمارية مثيرة وتحقق دقة عالية الذروة، فمن الأفضل غالبًا حجزها لمجالات بحثية محددة أو سيناريوهات لا يمثل فيها زمن الوصول للاستدلال قيدًا.
بالنسبة لأولئك الذين يبحثون عن أحدث التقنيات في مجال رؤية الكمبيوتر، تأكد من إطلاعك على YOLO11، الذي يعمل على زيادة تحسين الكفاءة والأداء اللذين تم إنشاؤهما بواسطة YOLOv8. بالإضافة إلى ذلك، قد يستكشف الباحثون المهتمون بالمناهج القائمة على المحولات RT-DETR للحصول على مقايضات معمارية مختلفة.
استكشف المزيد من المقارنات على صفحة مقارنة النماذج الخاصة بنا.