مقارنة بين YOLOv10 وYOLOv7#
أسفر التطور السريع لرؤية الكمبيوتر على مدار السنوات القليلة الماضية عن بنيات أكثر كفاءة لتطبيقات الوقت الفعلي. إن مقارنة YOLOv10 و YOLOv7 تسلط الضوء على مرحلة انتقالية حاسمة في هذا التطور. وفي حين قدمت YOLOv7 استراتيجيات تدريب فعالة للغاية وتحجيمًا بنيويًا، فقد أحدثت YOLOv10 ثورة في نشر النماذج من خلال التخلص من الاعتماد طويل الأمد على Non-Maximum Suppression (NMS).
دفع كلا النموذجين حدود object detection عند إطلاقهما، ومع ذلك فإن Ultralytics ecosystem الحديث وتقديم نماذج الجيل التالي مثل YOLO26 توفر سير عمل فائقة الجودة لم ممارسي الذكاء الاصطناعي اليوم.
ملفات تعريف النماذج وأصولها#
يوفر فهم أصول هذه النماذج سياقاً قيماً فيما يتعلق بخيارات تصميمها المعماري والأبحاث الأكاديمية التي تدفعها.
تفاصيل YOLOv10#
- المؤلفون: Ao Wang، Hui Chen، Lihao Liu، وآخرون.
- Organization: Tsinghua University
- التاريخ: 2024-05-23
- Arxiv: YOLOv10: Real-Time End-to-End Object Detection
- GitHub: THU-MIG/yolov10
- Docs: Ultralytics YOLOv10 Documentation
تفاصيل YOLOv7#
- المؤلفون: Chien-Yao Wang و Alexey Bochkovskiy و Hong-Yuan Mark Liao
- Organization: Institute of Information Science, Academia Sinica, Taiwan
- التاريخ: 2022-07-06
- Arxiv: YOLOv7: Trainable bag-of-freebies sets new state-of-the-art
- GitHub: WongKinYiu/yolov7
- Docs: Ultralytics YOLOv7 Documentation
الابتكارات المعمارية#
نهج YOLOv7#
تم إصدار YOLOv7 في عام 2022، وركز بشكل كبير على تحسين مسارات التدرج. قدم نموذج الشبكة المجمعة للطبقات الفعالة الموسعة (E-ELAN)، والذي سمح للنموذج بتعلم ميزات أكثر تنوعاً دون تدمير مسار التدرج الأصلي. علاوة على ذلك، طبق المؤلفون منهجية "مجموعة قابلة للتدريب من الأدوات المجانية" (bag-of-freebies)، باستخدام تقنيات إعادة التقييم أثناء التدريب التي يمكن دمجها بعيداً أثناء الاستدلال للحفاظ على سرعات تنفيذ سريعة. على الرغم من هذه التحسينات الرائعة، استمر YOLOv7 في الاعتماد بشكل كبير على NMS للمعالجة اللاحقة، مما خلق زمن انتقال متغيراً أثناء تحليل المشاهد الكثيفة.
اختراق YOLOv10#
عالجت YOLOv10 عنق الزجاجة لـ NMS بشكل مباشر. من خلال تقديم تعيينات مزدوجة متسقة أثناء التدريب، مكّن فريق جامعة تسينغهوا من إجراء كشف شامل من البداية إلى النهاية بدون NMS. يستخدم نهج الرأس المزدوج هذا فرعًا واحدًا بتعيينات من واحد إلى متعدد للحصول على إشارات إشرافية غنية أثناء التدريب، وفرعًا آخر بتعيينات من واحد لواحد للاستدلال بدون NMS. يضمن هذا التحول المعماري زمن استجابة inference latency متسقًا ومنخفضًا للغاية ومناسبًا لتحليلات الفيديو عالية السرعة. علاوة على ذلك، توظف YOLOv10 تصميم نموذج شامل مدفوعًا بالكفاءة والدقة، متخلصة من التكرار الحسابي الموجود في الأجيال السابقة.
إزالة المعالجة اللاحقة NMS لا تسرع الاستدلال فحسب، بل تبسط بشكل كبير النشر على أجهزة الذكاء الاصطناعي الطرفية، مثل مسرعات الذكاء الاصطناعي و NPUs حيث تشتهر عمليات NMS المخصصة بصعوبة تجميعها.
مقارنة الأداء#
عند مقارنة المقاييس الأولية على MS COCO dataset، تصبح الفجوة بين الأجيال واضحة. تحقق YOLOv10 مقايضة أكثر ملاءمة بين المعلمات والمتطلبات الحسابية والدقة.
| النموذج | الحجم (بكسل) | mAPval 50-95 | السرعة CPU ONNX (ms) | السرعة T4 TensorRT10 (ms) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
كما لوحظ أعلاه، توفر YOLOv10x قيمة mAP متفوقة تبلغ 54.4% مقارنة بـ 53.1% لـ YOLOv7x، بينما تستخدم عددًا أقل من المعلمات بنسبة 20% تقريبًا. علاوة على ذلك، توفر نماذج YOLOv10 خفيفة الوزن (Nano و Small) سرعات TensorRT deployment استثنائية، مما يجعلها جذابة للغاية للنشر على الأجهزة المحمولة.
ميزة نظام Ultralytics البيئي#
في حين أن دراسة الأوراق المعمارية مفيدة، فإن تطوير الرؤية الحاسوبية الحديث يعتمد على أطر عمل قوية ومصانة جيداً. يوفر اختيار نموذج مدعوم من Ultralytics ميزة هائلة للمطورين الذين يتطلعون إلى الانتقال من النموذج الأولي إلى الإنتاج بسرعة.
تطوير مبسط#
يمكن الوصول إلى كل من YOLOv10 و YOLOv7 عبر حزمة Python القياسية لـ Ultralytics. يوفر هذا سهولة في الاستخدام لا مثيل لها، حيث يستبدل آلاف الأسطر من الكود النموذجي بواجهة برمجة تطبيقات (API) بسيطة وبديهية. علاوة على ذلك، تتطلب نماذج Ultralytics YOLO ذاكرة CUDA أقل بكثير أثناء التدريب مقارنة ببنيات Transformer الثقيلة، مما يتيح استخدام أحجام دفعات أكبر على الأجهزة الاستهلاكية.
تنوع لا مثيل له#
في حين أن المستودعات القديمة غالبًا ما تركز بدقة على اكتشاف مربعات الإحاطة، فإن إطار عمل Ultralytics المتكامل يدعم بسلاسة مجموعة هائلة من المهام. وسواء كنت تقوم بـ Instance Segmentation أو Pose Estimation أو اكتشاف Oriented Bounding Box (OBB)، يظل سير العمل متطابقًا.
مثال على الكود: مهام سير عمل تدريب متسقة#
يوضح مقتطف الشفرة البرمجية التالي عملية التدريب السلسة، والتي تتعامل تلقائيًا مع data augmentation وجدولة معدل التعلم:
from ultralytics import YOLO
# Load the desired model (YOLOv10, YOLOv7, or the recommended YOLO26)
model = YOLO("yolo26n.pt")
# Train the model effortlessly on your dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, batch=16, device=0)
# Export to ONNX format for rapid deployment
model.export(format="onnx")حالات الاستخدام والتوصيات#
يعتمد الاختيار بين YOLOv10 و YOLOv7 على متطلبات مشروعك المحددة، وقيود النشر، وتفضيلات النظام البيئي.
متى تختار YOLOv10#
يعد YOLOv10 خياراً قوياً لـ:
- الكشف الفوري بدون NMS: التطبيقات التي تستفيد من الكشف الشامل (end-to-end) بدون تقنية Non-Maximum Suppression، مما يقلل من تعقيد النشر.
- الموازنة بين السرعة والدقة: المشاريع التي تتطلب توازناً قوياً بين سرعة الاستدلال ودقة الكشف عبر مختلف أحجام النماذج.
- تبيقات ذات زمن استجابة ثابت: سيناريوهات النشر التي تكون فيها أوقات الاستدلال المتوقعة حرجة، مثل robotics أو الأنظمة المستقلة.
متى تختار YOLOv7#
يُنصح بـ YOLOv7 في الحالات التالية:
- قياس الأداء الأكاديمي: إعادة إنتاج نتائج متطورة من حقبة 2022 أو دراسة تأثيرات تقنيات E-ELAN و"حقيبة الأدوات المجانية" القابلة للتدريب.
- أبحاث إعادة التقييم (Reparameterization): دراسة الالتفافات المعاد تقييمها المخطط لها واستراتيجيات قياس النموذج المركب.
- خطوط الأنابيب المخصصة الحالية: المشاريع ذات خطوط الأنابيب المخصصة للغاية المبنية حول معمارية YOLOv7 المحددة التي لا يمكن إعادة تصميمها بسهولة.
متى تختار Ultralytics (YOLO26)#
بالنسبة لمعظم المشاريع الجديدة، يقدم Ultralytics YOLO26 أفضل مزيج من الأداء وتجربة المطورين:
- نشر الحافة الخالي من NMS: التطبيقات التي تتطلب استنتاجاً متسقاً ومنخفض زمن الانتقال دون تعقيدات معالجة ما بعد المعالجة باستخدام كبت غير الأقصى.
- بيئات وحدة المعالجة المركزية (CPU) فقط: الأجهزة التي لا تحتوي على تسريع مخصص بوحدة معالجة الرسوميات (GPU)، حيث توفر سرعة استنتاج CPU أسرع بنسبة تصل إلى 43% في YOLO26 ميزة حاسمة.
- الكشف عن الأشياء الصغيرة: السيناريوهات الصعبة مثل صور الطائرات بدون طيار الجوية أو تحليل مستشعرات إنترنت الأشياء (IoT) حيث تعمل ProgLoss و STAL على تعزيز الدقة بشكل كبير على الأشياء الدقيقة.
المعيار الجديد: تقديم YOLO26#
بينما كان YOLOv10 قفزة هائلة للأمام في عام 2024، فإن مشهد الرؤية الحاسوبية يتحرك بسرعة مذهلة. بالنسبة لجميع التطويرات الجديدة، نوصي بشدة بأحدث جيل من النماذج: Ultralytics YOLO26. تم إصداره في يناير 2026، وهو يمثل قمة الذكاء الاصطناعي للرؤية في الوقت الفعلي، متفوقاً بشكل كبير على كل من YOLOv7 و YOLOv10.
يجلب YOLO26 ابتكارات غير مسبوقة مصممة خصيصاً لبيئات النشر الحديثة:
- تصميم شامل بدون NMS: بناءً على الأساس الذي وضعه YOLOv10، يلغي YOLO26 أصلاً المعالجة اللاحقة NMS لخطوط أنابيب نشر أبسط واستدلال متسق وعالي السرعة.
- استدلال وحدة المعالجة المركزية (CPU) أسرع بنسبة تصل إلى 43%: تم تحسينه بشكل كبير للحوسبة الطرفية والأجهزة التي تفتقر إلى وحدات معالجة الرسومات (GPU) المخصصة، مما يوفر وفورات هائلة في تكاليف الأجهزة.
- إزالة DFL: تمت إزالة Distribution Focal Loss تماماً، مما يبسط منطق التصدير جذرياً ويحسن بشكل كبير التوافق مع الأجهزة الطرفية منخفضة الطاقة ووحدات التحكم الدقيقة.
- مُحسّن MuSGD: مستوحى من Kimi K2 التابع لـ Moonshot AI، يجلب هذا الهجين من SGD و Muon ابتكارات تدريب Large Language Model (LLM) مباشرة إلى رؤية الكمبيوتر، مما ينتج عنه ديناميكيات تدريب مستقرة بشكل لا يصدق وتقارب أسرع.
- ProgLoss + STAL: توفر وظائف الخسارة المتقدمة هذه تحسينات ملحوظة في التعرف على الكائنات الصغيرة، وهو مجال كان يشكل تحديًا تاريخيًا ولكنه بالغ الأهمية للطائرات بدون طيار (الدرونز) والروبوتات و smart city monitoring.
- تحسينات خاصة بالمهام: YOLO26 ليس مجرد كاشف. فهو يتضمن خسارة تجزئة دلالية متخصصة، وتقدير احتمالية السجل المتبقي (RLE) لتتبع الوضعية بدقة فائقة، وخوارزميات خسارة زاوية متخصصة للقضاء على مشكلات حدود OBB.
للحصول على أفضل تجربة مطلقة في إدارة مجموعات البيانات الخاصة بك، وتدريب YOLO26، ونشر النماذج في السحابة، استكشف Ultralytics Platform. فهو يوفر واجهة خالية من البرمجة تكمل Python SDK تمامًا.
حالات الاستخدام في العالم الحقيقي#
يعتمد اختيار البنية الصحيحة بشكل كبير على قيود الأجهزة والتطبيقات الخاصة بك.
متى تستخدم YOLOv7#
يظل YOLOv7 خياراً موثوقاً للحفاظ على خطوط الأنابيب القديمة التي تم دمجها بالفعل بعمق مع هياكل Tensor المحددة الخاصة به أو عند تكرار المعايير الأكاديمية لعامي 2022 و 2023. وهو يعمل بشكل ممتاز على وحدات معالجة الرسومات (GPU) الخاصة بالخوادم المتطورة.
متى تستخدم YOLOv10#
تتألق YOLOv10 في السيناريوهات التي تتطلب زمن استجابة صارمًا وثابتًا. ونظرًا لكونها خالية من NMS، فهي ممتازة لحساب الحشود عالية الكثافة أو manufacturing defect detection حيث يتقلب عدد الكائنات بشكل كبير ولكن يجب أن يظل وقت المعالجة لكل إطار ثابتًا.
متى تستخدم YOLO26#
تعتبر YOLO26 الخيار النهائي لأي مشروع جديد تمامًا. بدءًا من نشر security alarm systems متطورة على جهاز Raspberry Pi أساسي وصولاً إلى تشغيل تحليلات فيديو ضخمة قائمة على السحابة، فإن سرعات المعالج (CPU) الفائقة واكتشاف الكائنات الصغيرة المتقدم يجعلها تفوق بكثير الأجيال السابقة.
للمطورين المهتمين باستكشاف بنيات حديثة بديلة، نقدم أيضًا دعمًا واسع النطاق للكشف القائم على المُحوِّلات (transformers) مثل RT-DETR والركائز الأساسية للأجيال السابقة مثل Ultralytics YOLO11.