DAMO-YOLO في مقابل YOLOX: مقارنة تقنية شاملة
يتطور مشهد الرؤية الحاسوبية في الوقت الفعلي باستمرار. ومن أبرز المحطات في هذه المسيرة DAMO-YOLO و YOLOX، حيث قدم كل منهما ابتكارات فريدة لمعالجة مشاكل اكتشاف الكائنات بسرعة ودقة عاليتين. وفي حين ساهم كلا النموذجين بشكل كبير في مجتمع المصادر المفتوحة، فإن فهم الاختلافات الهندسية ومنهجيات التدريب وسيناريوهات النشر المثالية لكل منهما يعد أمراً بالغ الأهمية لمهندسي تعلم الآلة.
يستكشف هذا الدليل الشامل الفروق التقنية الدقيقة لكلا النموذجين ويوضح سبب كون البدائل الحديثة مثل منصة Ultralytics YOLO26 توفر أداءً متفوقاً وسهولة في الاستخدام لبيئات الإنتاج الحالية.
نظرة عامة على النماذج
تفاصيل DAMO-YOLO
تم تطوير DAMO-YOLO بواسطة فريق من الباحثين في Alibaba Group، وقد قُدّم كطريقة اكتشاف كائنات عالية الكفاءة تعتمد على الاكتشاف الآلي للبنية الهندسية.
المؤلفون: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang, and Xiuyu Sun
المنظمة: Alibaba Group
التاريخ: 2022-11-23
Arxiv: https://arxiv.org/abs/2211.15444v2
GitHub: https://github.com/tinyvision/DAMO-YOLO
التوثيق: توثيق DAMO-YOLO
تفاصيل YOLOX
تم إنشاء YOLOX بواسطة باحثين في Megvii، وكان الهدف منه سد الفجوة بين مجتمعات البحث والصناعة من خلال تحويل سلسلة YOLO إلى تصميم خالٍ من نقاط الارتكاز (anchor-free)، مما أدى إلى تبسيط البنية بشكل جذري مع تحقيق أداء أفضل في ذلك الوقت.
المؤلفون: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, and Jian Sun
المنظمة: Megvii
التاريخ: 2021-07-18
Arxiv: https://arxiv.org/abs/2107.08430
GitHub: https://github.com/Megvii-BaseDetection/YOLOX
التوثيق: توثيق YOLOX
التحليل الهندسي
بنية DAMO-YOLO
يعتمد DAMO-YOLO بشكل كبير على البحث في البنية العصبية (NAS). وتشمل المكونات الأساسية ما يلي:
- هياكل MAE-NAS: تستخدم خوارزمية بحث تطوري متعددة الأهداف لاكتشاف الهياكل الأساسية التي توفر التوازن الأمثل بين سرعة الاستدلال والدقة.
- Efficient RepGFPN: تصميم عنق ثقيل مُكيف لدمج الميزات، مما يساعد النموذج في الحفاظ على دقة عالية عبر مقاييس الكائنات المختلفة.
- ZeroHead: رأس اكتشاف مبسط وخفيف الوزن يقلل من العبء الحسابي في طبقات التنبؤ النهائية.
معمارية YOLOX
اتخذ YOLOX نهجاً مختلفاً، حيث ركز على البساطة الهيكلية والتصميم الخالي من نقاط الارتكاز:
- آلية خالية من نقاط الارتكاز (Anchor-Free): من خلال التنبؤ بإحداثيات صندوق التحديد مباشرة دون نقاط ارتكاز محددة مسبقاً، يقلل YOLOX من عدد معلمات التصميم والضبط الاستدلالي المطلوب.
- رأس مفكك (Decoupled Head): يفصل مهام التصنيف والانحدار إلى فروع ميزات مختلفة، مما يحسن سرعة التقارب والدقة الإجمالية.
- تعيين التسميات SimOTA: استراتيجية متقدمة لتعيين التسميات تخصص عينات إيجابية ديناميكياً للحقائق الأرضية، مما يحسن كفاءة التدريب.
بينما يستخدم DAMO-YOLO عمليات بحث NAS المدفوعة بالآلة للعثور على الهياكل المثلى في ظل قيود صارمة، يستفيد YOLOX من تبسيطات أنيقة صممها البشر (مثل الرؤوس الخالية من نقاط الارتكاز) لتبسيط مسار اكتشاف الكائنات.
مقارنة الأداء
يتطلب تقييم هذه النماذج النظر في متوسط دقة التنبؤ (mAP)، وسرعات الاستدلال، وعدد المعلمات. فيما يلي جدول مقارنة تفصيلي للمتغيرات القياسية والخفيفة لكلا البنيتين.
| النموذج | الحجم (بكسل) | mAPval 50-95 | السرعة CPU ONNX (ملي ثانية) | السرعة T4 TensorRT10 (ملي ثانية) | المعلمات (مليون) | FLOPs (مليار) |
|---|---|---|---|---|---|---|
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
| 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 |
في حين يحقق YOLOXx أعلى mAP مطلق عند 51.1، يقدم DAMO-YOLOl قيمة mAP تنافسية للغاية تبلغ 50.8 مع أقل من نصف المعلمات (42.1 مليون مقابل 99.1 مليون) وتنفيذ أسرع بكثير عبر TensorRT.
منهجيات التدريب
تدريب DAMO-YOLO
يستخدم DAMO-YOLO تحسيناً معقداً للتقطير أثناء التدريب. غالباً ما يتم تدريب نموذج "معلم" كبير أولاً، ثم تُنقل معرفته إلى نماذج "طالب" أصغر. كما يستخدم AlignedOTA لتعيين التسميات الديناميكي. على الرغم من فاعليته العالية، فإن عملية التدريب متعددة المراحل هذه تزيد بشكل كبير من وقت حوسبة GPU وعبء الذاكرة المطلوب.
تدريب YOLOX
يعتمد YOLOX على استراتيجيات قوية لزيادة البيانات مثل MixUp و Mosaic. ومع ذلك، اكتشف المؤلفون أن إيقاف هذه الزيادات القوية في آخر 15 دورة تدريبية يسمح للنموذج بسد فجوة الواقع، مما يعزز مقاييس الدقة النهائية بشكل كبير.
حالات الاستخدام المثالية
- DAMO-YOLO: الأنسب لعمليات النشر الصناعية عالية المخاطر حيث يمكن دعم مسارات تقطير من جانب الخادم، وحيث تستفيد الأجهزة المستهدفة (مثل وحدات معالجة الرسوميات NVIDIA المحددة) مباشرة من بنية NAS ذات العنق الثقيل.
- YOLOX: ممتاز للمطورين الذين يسعون إلى نهج خالص خالٍ من نقاط الارتكاز. يجعل
YOLOXnanoخفيف الوزن للغاية قابلاً للتطبيق على أجهزة Android القديمة، والحوسبة الحافية، ومستشعرات IoT المقيدة جداً حيث يكون عدد المعلمات هو عنق الزجاجة المطلق.
ميزة Ultralytics: دخول YOLO26
بينما يمثل كل من DAMO-YOLO و YOLOX معالم ممتازة، يطلب المطورون اليوم حلولاً أكثر شمولاً وتعدداً وسهولة في الاستخدام. وهنا تبرز منصة Ultralytics و Ultralytics YOLO26 التي تم إصدارها حديثاً.
تم إصدار YOLO26 في يناير 2026، وهو النموذج النهائي الموصى به لجميع مهام الرؤية الحاسوبية. وهو يقدم مجموعة من الاختراقات التي تتفوق على البنيات الأقدم:
- تصميم شامل (End-to-End) خالٍ من NMS: يلغي YOLO26 محلياً معالجة ما بعد الكشف غير الأقصى (NMS). وهذا يسمح بنشر أبسط وأسرع بكثير، مما يتجنب اختناقات زمن الوصول المتأصلة في رؤوس الكشف التقليدية.
- استدلال أسرع على وحدة المعالجة المركزية (CPU) بنسبة تصل إلى 43%: من خلال إزالة خسارة التوزيع البؤري (DFL) استراتيجياً وتحسين الطبقات، يوفر YOLO26 سرعات لا مثيل لها على وحدات المعالجة المركزية وأجهزة الحافة.
- محسن MuSGD: مستوحى من تقنيات تدريب النماذج اللغوية الكبيرة (LLM)، يقدم YOLO26 محسن MuSGD (هجين من SGD و Muon)، مما يؤدي إلى عمليات تدريب مستقرة للغاية وتقارب أسرع بكثير مقارنة بالإعدادات القديمة في YOLOX.
- ProgLoss + STAL: تحقق دوال الخسارة المتقدمة هذه تحسينات ملحوظة في التعرف على الكائنات الصغيرة، مما يجعل YOLO26 متفوقاً بشكل كبير لتصوير الطائرات بدون طيار والروبوتات.
- تعدد الاستخدامات: على عكس DAMO-YOLO، المخصص حصرياً لاكتشاف الكائنات، يتعامل YOLO26 بسلاسة مع تجزئة المثيلات، وتقدير الوضعية، والتصنيف، وصناديق التحديد الموجهة (OBB) محلياً داخل نفس النظام البيئي المُدار جيداً.
سهولة الاستخدام مع Ultralytics
تعمل واجهة برمجة تطبيقات Ultralytics Python على تبسيط تجربة المطور. يتطلب تدريب نموذج YOLO26 متطور كوداً برمجياً أقل بكثير ويتجنب مسارات التقطير المعقدة في DAMO-YOLO. علاوة على ذلك، تتميز نماذج Ultralytics بمتطلبات ذاكرة CUDA منخفضة بشكل استثنائي أثناء التدريب مقارنة بالنماذج الثقيلة المعتمدة على المحولات (Transformer).
from ultralytics import YOLO
# Load the latest Ultralytics YOLO26 nano model
model = YOLO("yolo26n.pt")
# Train the model on your custom dataset with one line of code
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run fast, NMS-free inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Export to ONNX or TensorRT seamlessly
model.export(format="onnx")يمكنك التعليق التوضيحي والتدريب ونشر النماذج تلقائياً إلى الحافة باستخدام منصة Ultralytics، التي تتولى جميع عمليات إصدار البيانات وتوفير GPU السحابي نيابة عنك.
خاتمة
يعتمد الاختيار بين DAMO-YOLO و YOLOX على قيود محددة: يوفر DAMO-YOLO نسب سرعة إلى دقة استثنائية على وحدات معالجة رسوميات معينة عبر NAS، بينما يوفر YOLOX تصميماً نظيفاً وخالياً من نقاط الارتكاز مثالياً لسيناريوهات الحافة خفيفة الوزن.
ومع ذلك، بالنسبة للفرق التي تبحث عن حل حديث ومستقبلي مع مجتمع نشط، فإن بنية Ultralytics YOLO26 هي الخيار الأمثل. إن تصميمه الخالي من NMS، والاستدلال السريع على وحدة المعالجة المركزية، وواجهة برمجة التطبيقات الموحدة لمهام الكشف والتجزئة والوضعية تجعله لا مثيل له للانتقال بسلاسة من البحث إلى الإنتاج القوي في العالم الحقيقي.
بالنسبة للمطورين المهتمين باستكشاف بنيات حديثة أخرى، نوصي أيضاً بالاطلاع على Ultralytics YOLO11 أو النماذج المعتمدة على المحولات مثل RT-DETR المتاحة في توثيق Ultralytics الشامل.