مقارنة بين YOLOv6-3.0 و EfficientDet#
يتطلب اختيار البنية المثالية لمشاريع الرؤية الحاسوبية فهماً عميقاً للمقايضات بين السرعة، والدقة، وإمكانية نشر النماذج. توفر صفحة المقارنة هذه تحليلاً متعمقاً لنموذجين مميزين لاكتشاف الكائنات: YOLOv6-3.0 و EfficientDet. وفي حين ساهم كلا النموذجين بشكل كبير في هذا المجال، فإن عمليات النشر الحديثة على الحافة والنماذج الأولية السريعة غالباً ما تستفيد من أطر عمل أكثر توحيداً مثل منصة Ultralytics.
فيما يلي مخطط تفاعلي يوضح فروق الأداء بين هذه النماذج لمساعدتك في فهم ملفات تعريف التأخير والدقة الخاصة بكل منها.
YOLOv6-3.0: إنتاجية بمستوى صناعي#
صُمم YOLOv6-3.0 بشكل صريح من قبل Meituan ليكون إطار عمل عالي الأداء للكشف عن الكائنات في مرحلة واحدة ومصمم للتطبيقات الصناعية. وهو يركز بشكل كبير على تعظيم الإنتاجية على أجهزة GPU، مما يجعله مرشحاً قوياً لخطوط التصنيع عالية السرعة وتحليلات الفيديو دون اتصال بالإنترنت.
- المؤلفون: Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu, و Xiangxiang Chu
- المنظمة: Meituan
- التاريخ: 2023-01-13
- Arxiv: 2301.05586
- GitHub: meituan/YOLOv6
أبرز ميزات البنية#
تعتمد بنية YOLOv6-3.0 على وحدة دمج ثنائية الاتجاه (BiC) لتحسين دمج الميزات عبر النطاق المتباينة. ولضمان سرعات استدلال عالية، تستخدم عموداً فقرياً من نوع EfficientRep، وهو محسّن للغاية للعمل على وحدات معالجة الرسومات (GPU). علاوة على ذلك، فهي توظف استراتيجية التدريب المدعوم بالمثبتات (AAT)، حيث تدمج فوائد الكشف المعتمد على المثبتات وتلك التي لا تعتمد على المثبتات خلال مرحلة التدريب، مع الحفاظ على مسار استدلال خالٍ من المثبتات لتقليل زمن الوصول.
نقاط القوة والضعف#
تتألق بنية YOLOv6-3.0 في البيئات التي تتوفر فيها أجهزة GPU مخصصة، حيث توفر استدلالاً في الوقت الفعلي سريعاً بشكل لا يصدق باستخدام TensorRT. ومع ذلك، فإن اعتمادها الكبير على تحسينات الأجهزة المحددة يمكن أن يؤدي إلى أداء دون المستوى الأمثل على أجهزة الذكاء الاصطناعي على الحافة التي تعتمد على المعالج المركزي (CPU) فقط. بالإضافة إلى ذلك، وعلى الرغم من دعمها لبعض عمليات التكميم، إلا أن النظام البيئي يفتقر إلى البساطة الشاملة الموجودة في أطر عمل Ultralytics الحديثة.
EfficientDet: بنية تعلم آلي قابلة للتوسع#
تتخذ EfficientDet، التي طورها فريق Google Research، نهجاً مختلفاً جوهرياً. فبدلاً من تصميم الشبكة يدوياً، استخدَم المؤلفون التعلم الآلي الآلي (AutoML) لتصميم بنية قابلة للتطوير توازن بين المعلمات، و FLOPs، والدقة.
- المؤلفون: Mingxing Tan, Ruoming Pang, و Quoc V. Le
- المؤسسة: Google Brain
- التاريخ: 2019-11-20
- Arxiv: 1911.09070
- GitHub: google/automl
أبرز ميزات البنية#
قدم EfficientDet شبكة هرم الميزات ثنائية الاتجاه (BiFPN)، والتي تسمح بدمج ميزات متعدد المقاييس بسهولة وسرعة. وبالاقتران مع طريقة توسيع مركبة تقوم بتوسيع الدقة والعمق والعرض بشكل موحد لجميع الشبكات الأساسية وشبكة الميزات وشبكات التنبؤ بالصناديق/الفئات، تتراوح نماذج EfficientDet من d0 المدمج للغاية إلى d7 الضخم.
نقاط القوة والضعف#
تتميز EfficientDet بكفاءة عالية في استخدام المعلمات. فهي تحقق متوسط دقة الاسترجاع (mAP) قوياً بعدد معلمات نسبي ضئيل مقارنة بمكتشفات الكائنات الأقدم. ومع ذلك، فإن البنية متأصلة بعمق في أنظمة TensorFlow القديمة. وينتج عن ذلك إدارة معقدة للتبعية، ودورات تدريب أبطأ، ومتطلبات ذاكرة أعلى أثناء التدريب مقارنة بتنفيذات PyTorch المحسنة. علاوة على ذلك، فإن سرعة استدلالها على وحدات معالجة الرسومات الحديثة أبطأ بكثير من بنيات YOLO الحديثة.
مقارنة مفصلة للأداء#
يقارن الجدول أدناه المواصفات الفنية لـ YOLOv6-3.0 و EfficientDet عبر مقاييس مختلفة. لاحظ كيف يتفوق YOLOv6-3.0 في سرعة GPU، بينما يتوسع EfficientDet إلى mAP أعلى على حساب تأخير كبير.
| النموذج | الحجم (بكسل) | mAPval 50-95 | السرعة CPU ONNX (ms) | السرعة T4 TensorRT10 (ms) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv6-3.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
| YOLOv6-3.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
| YOLOv6-3.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
| YOLOv6-3.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
| EfficientDet-d0 | 640 | 34.6 | 10.2 | 3.92 | 3.9 | 2.54 |
| EfficientDet-d1 | 640 | 40.5 | 13.5 | 7.31 | 6.6 | 6.1 |
| EfficientDet-d2 | 640 | 43.0 | 17.7 | 10.92 | 8.1 | 11.0 |
| EfficientDet-d3 | 640 | 47.5 | 28.0 | 19.59 | 12.0 | 24.9 |
| EfficientDet-d4 | 640 | 49.7 | 42.8 | 33.55 | 20.7 | 55.2 |
| EfficientDet-d5 | 640 | 51.5 | 72.5 | 67.86 | 33.7 | 130.0 |
| EfficientDet-d6 | 640 | 52.6 | 92.8 | 89.29 | 51.9 | 226.0 |
| EfficientDet-d7 | 640 | 53.7 | 122.0 | 128.07 | 51.9 | 325.0 |
عند مقارنة النماذج، تذكر أن FLOPs وعدد المعلمات لا ترتبط دائماً بشكل مثالي بالتأخير في العالم الحقيقي. تم تحسين YOLOv6-3.0 لـ TensorRT، مما يحقق سرعات بالميلي ثانية على الرغم من احتوائه على عدد FLOPs أعلى من نماذج EfficientDet ذات المستوى الأدنى.
ميزة نظام Ultralytics البيئي#
في حين أن YOLOv6-3.0 و EfficientDet تخدمان مجالات محددة، فإن مشاريع الرؤية الحاسوبية الحديثة تتطلب مرونة، وسولة في الاستخدام، ونظماً بيئية مصانة جيداً. وهنا تبرز نماذج Ultralytics YOLO حقاً.
سهولة الاستخدام وكفاءة التدريب#
على عكس EfficientDet التي تتطلب التنقل في تكوينات TensorFlow المعقدة، بُنيت نماذج Ultralytics على أساس PyTorch بديهي. توفر منصة Ultralytics واجهة برمجية مبسطة تسهل دورة حياة التعلم الآلي بأكملها. يتطلب تدريب نموذج Ultralytics ذاكرة CUDA أقل بكثير، مما يسرع التجريب ويقلل تكاليف الحوسبة.
تنوع لا مثيل له#
ترتبط YOLOv6-3.0 و EfficientDet أساساً بـ اكتشاف الكائنات. في المقابل، فإن بنيات Ultralytics الحديثة متعددة الوسائط بطبيعتها. تتيح لك واجهة واحدة تدريب نماذج لمهام تجزئة المثيلات، وتقدير الوضعية، وتصنيف الصور، ومربعات الإحاطة الموجهة (OBB).
تقديم Ultralytics YOLO26#
للمطورين الذين يسعون إلى تحقيق التوازن الأمثل في الأداء، تمثل Ultralytics YOLO26 تحولاً جذرياً. فمع إطلاقها في يناير 2026، تقدم العديد من الابتكارات الرائدة التي تفوق كل من YOLOv6 و EfficientDet:
- تصميم بدون NMS من البداية إلى النهاية: يلغي YOLO26 الحاجة إلى معالجة لاحقة لإلغاء القمع غير الأقصى (NMS)، مما يقلل بشكل كبير من تباين التأخير ويبسط منطق النشر على أجهزة الحافة.
- مُحسِّن MuSGD: مستوحى من تدريب LLM، يضمن هذا المحسن الهجين تدريباً مستقراً وتقارباً سريعاً للغاية.
- استدلال أسرع بنسبة تصل إلى 43٪ على CPU: مع إزالة Distribution Focal Loss (DFL)، يعد YOLO26 أكثر كفاءة بكثير على وحدات CPU وأجهزة IoT منخفضة الطاقة مقارنة بالنماذج القديمة.
- ProgLoss + STAL: توفر دوال الخسارة المتقدمة هذه تحسينات هائلة في التعرف على الكائنات الصغيرة، مما يجعل YOLO26 مثالياً لتطبيقات الطائرات بدون طيار والتصوير الجوي.
حالات الاستخدام والتوصيات#
يعتمد الاختيار بين YOLOv6 و EfficientDet على متطلبات مشروعك المحددة، وقيود النشر، وتفضيلات النظام البيئي.
متى تختار YOLOv6#
يعتبر YOLOv6 خياراً قوياً لـ:
- النشر المدرك للأجهزة الصناعية: السيناريوهات التي يوفر فيها التصميم المدرك للأجهزة وإعادة تحديد المعلمات الفعال للنموذج أداءً محسناً على أجهزة مستهدفة محددة.
- الكشف السريع في مرحلة واحدة: التطبيقات التي تعطي الأولوية لسرعة الاستدلال الخام على GPU لمعالجة الفيديو الفوري في بيئات خاضعة للتحكم.
- تكامل النظام البيئي لـ Meituan: الفرق التي تعمل بالفعل ضمن حزمة التكنولوجيا والبنية التحتية للنشر الخاصة بـ Meituan.
متى تختار EfficientDet#
يُنصح باستخدام EfficientDet في الحالات التالية:
- خطوط أنابيب Google Cloud وTPU: الأنظمة المتكاملة بعمق مع واجهات برمجة تطبيقات Google Cloud Vision أو بنية TPU التحتية حيث يتمتع EfficientDet بتحسين أصلي.
- أبحاث القياس المركب (Compound Scaling): المقارنة المعيارية الأكاديمية التي تركز على دراسة تأثيرات موازنة عمق الشبكة، وعرضها، وتوسيع نطاق الدقة.
- النشر على الأجهزة المحمولة عبر TFLite: المشاريع التي تتطلب بشكل خاص تصدير TensorFlow Lite لنظام أندرويد أو أجهزة لينكس المدمجة.
متى تختار Ultralytics (YOLO26)#
بالنسبة لمعظم المشاريع الجديدة، يقدم Ultralytics YOLO26 أفضل مزيج من الأداء وتجربة المطورين:
- نشر الحافة الخالي من NMS: التطبيقات التي تتطلب استنتاجاً متسقاً ومنخفض زمن الانتقال دون تعقيدات معالجة ما بعد المعالجة باستخدام كبت غير الأقصى.
- بيئات وحدة المعالجة المركزية (CPU) فقط: الأجهزة التي لا تحتوي على تسريع مخصص بوحدة معالجة الرسوميات (GPU)، حيث توفر سرعة استنتاج CPU أسرع بنسبة تصل إلى 43% في YOLO26 ميزة حاسمة.
- الكشف عن الأشياء الصغيرة: السيناريوهات الصعبة مثل صور الطائرات بدون طيار الجوية أو تحليل مستشعرات إنترنت الأشياء (IoT) حيث تعمل ProgLoss و STAL على تعزيز الدقة بشكل كبير على الأشياء الدقيقة.
مثال على التنفيذ: تدريب YOLO26#
يوضح الكود التالي بساطة نظام Ultralytics البيئي. إن تدريب نموذج متطور سهل مثل تحميل الأوزان وتحديد بياناتك.
from ultralytics import YOLO
# Load the highly optimized YOLO26 nano model
model = YOLO("yolo26n.pt")
# Train the model on a dataset with automatic hyperparameter handling
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model to check mAP metrics
metrics = model.val()
print(f"Validation mAP50-95: {metrics.box.map}")
# Run inference on a test image seamlessly
prediction = model("https://ultralytics.com/images/bus.jpg")نماذج أخرى يجب مراعاتها#
إذا كنت تستكشف المشهد الأوسع لنماذج الرؤية الحاسوبية، ففكر في هذه البدائل:
- YOLO11: السلف الناجح للغاية لـ YOLO26، والذي يقدم قدرات متعددة المهام قوية ودعم مجتمعي واسع.
- YOLOv10: أول بنية YOLO تقدم تدريباً خالياً من NMS، مما يمهد الطريق للاكتشاف الحديث من البداية إلى النهاية.
- RT-DETR: للحالات التي يُفضل فيها استخدام البنيات القائمة على المحولات وآليات الانتباه بدلاً من شبكات CNN التقليدية.
الخلاصة#
بينما يوفر YOLOv6-3.0 إنتاجية صناعية ممتازة لـ GPU ويعرض EfficientDet إمكانات AutoML في صياغة شبكات قابلة للتوسع وفعالة من حيث المعلمات، يظهر كلا النموذجين قيوداً في سهولة النشر وتعدد المهام الحديث.
بالنسبة للغالبية العظمى من التطبيقات الواقعية — من النشر على حافة الهواتف المحمولة إلى التحليلات المستندة إلى السحابة — يقدم نظام Ultralytics البيئي توازناً في الأداء لا مثيل له. من خلال اعتماد YOLO26، يكتسب المطورون إمكانية الوصول إلى الاستدلال المتطور الخالي من NMS، ودوال الخسارة المتقدمة للأجسام الصغيرة، ومسار تدريب موحد وموثق جيداً يسرع بشكل كبير المسار من النموذج الأولي إلى الإنتاج.