YOLOv7 مقابل YOLOX#
شهد تطور الرؤية الحاسوبية تقدمًا سريعًا في كشف الأجسام في الزمن الحقيقي. ويُعد YOLOv7 وYOLOX محطتين بارزتين في هذا المسار. وعلى الرغم من أن كلا النموذجين دفع حدود السرعة والدقة، فقد اتبعا فلسفتين مختلفتين في تصميم البنية لتحقيق نتائجهما. يقدم هذا الدليل مقارنة تقنية شاملة بين هذين النموذجين القويين، لمساعدتك على اختيار البنية المناسبة لمشاريع الرؤية الحاسوبية.
مقدمة عن النماذج#
يُعد فهم أصول هذه النماذج وخيارات تصميمها الأساسية أمرًا بالغ الأهمية لنشرها بفاعلية في عمليات التعلّم الآلي الحديثة.
تفاصيل YOLOv7#
طوّر باحثون حافظوا على بُنى CSPNet وScaled-YOLOv4 نموذج YOLOv7، الذي طرح نهج «مجموعة الحيل المجانية القابلة للتدريب» لتعظيم الدقة من دون زيادة كلفة الاستدلال.
- المؤلفون: 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
- الوثائق: وثائق Ultralytics YOLOv7
تفاصيل YOLOX#
سلك YOLOX مسارًا مختلفًا، إذ أعاد التحول إلى الكشف من دون مراسٍ، مع تبسيط بنية الرأس بدرجة كبيرة والحفاظ على أداء قوي.
- المؤلفون: Zheng Ge وSongtao Liu وFeng Wang وZeming Li وJian Sun
- المؤسسة: Megvii
- التاريخ: 2021-07-18
- Arxiv: https://arxiv.org/abs/2107.08430
- GitHub: https://github.com/Megvii-BaseDetection/YOLOX
- الوثائق: الوثائق الرسمية لـYOLOX
تعرّف على مزيد من المعلومات عن YOLOX
الاختلافات المعمارية والابتكارات#
تكمن الاختلافات الأساسية بين YOLOv7 وYOLOX في منهجيتهما لاستخراج السمات والتنبؤ بالصناديق المحيطة وإسناد التسميات.
YOLOX: رائد النهج الخالي من المراسي#
أحدث YOLOX تحولًا في عائلة YOLO بانتقاله إلى تصميم من دون مراسٍ. وتتطلب كواشف المراسي التقليدية ضبطًا استدلاليًا معقدًا لتجميع صناديق المراسي، وقد يعتمد ذلك بدرجة كبيرة على مجموعة البيانات. ومن خلال الاستغناء عن صناديق المراسي، قلّل YOLOX عدد معلمات التصميم بدرجة كبيرة. علاوة على ذلك، يستخدم YOLOX رأسًا مفصولًا، إذ يوزع مهمتي التصنيف وتحديد الموقع على فرعين منفصلين للشبكة. ويحل ذلك التعارض المتأصل بين تصنيف الكائن وانحدار إحداثياته المكانية. كما يدمج YOLOX استراتيجيات متقدمة لإسناد التسميات، مثل SimOTA، التي تخصص العينات الإيجابية ديناميكيًا أثناء التدريب.
YOLOv7: تجميع الطبقات الفعّال الممتد#
عاد YOLOv7 إلى منهجيات المراسي، لكنه قدّم شبكة تجميع الطبقات الفعّال الممتدة (E-ELAN). وتحسّن E-ELAN طول مسار التدرج، ما يضمن تعلّم الشبكة بفاعلية عبر أعماق مختلفة. وتعتمد البنية بدرجة كبيرة على تقنيات إعادة المعلمة، إذ تدمج طبقات الالتفاف أثناء الاستدلال لزيادة السرعة دون التضحية بالدقة. وتتضمن استراتيجية «مجموعة الحيل المجانية» في YOLOv7 ابتكارات مثل عمليات الالتفاف المخططة والمعاد تمثيلها وإسناد التسميات الموجّهة للطبقة الرائدة من الخشن إلى الدقيق، ما يرفع متوسط الدقة للنموذج إلى مستويات لافتة.
على الرغم من أن إعداد YOLOX الخالي من المراسي بسّط مسارات عمل النشر، فقد طوّرت بُنى Ultralytics الحديثة هذا النهج منذ ذلك الحين، مستغنيةً عن الحاجة إلى صناديق محددة مسبقًا في الأجيال الأحدث.
مقارنة الأداء#
عند تقييم هذه النماذج للإنتاج، من الضروري تحقيق توازن بين الدقة والكفاءة الحسابية. يوضح الجدول أدناه المفاضلات، مع إبراز أفضل المقاييس أداءً بالخط العريض.
| النموذج | الحجم (بكسل) | mAPالتحقق 50-95 | السرعة CPU ONNX (مللي ثانية) | السرعة T4 TensorRT10 (ms) | المعاملات (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#
لا يدعم Python API من Ultralytics نموذجي YOLOv7 وYOLOX دعمًا أصليًا؛ وبالنسبة إلى المشاريع الجديدة، فإن المسار الأكثر فاعلية هو استخدام نموذج Ultralytics YOLO ضمن منظومة Ultralytics التي تُصان جيدًا. توفر Ultralytics واجهة Python API موحّدة وسهلة الاستخدام للغاية، تبسّط التدريب والتحقق والنشر بدرجة كبيرة.
- سهولة الاستخدام: باستخدام بضعة أسطر من التعليمات البرمجية، يمكنك بدء حلقة تدريب، وتجاوز منحنى التعلم الحاد المرتبط بتنفيذات PyTorch الخام.
- كفاءة التدريب: تستخدم نماذج Ultralytics YOLO ذاكرة أقل بطبيعتها أثناء التدريب مقارنةً بنماذج Transformer الثقيلة مثل RT-DETR. وهذا يتيح للمطورين زيادة أحجام الدفعات إلى أقصى حد على الأجهزة الاستهلاكية.
- تعدد الاستخدامات: تتجاوز المنظومة الصناديق المحيطة البسيطة لتدعم بسهولة مهامًا مثل تجزئة الكائنات وتقدير الوضعيات.
فيما يلي مثال قابل للتشغيل بالكامل يوضح كيفية تدريب نموذج باستخدام واجهة API من Ultralytics:
from ultralytics import YOLO
# حمّل نموذجًا مدرّبًا مسبقًا
model = YOLO("yolov8n.pt") # أوزان جاهزة للاستخدام من أجل التعلّم بالنقل السريع
# درّب النموذج بكفاءة على بياناتك المخصصة
results = model.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
batch=16,
device="0", # يستخدم إدارة مثلى لذاكرة CUDA
)
# صدّر بسلاسة إلى ONNX أو TensorRT
model.export(format="onnx")من خلال توحيد مسار عمل التصدير، يستطيع المطورون نقل أوزانهم بسهولة إلى تنسيقات مثل TensorRT أو ONNX، ما يضمن استدلالًا عالي السرعة على الأجهزة المستهدفة.
حالات الاستخدام المثالية والتطبيقات الواقعية#
يعتمد الاختيار بين YOLOX وYOLOv7 إلى حد كبير على أهداف النشر:
- YOLOX لتطبيقات الذكاء الاصطناعي الطرفي: يُعدّ طرازا YOLOX-Nano وYOLOX-Tiny مناسبين جدًا للنشر على الأجهزة منخفضة الطاقة. إذا كنت تطوّر كاميرا أمنية ذكية باستخدام Raspberry Pi، فإن الالتفافات البسيطة في YOLOX الخالية من المراسي تُترجم بسهولة إلى مسرّعات الحوسبة الطرفية.
- YOLOv7 للتحليلات عالية الدقة: إذا كنت تعالج صورًا فضائية عالية الدقة أو تنفّذ مراقبة جودة التصنيع المعقدة، فإن ارتفاع mAP في YOLOv7x، المدعوم بوحدات NVIDIA GPU المتطورة، يضمن اكتشاف أصغر الحالات الشاذة.
المستقبل: الترقية إلى Ultralytics YOLO26#
على الرغم من أن YOLOv7 وYOLOX شكّلا نقلة نوعية عند ظهورهما، فقد تطوّر مجال الرؤية الحاسوبية تطورًا كبيرًا. ينبغي للمطوّرين التفكير في Ultralytics YOLO26، الذي صدر في يناير 2026، عند تنفيذ عمليات نشر جديدة. يجمع هذا النموذج المتطور أفضل النظريات المعمارية في نظام متكامل جاهز للإنتاج.
إليك أسباب التوصية الشديدة بالترقية:
- تصميم شامل خالٍ من NMS: تلغي آلية الرأس الاختيارية واحد لواحد في YOLO26 (
nms=False) الحاجة إلى كبت غير الأقصى (NMS) أثناء المعالجة اللاحقة. وقد طُرح هذا النهج أول مرة في YOLOv10، وهو يضمن زمن استجابة منخفضًا باستمرار، ما يسهّل النشر على الأجهزة التي لا تدعم عتاديًا NMS. - إزالة DFL: من خلال إزالة خسارة البؤرة التوزيعية، يحقق YOLO26 توافقًا أفضل بكثير مع الأجهزة الطرفية منخفضة الطاقة، كما يتيح تصديرًا مباشرًا إلى ONNX.
- محسّن MuSGD: يستلهم YOLO26 ابتكارات تدريب النماذج اللغوية الكبيرة، ويستفيد من محسّن MuSGD هجين يضمن تقاربًا أسرع وديناميكيات تدريب مستقرة للغاية.
- استدلال على CPU أسرع بنسبة تصل إلى 43%: جرى تحسين YOLO26 بدرجة كبيرة للعمل على العتاد المستخدم في الواقع، وهو يعمل بكفاءة على وحدات CPU القياسية دون الحاجة إلى بنية تحتية مكلفة لوحدات GPU.
- ProgLoss + STAL: تحسّن الخسارة التدريجية وإسناد التسميات الواعي بالأهداف الصغيرة بدرجة كبيرة التعرّف على الأجسام الصغيرة، وهي ميزة حاسمة في عمليات التفتيش بالطائرات المسيّرة والشبكات المتطورة لإنترنت الأشياء.
للمطوّرين الساعين إلى تحقيق أفضل توازن للأداء في اكتشاف الأجسام والتجزئة وغيرهما، يوفّر نشر النماذج عبر منصة Ultralytics تجربة سلسة لا مثيل لها.
الخلاصة#
قدّم كل من YOLOX وYOLOv7 تقنيات محورية أسهمت في رسم مسار الذكاء الاصطناعي مفتوح المصدر للرؤية الحاسوبية. وأثبت YOLOX جدوى الرؤوس المفككة الخالية من المراسي، فيما أظهر YOLOv7 القوة الكبيرة لإعادة معلمة مسار التدرج. واليوم، تتيح لك منظومة Ultralytics البناء على هذه الأفكار باستخدام نماذج Ultralytics YOLO الحديثة والانتقال بسلاسة إلى YOLO26 المتطور، لضمان جاهزية تطبيقك المقبل للرؤية الحاسوبية للمستقبل.