YOLOv7 YOLOX: تحليل تقني لأجهزة الكشف في الوقت الحقيقي
تميز تطور الرؤية الحاسوبية بالتقدم السريع في مجال الكشف عن الأجسام في الوقت الفعلي. ومن المعالم البارزة في هذه الرحلة نذكر YOLOv7 YOLOX. ورغم أن كلا النموذجين قد تجاوزا حدود السرعة والدقة، إلا أنهما اعتمدا فلسفتين مختلفتين في الهندسة المعمارية لتحقيق نتائجهما. يقدم هذا الدليل مقارنة تقنية شاملة بين هذين النموذجين القويين، مما يساعدك على اختيار الهندسة المعمارية المناسبة لمشاريع الرؤية الحاسوبية الخاصة بك.
مقدمة إلى النماذج
إن فهم أصول هذه النماذج وخيارات التصميم الأساسية أمر بالغ الأهمية لنشرها بفعالية في عمليات التعلم الآلي الحديثة.
YOLOv7
تم تطوير YOLOv7 من قبل الباحثين الذين حافظوا على بنى CSPNet و Scaled-YOLOv4، YOLOv7 نهج "trainable bag-of-freebies" لتعظيم الدقة دون زيادة تكلفة الاستدلال.
- المؤلفون: Chien-Yao Wang و Alexey Bochkovskiy و Hong-Yuan Mark Liao
- المؤسسة:معهد علوم المعلومات، أكاديميا سينيكا، تايوان
- التاريخ: 2022-07-06
- أرشيف:https://arxiv.org/abs/2207.02696
- GitHub:https://github.com/WongKinYiu/yolov7
- الوثائق:وثائق Ultralytics YOLOv7
تفاصيل YOLOX
اتخذت YOLOX مسارًا مختلفًا من خلال إعادة النموذج إلى الكشف بدون مرساة، مما أدى إلى تبسيط بنية الرأس بشكل كبير مع الحفاظ على الأداء القوي.
- المؤلفون: تشنغ قه، سونغتاو ليو، فنغ وانغ، زيمينغ لي، وجيان صن
- المؤسسة:Megvii
- التاريخ: 2021-07-18
- أرشيف:https://arxiv.org/abs/2107.08430
- GitHub:https://github.com/Megvii-BaseDetection/YOLOX
- المستندات:الوثائق الرسمية لـ YOLOX
الاختلافات والابتكارات المعمارية
تكمن الاختلافات الأساسية بين YOLOv7 YOLOX في نهجهما تجاه استخراج الميزات وتوقع المربع المحيط وتعيين التسميات.
YOLOX: الرائد الخالي من الـ Anchor
أحدثت YOLOX ثورة في YOLO من خلال الانتقال إلى تصميم خالٍ من المراسي. تتطلب أجهزة الكشف التقليدية القائمة على المراسي ضبطًا تجريبيًا معقدًا لتجميع مربعات المراسي، وهو ما قد يعتمد بشكل كبير على مجموعة البيانات. من خلال التخلص من صناديق التثبيت، قلل YOLOX بشكل كبير من عدد معلمات التصميم. علاوة على ذلك، يستخدم YOLOX رأسًا منفصلًا، يفصل مهام التصنيف والتحديد المكاني إلى فروع شبكة متميزة. وهذا يحل التضارب الكامن بين تصنيف كائن ما وتراجع إحداثياته المكانية. يدمج YOLOX أيضًا استراتيجيات متقدمة لتعيين التسميات مثل SimOTA، التي تخصص العينات الإيجابية ديناميكيًا أثناء التدريب.
YOLOv7: تجميع طبقات فعال موسع
YOLOv7 إلى المنهجيات القائمة على المراسي، لكنها أدخلت شبكة تجميع الطبقات الفعالة الموسعة (E-ELAN). تعمل E-ELAN على تحسين طول مسار التدرج، مما يضمن أن الشبكة تتعلم بفعالية عبر أعماق متفاوتة. تعتمد البنية بشكل كبير على تقنيات إعادة المعلمات، حيث تدمج الطبقات التلافيفية أثناء الاستدلال لتعزيز السرعة دون التضحية بالدقة. تتضمن استراتيجية "bag-of-freebies" YOLOv7 ابتكارات مثل التلافيف المعاد تحديد معلماتها بشكل مخطط وتعيين العلامات الموجهة من الخشن إلى الناعم، مما يدفع متوسط الدقة المتوسط للنموذج إلى مستويات رائعة.
مستند إلى نقاط الارتكاز مقابل خالٍ من نقاط الارتكاز
بينما سهّل YOLOX عمليات النشر بفضل إعداداته الخالية من المثبتات، قامت Ultralytics الحديثة بتحسين هذا النهج، مما أدى إلى التخلص تمامًا من الحاجة إلى الصناديق المحددة مسبقًا في الأجيال الأحدث.
مقارنة الأداء
عند تقييم هذه النماذج للإنتاج، من الضروري تحقيق التوازن بين الدقة والكفاءة الحسابية. يوضح الجدول أدناه المفاضلات، مع إبراز المقاييس الأفضل أداءً بالخط العريض.
| النموذج | الحجم (بالبكسل) | 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 |
| 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 |
كما هو موضح أعلاه، يحقق YOLOv7x أعلى mAP مما يجعله دقيقًا للغاية بالنسبة لمجموعات البيانات المعقدة. على العكس من ذلك، تم تحسين YOLOX-Nano بشكل كبير للتعامل مع قيود الموارد الشديدة. ومع ذلك، يُظهر كلا النموذجين استخدامًا مرتفعًا نسبيًا للذاكرة أثناء التدريب مقارنة بالبنى الحديثة.
منهجيات التدريب والنظام البيئي
يعد سهولة التنفيذ عاملاً حاسماً بالنسبة للباحثين والمطورين. تاريخياً، كانت YOLO القديمة YOLO تتطلب نصوص C++ مخصصة بشكل كبير أو إدارة معقدة للتبعيات.
ميزة النظام البيئي لـ Ultralytics
اليوم، الطريقة الأكثر فعالية للاستفادة من هذه البنى هي من خلال Ultralytics الذي يتم صيانته جيدًا. Ultralytics Python موحدة وسهلة الاستخدام للغاية، مما يبسط بشكل كبير عمليات التدريب والتحقق والنشر.
- سهولة الاستخدام: باستخدام بضع أسطر من التعليمات البرمجية، يمكنك بدء حلقة تدريب، مما يقلل من صعوبة التعلم المرتبطة PyTorch الأولية.
- كفاءة التدريب: تستخدمYOLO Ultralytics YOLO بطبيعتها ذاكرة أقل أثناء التدريب مقارنة بنماذج المحولات الثقيلة مثل RT-DETR. وهذا يتيح للمطورين تعظيم أحجام الدفعات على الأجهزة الاستهلاكية.
- تعدد الاستخدامات: يتجاوز النظام البيئي مجرد صناديق الحدود البسيطة، ليشمل مهام مثل تقسيم الحالات وتقدير الوضعيات.
فيما يلي مثال قابل للتشغيل بنسبة 100٪ يوضح كيفية تدريب نموذج باستخدام Ultralytics :
from ultralytics import YOLO
# Load a pre-trained model
model = YOLO("yolov8n.pt") # Readily available weights for rapid transfer learning
# Train the model efficiently on your custom data
results = model.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
batch=16,
device="0", # Utilizes optimal CUDA memory management
)
# Export seamlessly to ONNX or TensorRT
model.export(format="onnx")
من خلال توحيد خط أنابيب التصدير، يمكن للمطورين نقل أوزانهم بسهولة إلى تنسيقات مثل TensorRT أو ONNX، مما يضمن استنتاجًا عالي السرعة على الأجهزة المستهدفة.
حالات الاستخدام المثالية والتطبيقات الواقعية
يعتمد الاختيار بين YOLOX و YOLOv7 على أهداف النشر:
- YOLOX لـ Edge AI: تعد إصدارات YOLOX-Nano و YOLOX-Tiny مناسبة للغاية للاستخدام على الأجهزة منخفضة الطاقة. إذا كنت تقوم ببناء كاميرا أمنية ذكية على Raspberry Pi، فإن التلافيف البسيطة الخالية من المراسي في YOLOX يمكن ترجمتها بسهولة إلى مسرعات الحافة.
- YOLOv7 عالية الدقة: إذا كنت تقوم بمعالجة صور أقمار صناعية عالية الدقة أو تنفيذ عمليات معقدة لمراقبة جودة التصنيع، فإن المعدل العالي mAP YOLOv7x، المدعوم NVIDIA المتطورة، يضمن اكتشاف حتى أصغر الحالات الشاذة.
المستقبل: الترقية إلى Ultralytics
في حين أن YOLOv7 YOLOX كانا رائدين عند إطلاقهما، إلا أن مجال الرؤية الحاسوبية قد تطور بشكل كبير. بالنسبة للعمليات الجديدة، يجب على المطورين النظر إلى Ultralytics ، Ultralytics تم إصداره في يناير 2026. يدمج هذا النموذج المتطور أفضل النظريات المعمارية في نظام نهائي جاهز للإنتاج.
إليك الأسباب التي تجعل الترقية موصى بها بشدة:
- تصميم NMS من البداية إلى النهاية: يزيل YOLO26 بشكل أساسي تقنية Non-Maximum Suppression (NMS) أثناء المعالجة اللاحقة. تم ابتكاره في البداية في YOLOv10، وهذا يضمن زمن انتقال منخفضًا بشكل ثابت، مما يبسط النشر على الأجهزة التي تفتقر إلى دعم NMS .
- إزالة DFL: من خلال إزالة Distribution Focal Loss، يحقق YOLO26 توافقًا أفضل بكثير مع الأجهزة الطرفية منخفضة الطاقة ONNX مباشر.
- مُحسِّن MuSGD: مستوحى من ابتكارات تدريب LLM، يستفيد YOLO26 من مُحسِّن MuSGD الهجين، مما يضمن تقاربًا أسرع وديناميكيات تدريب مستقرة بشكل لا يصدق.
- CPU أسرع بنسبة تصل إلى 43٪ CPU : تم تحسين YOLO26 بشكل كبير ليتناسب مع الأجهزة الحقيقية، وهو يعمل بكفاءة على وحدات المعالجة المركزية القياسية دون الحاجة إلى GPU باهظة الثمن GPU .
- ProgLoss + STAL: تعمل وظائف الخسارة المتقدمة هذه على تحسين التعرف على الأجسام الصغيرة بشكل كبير، وهي ميزة مهمة للغاية لعمليات التفتيش الجوية باستخدام الطائرات بدون طيار وشبكات إنترنت الأشياء المتطورة.
بالنسبة للمطورين الذين يبحثون عن أفضل توازن في الأداء بين اكتشاف الكائنات والتجزئة وما بعدها، فإن نشر النماذج عبر Ultralytics يوفر تجربة لا مثيل لها وخالية من أي عوائق.
الخلاصة
YOLOv7 كل من YOLOX و YOLOv7 تقنيات محورية شكلت مسار الذكاء الاصطناعي المفتوح المصدر في مجال الرؤية. أثبت YOLOX جدوى الرؤوس المنفصلة الخالية من المراسي، بينما YOLOv7 القوة الهائلة لإعادة معايرة مسار التدرج. اليوم، يضمن لك الاستفادة من Ultralytics استخراج أقصى إمكانات هذه البنى التاريخية، أو الانتقال بسلاسة إلى YOLO26 المتطور لتأمين تطبيق الرؤية الحاسوبية التالي الخاص بك للمستقبل.