YOLOv5 مقابل YOLOv9#
شهد مجال الرؤية الحاسوبية وكشف الأجسام في الزمن الفعلي تطورات ملحوظة خلال الأعوام القليلة الماضية. ويمثل الاختيار بين النماذج الراسخة والمختبرة ميدانيًا وبنى الأبحاث الأحدث تحديًا شائعًا لمهندسي التعلم الآلي. يقدم هذا الدليل مقارنة تقنية شاملة بين نموذجين مؤثرين للغاية ضمن عائلة YOLO: YOLOv5 وYOLOv9.
سواء أكنت تنشر على أجهزة طرفية محدودة الموارد، أو تبحث في استخراج سمات عالية الدقة، أو تبني مسارات عمل معقدة لـكشف الأجسام، فإن فهم الفروق الدقيقة بين البنى ومقاييس الأداء والأنظمة المتكاملة لهذه النماذج أمر بالغ الأهمية.
نظرة عامة على النماذج#
قبل الخوض في مقارنة البنى، من المفيد فهم نشأة كل نموذج وأهدافه الأساسية.
Ultralytics YOLOv5#
طوّر Glenn Jocher نموذج YOLOv5، وأصدرته Ultralytics في 26 يونيو 2020، ليشكل تحولًا جوهريًا في طريقة تفاعل المطورين مع نماذج الرؤية. ومن خلال اعتماده الكامل على إطار عمل PyTorch، استبدل YOLOv5 خطوات التجميع المعقدة في النماذج الأقدم القائمة على Darknet بتجربة استخدام سهلة تعتمد Python أولًا.
- المؤلف: Glenn Jocher
- الجهة: Ultralytics
- التاريخ: 2020-06-26
- GitHub: مستودع YOLOv5
- الوثائق: وثائق YOLOv5
يشتهر YOLOv5 بسهولة الاستخدام وأدائه المستقر عبر بيئات الأجهزة المتنوعة. وهو يدعم تصنيف الصور وتجزئة الكائنات، وليس الكشف فحسب.
YOLOv9#
قدّم Chien-Yao Wang وHong-Yuan Mark Liao من معهد علوم المعلومات في Academia Sinica بتايوان YOLOv9، الذي يركز بشدة على النظرية المعمارية للتخفيف من مشكلات اختناق المعلومات في الشبكات العصبية العميقة.
- المؤلفون: Chien-Yao Wang وHong-Yuan Mark Liao
- الجهة: معهد علوم المعلومات، أكاديميا سينيكا، تايوان
- التاريخ: 2024-02-21
- Arxiv: 2402.13616
- GitHub: مستودع YOLOv9
- الوثائق: وثائق YOLOv9
تعتمد البنية الأساسية لـ YOLOv9 على ابتكارين نظريين رئيسيين: معلومات التدرج القابلة للبرمجة (PGI) وشبكة تجميع الطبقات الفعالة المعممة (GELAN). وتساعد هذه المفاهيم النموذج على الاحتفاظ بالسمات المكانية المهمة عبر طبقات الشبكة العميقة.
على الرغم من قوة YOLOv5 وYOLOv9، فإن YOLO26 الذي صدر حديثًا يمثل التوازن الأمثل بين السرعة والدقة. وبفضل الاستدلال الاختياري الشامل الخالي من NMS وتسريع الاستدلال على CPU بنسبة تصل إلى 43%، يُوصى بشدة باستخدام YOLO26 في الحوسبة الطرفية الحديثة وعمليات النشر الإنتاجية.
الاختلافات المعمارية والتقنية#
يُعد فهم العناصر التي تشغّل نماذج الرؤية هذه من الداخل أمرًا أساسيًا لتحسين استراتيجيات نشر النماذج.
استخراج السمات والاحتفاظ بالمعلومات#
يستخدم YOLOv5 عمودًا فقريًا من شبكة الأجزاء الجزئية المتقاطعة (CSPNet)، ما يقلل عبء العمليات الحسابية بفاعلية مع الحفاظ على تدفق دقيق للتدرج أثناء الانتشار العكسي. وقد صُمم هذا النهج لتحسين عمليات GPU التقليدية، كما يضمن متطلبات ذاكرة أقل أثناء التدريب مقارنةً ببدائل Transformer الضخمة.
يقدم YOLOv9 بنية GELAN عامة توسع مبادئ CSPNet. وبالاقتران مع PGI، أي الفرع العكسي المساعد، يضمن YOLOv9 ألا تفقد الطبقات العميقة البيانات الدلالية اللازمة لدوال الهدف الدقيقة. ويتيح ذلك لـ YOLOv9 تحقيق دقة عالية، ولا سيما في الأجسام الصغيرة، رغم أن التفرعات المساعدة المعقدة قد تعقّد أحيانًا مسارات التصدير إلى الأجهزة الطرفية شديدة القيود.
متطلبات الذاكرة وكفاءة التدريب#
فيما يتعلق بكفاءة التدريب، يظل YOLOv5 متينًا للغاية. وتضمن منظومة Ultralytics التي تحظى بصيانة جيدة استهلاك نماذج YOLOv5 ذاكرة CUDA أقل بكثير، ما يسمح للباحثين بزيادة أحجام الدُفعات على وحدات GPU المخصصة للمستهلكين إلى أقصى حد. ومع أن YOLOv9 يحقق كفاءة ممتازة في استخدام المعلمات (دقة عالية مقارنةً بحجمه)، فقد تتطلب عملية تدريبه موارد أكثر إذا لم تُستخدم أطر عمل محسّنة. ولحسن الحظ، يؤدي دمج YOLOv9 في واجهة Ultralytics API إلى تقليص الفارق بينه وبين إدارة الموارد المبسطة في YOLOv5.
الأداء والمقاييس#
لتقييم هذه البنى بموضوعية، نقارن أداءها على مجموعات بيانات قياسية مثل COCO. فيما يلي تحليل مفصل لمقاييس مثل mAP (متوسط الدقة)، وسرعة الاستدلال، وعدد المعلمات.
| النموذج | الحجم (بكسل) | mAPالتحقق 50-95 | السرعة CPU ONNX (مللي ثانية) | السرعة T4 TensorRT10 (ms) | المعاملات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | - | 1.12 | 1.9 | 4.5 |
| YOLOv5s | 640 | 37.4 | - | 1.92 | 7.2 | 16.5 |
| YOLOv5m | 640 | 45.4 | - | 4.03 | 21.2 | 49.0 |
| YOLOv5l | 640 | 49.0 | - | 6.61 | 46.5 | 109.1 |
| YOLOv5x | 640 | 50.7 | - | 11.89 | 86.7 | 205.7 |
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.2 | 26.7 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.1 | 76.8 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.5 | 102.8 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 58.1 | 192.5 |
كما يوضح الجدول، يحقق YOLOv9 دقة خام أعلى في الفئات المكافئة، ما يعكس حداثة بنيته. ومع ذلك، يحافظ YOLOv5n على زمن استجابة منخفض للغاية يبلغ 1.12 ms باستخدام TensorRT، ما يبرز قوته المستمرة في تطبيقات الحوسبة الطرفية المحلية عالية السرعة.
منهجيات التدريب وسهولة الاستخدام#
تكمن الميزة الحقيقية للاستفادة من الرؤية الحاسوبية اليوم في سهولة الوصول إلى سلسلة الأدوات.
ميزة Ultralytics#
مع أن مستودعات الأبحاث الأصلية لنماذج مثل YOLOv9 تشكل أساسًا مهمًا، فإنها غالبًا ما تأتي مع مصفوفات تبعيات معقدة ونصوص برمجية نمطية. وتبسط واجهة Ultralytics Python API هذه التعقيدات بالكامل. وبفضل منظومة Ultralytics، يمكنك تدريب YOLOv5 وYOLOv9 وتقييمهما وتصديرهما باستخدام صياغة موحدة ومتطابقة.
from ultralytics import YOLO
# تحميل نموذج YOLOv5 مدرّب مسبقًا للنشر السريع
model_v5 = YOLO("yolov5su.pt") # YOLOv5u: أوزان YOLOv5 الخالية من المراسي لحزمة ultralytics
# أو الاستفادة من نموذج YOLOv9 لدقة عالية
model_v9 = YOLO("yolov9c.pt")
# التدريب بسلاسة على بيانات مخصصة
results = model_v9.train(data="coco8.yaml", epochs=50, imgsz=640)
# تصدير النموذج المدرّب إلى ONNX
model_v9.export(format="onnx")يوفر نهج الواجهة البرمجية الواحدة هذا تعددًا هائلًا في الاستخدامات، إذ يدعم تقدير الوضعيات ومربعات الإحاطة الموجّهة (OBB)، وليس الكشف فحسب، وذلك بحسب النموذج المختار. علاوة على ذلك، أُدمجت مباشرةً في حلقة التدريب تكاملات قوية مع أدوات مثل Comet ML وWeights & Biases.
حالات الاستخدام المثالية والتطبيقات الواقعية#
يعتمد الاختيار بين هذه البنى بدرجة كبيرة على قيود أجهزتك والدقة التي يتطلبها مجال تطبيقك.
متى تختار YOLOv5#
YOLOv5 نموذج مجرّب ميدانيًا يتألق في عمليات النشر التي تعطي الأولوية للاستقرار وقلة استهلاك الذاكرة والتوافق الواسع مع خيارات التصدير.
- عمليات النشر على الأجهزة المحمولة: يسهل للغاية تصدير YOLOv5 إلى LiteRT أو CoreML للاستدلال على الأجهزة في الهواتف الذكية القديمة.
- الأجهزة الطرفية القديمة: بالنسبة إلى أجهزة مثل Raspberry Pi أو الأجيال الأولى من NVIDIA Jetson Nano، تضمن عمليات الالتفاف المباشرة في YOLOv5 معدلات إطارات ثابتة لتطبيقات مثل إدارة مواقف السيارات الذكية.
- إنشاء النماذج الأولية بسرعة: تتيح وفرة الدروس التعليمية المجتمعية والأوزان المخصصة المدرّبة مسبقًا والتوافق الواسع مع مجموعات البيانات التحقق من إثبات المفهوم بأسرع طريقة.
متى تختار YOLOv9#
يناسب YOLOv9 السيناريوهات التي يكون فيها التقاط التفاصيل الدقيقة وتقليل السلبيات الكاذبة أمرًا بالغ الأهمية، حتى إن تطلب ذلك موارد حوسبة إضافية قليلًا.
- صور جوية وصور الأقمار الصناعية: يتميز إطار PGI بقدرة كبيرة على الحفاظ على دقة الأجسام الصغيرة، ما يجعل YOLOv9 ممتازًا في مراقبة الزراعة باستخدام الطائرات المسيّرة.
- تشخيصات التصوير الطبي: عند كشف الحالات الشاذة أو الآفات الدقيقة في عمليات المسح عالية الدقة، يوفر تدفق التدرج الدقيق في GELAN ميزة ضرورية في الاستدعاء.
- تحليلات تجارة التجزئة المتقدمة: يستفيد تتبع المنتجات المتداخلة على الرفوف المكتظة بدرجة كبيرة من قدرات YOLOv9 الأفضل على الاحتفاظ بالسمات.
وسّع آفاقك#
مع أن مقارنة YOLOv5 وYOLOv9 توضح تطور البنى من 2020 إلى 2024، فإن مجال الذكاء الاصطناعي يتقدم بوتيرة أسرع من أي وقت مضى. ونشجع بشدة المطورين الساعين إلى بلوغ أحدث حدود الأداء على استكشاف أحدث نماذج YOLO26. فمن خلال إتاحة تصميم شامل خالٍ من NMS أصلي (nms=False) كبديل لكبح القيم غير العظمى التقليدي، واستخدام مُحسِّن MuSGD المتقدم، يجسر YOLO26 الفجوة بين دقة مستوى الأبحاث وسرعة مستوى الإنتاج. وبفضل إزالة DFL (إزالة Distribution Focal Loss لتبسيط التصدير وتحسين التوافق مع الأجهزة الطرفية ومنخفضة الطاقة)، يحقق YOLO26 استدلالًا على CPU أسرع بنسبة تصل إلى 43%، ما يجعله مثاليًا للحوسبة الطرفية. بالإضافة إلى ذلك، توفر ProgLoss + STAL دوال خسارة محسّنة مع تحسينات ملحوظة في التعرف على الأجسام الصغيرة، وهو أمر بالغ الأهمية لإنترنت الأشياء والروبوتات والصور الجوية.
قد يهمك أيضًا مقارنة هذه البنى بنماذج أخرى متطورة مثل RT-DETR أو YOLO11 عالي القدرات. ويضمن استخدام إطار عمل Ultralytics الموحد بقاء مسار التطوير واضحًا وفعالًا وجاهزًا للتوسع، أيًا كان النموذج الذي تختاره.