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 القديمة تتطلب نصوص C++ مخصصة للغاية أو إدارة معقدة للتبعيات.
ميزة النظام البيئي لـ Ultralytics
اليوم، الطريقة الأكثر فعالية للاستفادة من هذه البنى هي من خلال Ultralytics الذي يتم صيانته جيدًا. Ultralytics Python موحدة وسهلة الاستخدام للغاية، مما يبسط بشكل كبير عمليات التدريب والتحقق والنشر.
- سهولة الاستخدام: ببضعة أسطر فقط من التعليمات البرمجية، يمكنك بدء حلقة تدريب، مما يخفف من منحنى التعلم الحاد المرتبط بتطبيقات PyTorch الخام.
- كفاءة التدريب: تستخدم نماذج 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 للذكاء الاصطناعي على الحافة: تعد متغيرات YOLOX-Nano و YOLOX-Tiny مناسبة للغاية للنشر على الأجهزة منخفضة الطاقة. إذا كنت تقوم ببناء كاميرا أمنية ذكية على Raspberry Pi، فإن الالتفافات البسيطة الخالية من المراسي لـ YOLOX تُترجم بسهولة إلى مسرعات الحافة.
- YOLOv7 للتحليلات عالية الدقة: إذا كنت تعالج صور أقمار صناعية عالية الدقة أو تنفذ مراقبة جودة تصنيع معقدة، فإن معدل mAP العالي لـ YOLOv7x، المدعوم بوحدات معالجة الرسوميات (GPU) عالية الأداء من NVIDIA، يضمن detect حتى أصغر الشذوذات.
المستقبل: الترقية إلى Ultralytics
في حين أن YOLOv7 YOLOX كانا رائدين عند إطلاقهما، إلا أن مجال الرؤية الحاسوبية قد تطور بشكل كبير. بالنسبة للعمليات الجديدة، يجب على المطورين النظر إلى Ultralytics ، Ultralytics تم إصداره في يناير 2026. يدمج هذا النموذج المتطور أفضل النظريات المعمارية في نظام نهائي جاهز للإنتاج.
إليك الأسباب التي تجعل الترقية موصى بها بشدة:
- تصميم شامل بدون NMS: يلغي YOLO26 بطبيعته Non-Maximum Suppression (NMS) أثناء المعالجة اللاحقة. كان هذا النهج، الذي كان رائداً في البداية في YOLOv10، يضمن زمن استجابة منخفضًا باستمرار، مما يبسط النشر على الأجهزة التي تفتقر إلى دعم أجهزة NMS.
- إزالة DFL: من خلال إزالة خسارة التركيز التوزيعي، يحقق YOLO26 توافقًا أفضل بكثير مع الأجهزة الطرفية منخفضة الطاقة وتصديرات ONNX مباشرة.
- مُحسِّن MuSGD: مستوحى من ابتكارات تدريب نماذج اللغة الكبيرة (LLM)، يستفيد YOLO26 من مُحسِّن MuSGD الهجين، مما يضمن تقاربًا أسرع وديناميكيات تدريب مستقرة بشكل لا يصدق.
- استدلال أسرع على CPU بنسبة تصل إلى 43%: مُحسّن بشكل كبير للأجهزة الواقعية، يتفوق YOLO26 على وحدات CPU القياسية دون الحاجة إلى بنية تحتية مكلفة لوحدات GPU.
- ProgLoss + STAL: تحسن دوال الخسارة المتقدمة هذه بشكل كبير التعرف على الكائنات الصغيرة، وهي ميزة حاسمة لـ عمليات فحص الطائرات بدون طيار الجوية وشبكات إنترنت الأشياء المتطورة.
بالنسبة للمطورين الذين يبحثون عن أفضل توازن في الأداء بين اكتشاف الكائنات والتجزئة وما بعدها، فإن نشر النماذج عبر Ultralytics يوفر تجربة لا مثيل لها وخالية من أي عوائق.
الخلاصة
قدم كل من YOLOX وYOLOv7 تقنيات محورية شكلت مسار الذكاء الاصطناعي البصري مفتوح المصدر. أثبت YOLOX جدوى الرؤوس المفصولة الخالية من نقاط الارتكاز، بينما أظهر YOLOv7 القوة الهائلة لإعادة تحديد معلمات مسار التدرج. اليوم، يضمن الاستفادة من نظام Ultralytics البيئي أنه يمكنك استخلاص أقصى إمكانات من هذه البنى التاريخية، أو الانتقال بسلاسة إلى YOLO26 المتطور لضمان مستقبل تطبيق الرؤية الحاسوبية التالي.