تخطي إلى المحتوى

YOLOv7 ضد YOLOv5: مقارنة فنية تفصيلية

عند اختيار نموذج للكشف عن الكائنات، غالبًا ما يوازن المطورون بين المفاضلات بين السرعة والدقة وسهولة الاستخدام. يعتبر Ultralytics YOLOv5 و YOLOv7 نموذجين محوريين في مشهد رؤية الكمبيوتر، ولكل منهما نقاط قوة مميزة. تقدم هذه الصفحة مقارنة فنية مفصلة لمساعدتك في تحديد النموذج الذي يناسب احتياجات مشروعك على أفضل وجه، مع تسليط الضوء على الاختلافات المعمارية ومعايير الأداء والتطبيقات المثالية.

في حين أن YOLOv7 دفع حدود الدقة عند إصداره، فقد أثبت Ultralytics YOLOv5 نفسه كمعيار للكفاءة والنشر السريع وإمكانية الوصول، مدعومًا بنظام بيئي قوي وموثق جيدًا.

YOLOv7: التركيز على الدقة العالية

تم إصدار YOLOv7، التي تم إنشاؤها بواسطة Chien-Yao Wang و Alexey Bochkovskiy و Hong-Yuan Mark Liao، في 6 يوليو 2022. وقد قدمت العديد من التحسينات المعمارية واستراتيجيات التدريب، المعروفة باسم "trainable bag-of-freebies"، بهدف وضع أحدث ما توصلت إليه التكنولوجيا في الدقة لكاشفات الكائنات في الوقت الفعلي مع الحفاظ على السرعة العالية.

المؤلفون: Chien-Yao Wang, Alexey Bochkovskiy, و Hong-Yuan Mark Liao
المنظمة: معهد علوم المعلومات، أكاديميا سينيكا، تايوان
التاريخ: 2022-07-06
Arxiv: https://arxiv.org/abs/2207.02696
GitHub: https://github.com/WongKinYiu/yolov7
المستندات: https://docs.ultralytics.com/models/yolov7/

بنية وميزات YOLOv7 الرئيسية

تم بناء هيكل YOLOv7 على العديد من الابتكارات الرئيسية المصممة لتحسين تعلم الميزات وتحسين النموذج للاستدلال الأسرع بعد التدريب.

  • شبكة تجميع الطبقات الفعالة الموسعة (E-ELAN): تعمل هذه الوحدة في الهيكل الأساسي على تحسين قدرة الشبكة على التعلم من خلال إدارة مسارات التدرج بشكل أكثر كفاءة، مما يسمح لها بتعلم المزيد من الميزات المتنوعة.
  • توسيع نطاق النموذج: يطبق طريقة توسيع نطاق مركبة للنماذج القائمة على التسلسل، ويقوم بضبط عمق النموذج وعرضه ليناسب الميزانيات الحسابية المختلفة.
  • حقيبة الحيل المجانية القابلة للتدريب: تستخدم تقنيات تدريب متقدمة، مثل الرؤوس الإضافية وتعيين التسميات الأمثل، لتعزيز الدقة دون زيادة تكلفة الاستنتاج. تُستخدم هذه الرؤوس الإضافية فقط أثناء التدريب لتقوية تعلم الميزات وتتم إزالتها للاستنتاج.

نقاط القوة في YOLOv7

  • دقة عالية: يحقق mAP عاليًا في المعايير القياسية مثل COCO، وغالبًا ما يتفوق على النماذج المعاصرة في الدقة.
  • تقنيات تدريب فعالة: تتضمن استراتيجيات تدريب جديدة تزيد الأداء إلى أقصى حد دون إضافة أعباء حسابية أثناء الاستدلال.

نقاط ضعف YOLOv7

  • التعقيد: قد يكون فهم وتعديل البنية الأساسية وعملية التدريب، مع ميزات مثل الرؤوس الإضافية، أكثر تعقيدًا مقارنةً بالنهج المبسّط لـ Ultralytics YOLOv5.
  • النظام البيئي والدعم: يفتقر إلى الوثائق الشاملة والبرامج التعليمية والنظام البيئي المتكامل الذي توفره Ultralytics. هذا يمكن أن يجعل النشر واستكشاف الأخطاء وإصلاحها أكثر صعوبة بالنسبة للمطورين.
  • استهلاك مكثف للموارد: تتطلب نماذج YOLOv7 الأكبر موارد حسابية كبيرة للتدريب، مما قد يحد من إمكانية الوصول إليها للمستخدمين ذوي الأجهزة المحدودة.

حالات استخدام YOLOv7

  • اكتشاف عالي الأداء: مناسب للتطبيقات التي يكون فيها تحقيق أعلى دقة ممكنة أمرًا بالغ الأهمية، مثل المراقبة المتقدمة أو المركبات ذاتية القيادة.
  • البحث وقياس الأداء: غالبًا ما تستخدم في البحث الأكاديمي لاستكشاف أحدث تقنيات اكتشاف العناصر ودفع حدود الأداء.

تعرف على المزيد حول YOLOv7

Ultralytics YOLOv5: السرعة والبساطة

تم إصدار Ultralytics YOLOv5، الذي ألفه Glenn Jocher، في 26 يونيو 2020. وسرعان ما أصبح أحد أشهر نماذج الكشف عن الأجسام نظرًا لتوازنه الاستثنائي بين السرعة والدقة والأهم من ذلك سهولة الاستخدام. تم بناءه على PyTorch وهو مصمم للتدريب السريع والنشر القوي وإمكانية الوصول.

المؤلفون: جلين جوتشر
المنظمة: Ultralytics
التاريخ: 2020-06-26
Arxiv: لا يوجد
GitHub: https://github.com/ultralytics/yolov5
المستندات: https://docs.ultralytics.com/models/yolov5/

بنية وميزات YOLOv5 الرئيسية

يتميز YOLOv5 ببنية بسيطة ولكنها قوية ومحسّنة للغاية لكل من التدريب والاستدلال.

  • هندسة معتمدة على CSP: تستخدم شبكة Cross Stage Partial (CSP) في كل من العمود الفقري والعنق (PANet) لتحسين تدفق الميزات وتقليل الاختناقات الحسابية.
  • عائلة نماذج قابلة للتطوير: يقدم مجموعة من النماذج من Nano ‏(YOLOv5n) إلى Extra-Large ‏(YOLOv5x)، مما يسمح للمستخدمين باختيار التوازن المثالي بين السرعة والدقة لتلبية احتياجاتهم الخاصة، بدءًا من الأجهزة الطرفية خفيفة الوزن وحتى الخوادم السحابية عالية الأداء.
  • تجربة تركز على المطور أولاً: مصممة من الألف إلى الياء لتوفير البساطة. وهي تتميز بالجيل التلقائي للمرتكزات، وتتبع التجارب المتكامل، وخط تدريب مبسط يسهل استخدامه للمبتدئين والخبراء على حد سواء.

نقاط قوة Ultralytics YOLOv5

  • سهولة الاستخدام: تشتهر YOLOv5 بتجربة المستخدم المباشرة. مع بسيطة pip install ultralytics ، أمر سهل الاستخدام CLI، وشاملة الوثائق، البدء سريع للغاية.
  • نظام بيئي مُدار بشكل جيد: يستفيد من التطوير المستمر بواسطة Ultralytics، ومجتمع مفتوح المصدر قوي، والتكامل السلس مع أدوات مثل Ultralytics HUB للتدريب والنشر بدون تعليمات برمجية.
  • موازنة الأداء: تحقق مقايضة ممتازة بين السرعة والدقة. نماذجها الأصغر، مثل YOLOv5n، سريعة بشكل لا يصدق ومثالية للاستدلال في الوقت الفعلي على CPU والأجهزة الطرفية.
  • كفاءة التدريب: عملية التدريب عالية الكفاءة، مع أوقات تقارب أسرع ومتطلبات ذاكرة أقل مقارنة بالعديد من النماذج الأخرى. الأوزان المدربة مسبقًا متاحة بسهولة، والتدريب المخصص بسيط.
  • تنوع الاستخدامات: يدعم أصليًا مهام متعددة، بما في ذلك اكتشاف الكائنات، و تجزئة المثيلات، و تصنيف الصور.

نقاط ضعف Ultralytics YOLOv5

  • ذروة الدقة: على الرغم من قدرتها التنافسية العالية، قد لا تتطابق أكبر نماذج YOLOv5 مع ذروة mAP لأكبر متغيرات YOLOv7 في بعض المعايير، حيث تم تصميم YOLOv7 خصيصًا لزيادة هذا المقياس.

حالات استخدام Ultralytics YOLOv5

  • تطبيقات في الوقت الفعلي: مثالية للتطبيقات التي تتطلب استدلالًا سريعًا، مثل الروبوتات، ورؤية الطائرات بدون طيار، وتحليل الفيديو المباشر.
  • النشر على الحافة: مناسب تمامًا للنشر على الأجهزة الطرفية ذات الموارد المحدودة مثل NVIDIA Jetson نظرًا لتصميمه الفعال وأحجام النماذج الصغيرة.
  • النماذج الأولية السريعة: خيار ممتاز لتطوير ونشر حلول الكشف عن العناصر بسرعة، وذلك بفضل سهولة استخدامه ودعمه المكثف.

تعرف على المزيد حول YOLOv5

الأداء والمعايير: YOLOv7 ضد YOLOv5

يكمن الاختلاف الرئيسي في الأداء في أولويات التصميم الخاصة بهما. تهدف YOLOv7 إلى تحقيق أعلى دقة، بينما توفر YOLOv5 مجموعة خيارات أكثر توازناً وعملية.

النموذج الحجم
(بالبكسل)
mAPval
50-95
السرعة
وحدة المعالجة المركزية CPU ONNX
(بالمللي ثانية)
السرعة
T4 TensorRT10
(بالمللي ثانية)
المعلمات
(M)
FLOPs
(B)
YOLOv7l 640 51.4 - 6.84 36.9 104.7
YOLOv7x 640 53.1 - 11.57 71.3 189.9
YOLOv5n 640 28.0 73.6 1.12 2.6 7.7
YOLOv5s 640 37.4 120.7 1.92 9.1 24.0
YOLOv5m 640 45.4 233.9 4.03 25.1 64.2
YOLOv5l 640 49.0 408.4 6.61 53.2 135.0
YOLOv5x 640 50.7 763.2 11.89 97.2 246.4

كما يوضح الجدول، تحقق نماذج YOLOv7 درجات mAP مثيرة للإعجاب مع سرعات GPU تنافسية. ومع ذلك، تقدم Ultralytics YOLOv5 مجموعة خيارات فائقة لسيناريوهات نشر مختلفة. نماذج YOLOv5n و YOLOv5s أسرع بشكل ملحوظ على كل من CPU و GPU، مما يجعلها الخيار الواضح للتطبيقات منخفضة زمن الوصول والتطبيقات الطرفية.

الخلاصة: أي نموذج يجب أن تختاره؟

يعتمد الاختيار بين YOLOv7 و YOLOv5 بشكل كبير على أولويات مشروعك.

  • اختر YOLOv7 إذا كان هدفك الأساسي هو تحقيق أعلى دقة ممكنة في الكشف ولديك الموارد الحسابية والخبرة الفنية لإدارة بنيته الأكثر تعقيدًا ومسار التدريب الخاص به. إنه نموذج ممتاز للبحث والتطبيقات المتخصصة حيث الأداء هو الأهم.

  • اختر Ultralytics YOLOv5 إذا كنت تقدر التطوير السريع وسهولة الاستخدام ومرونة النشر. إن سير العمل المبسط والوثائق الشاملة والتوازن القوي في الأداء يجعله الخيار الأمثل لمعظم التطبيقات التجارية والعملية. سواء كنت مبتدئًا أو ممارسًا متمرسًا، فإن النظام البيئي القوي لـ YOLOv5 يسرع الرحلة من المفهوم إلى الإنتاج.

بالنسبة لمعظم المطورين، فإن المزايا العملية والدعم الشامل لـ Ultralytics YOLOv5 تجعله خيارًا أكثر إقناعًا. يواصل خلفاؤه، مثل Ultralytics YOLOv8، هذا الإرث من خلال تقديم أداء أفضل وميزات أكثر ضمن نفس الإطار سهل الاستخدام.

استكشف نماذج أخرى

بالنسبة للمهتمين بأحدث التطورات، يجدر استكشاف النماذج الأحدث في النظام البيئي Ultralytics.

  • Ultralytics YOLOv8: خليفة YOLOv5، يقدم دقة وسرعة محسّنة وواجهة برمجة تطبيقات موحدة للكشف والتجزئة وتقدير الوضع وتتبع العناصر. انظر مقارنة مباشرة بين YOLOv8 و YOLOv7.
  • Ultralytics YOLOv10: نموذج حديث يركز على الكشف الشامل والخالي من NMS لتقليل زمن الوصول وتحسين الكفاءة.
  • Ultralytics YOLO11: أحدث نموذج متطور من Ultralytics، يؤكد على السرعة والكفاءة وسهولة الاستخدام مع تصميم خالٍ من المرساة.


📅 تم إنشاؤه منذ سنة واحدة ✏️ تم التحديث منذ شهر واحد

تعليقات