تخطي إلى المحتوى

مقارنة شاملة: YOLOv7 EfficientDet لاكتشاف الكائنات

يعد اختيار بنية الشبكة العصبية المثلى أساسًا لأي مشروع ناجح في مجال الرؤية الحاسوبية. يقدم هذا الدليل مقارنة تقنية مفصلة بين نموذجين محوريين في تاريخ بنى الكشف عن الكائنات: YOLOv7 و EfficientDet. من خلال دراسة ابتكاراتهما المعمارية ومنهجيات التدريب وسيناريوهات النشر المثالية، يمكن للمطورين اتخاذ قرارات مستنيرة. سنستكشف أيضًا كيف أعادت التطورات الحديثة، ولا سيما Ultralytics الرائدة، تعريف أحدث ما توصلت إليه التكنولوجيا حاليًا.

أصول النموذج والتفاصيل الفنية

تم تطوير كلا النموذجين من قبل فرق بحثية بارزة وأدخلتا تطورات مهمة في مجال التعلم الآلي.

YOLOv7
المؤلفون: Chien-Yao Wang و Alexey Bochkovskiy و Hong-Yuan Mark Liao
المنظمة: معهد علوم المعلومات، أكاديمية سينيكا، تايوان
التاريخ: 2022-07-06
Arxiv: YOLOv7: مجموعة قابلة للتدريب من العناصر المجانية تضع معايير جديدة لأحدث التقنيات في مجال أجهزة الكشف عن الأجسام في الوقت الفعلي
GitHub: WongKinYiu/yolov7
المستندات: YOLOv7 Ultralytics YOLOv7

تعرف على المزيد حول YOLOv7

EfficientDet
المؤلفون: Mingxing Tan و Ruoming Pang و Quoc V. Le
المنظمة: Google
التاريخ: 2019-11-20
Arxiv: EfficientDet: Scalable and Efficient Object Detection
GitHub: Google EfficientDet

تعرف على المزيد حول EfficientDet

الاختلافات المعمارية والتحليل المتوازن

إن فهم الاختلافات الهيكلية الأساسية بين هذه الشبكات أمر بالغ الأهمية لنشر النموذج بشكل فعال.

EfficientDet: التحجيم المركب و BiFPN

تم تطويره ضمن TensorFlow ، قدم EfficientDet نهجًا مبدئيًا لتوسيع نطاق النموذج. بدلاً من توسيع أو تعميق الشبكة بشكل تعسفي، استخدم Google طريقة توسيع نطاق مركبة تعمل على توسيع نطاق الدقة والعمق والعرض بشكل موحد.

علاوة على ذلك، قدم EfficientDet شبكة هرمية ثنائية الاتجاه للميزات (BiFPN). يتيح هذا المكون المعماري دمج الميزات متعددة النطاقات بسهولة وسرعة.

نقاط القوة: كفاءة عالية في المعلمات، وتحقيق متوسط دقة قوي (mAP) مع عدد أقل من FLOPs مقارنة بالعديد من البرامج المماثلة. نقاط الضعف: يعتمد بشكل كبير على استراتيجيات البحث القديمة في AutoML. التكامل مع PyTorch الحديثة والديناميكية، وغالبًا ما يكون زمن الاستجابة على الأجهزة الطرفية أعلى من المتوقع على الرغم من انخفاض عدد FLOPs.

YOLOv7: مجموعة الأدوات المجانية القابلة للتدريب

YOLOv7 للاستدلال في الوقت الفعلي وتحسين التدريب. وقد أدخلت مفهوم شبكة تجميع الطبقات الفعالة الموسعة (E-ELAN)، التي تسمح للنموذج بتعلم ميزات أكثر تنوعًا بشكل مستمر دون تدمير مسار التدرج الأصلي. YOLOv7 استخدمت YOLOv7 تقنية تسمى "trainable bag-of-freebies"، والتي تعمل على تحسين دقة الكشف بشكل كبير دون زيادة تكلفة الاستدلال.

نقاط القوة: سرعات معالجة استثنائية وزمن استدلال مناسب، مما يجعله مثاليًا لبث الفيديو عالي الإطارات في الثانية. نقاط الضعف: على الرغم من قدراته العالية، إلا أنه لا يزال يعتمد على مربعات الربط ويتطلب قمعًا غير أقصى (NMS) أثناء المعالجة اللاحقة، مما قد يؤدي إلى اختناق زمن الاستدلال في المشاهد المزدحمة للغاية.

ميزة النظام البيئي لـ Ultralytics

عند تقييم النماذج، فإن النظام البيئي المحيط بها لا يقل أهمية عن البنية الهندسية. توفر Ultralytics المتكاملة واجهة برمجة تطبيقات موحدة ووثائق شاملة ودعمًا نشطًا من المجتمع. تضمن هذه البيئة الموحدة استخدامًا أقل للذاكرة أثناء التدريب مقارنةً بنماذج المحولات الثقيلة، مما يضمن إنشاء نماذج أولية سريعة وتتبعًا سلسًا للتجارب.

مقاييس ومعايير الأداء

يوضح الجدول أدناه مقارنة بين مقاييس الأداء الرئيسية التي تمكن المطورين من تقييم المفاضلة بين السرعة وعدد المعلمات والدقة.

النموذجالحجم
(بالبكسل)
mAPval
50-95
السرعة
وحدة المعالجة المركزية CPU ONNX
(بالمللي ثانية)
السرعة
T4 TensorRT10
(بالمللي ثانية)
المعلمات
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
EfficientDet-d064034.610.23.923.92.54
EfficientDet-d164040.513.57.316.66.1
EfficientDet-d264043.017.710.928.111.0
EfficientDet-d364047.528.019.5912.024.9
EfficientDet-d464049.742.833.5520.755.2
EfficientDet-d564051.572.567.8633.7130.0
EfficientDet-d664052.692.889.2951.9226.0
EfficientDet-d764053.7122.0128.0751.9325.0

كما هو موضح، في حين أن EfficientDet-d7 يحقق mAP عاليًا، فإن TensorRT تتخلف بشكل كبير عن YOLOv7 مما يسلط الضوء على هيمنة الأخيرة في الكشف عن الكائنات في الوقت الفعلي GPU.

تطور اكتشاف الأجسام: YOLO26

في حين أن YOLOv7 EfficientDet قد أرسيا أسسًا أساسية، فإن مجال الذكاء الاصطناعي البصري يتطور بسرعة. بالنسبة للتطبيقات الحديثة التي تتطلب أعلى مستويات الكفاءة والدقة، نوصي بشدة بالترقية إلى YOLO26، الذي تم إصداره في يناير 2026.

يعالج YOLO26 القيود المتأصلة في الأجيال السابقة، ويوفر تنوعًا غير مسبوق في اكتشاف الكائنات وتقسيم الحالات وتصنيف الصور وتقدير الوضع.

تعرف على المزيد حول YOLO26

ابتكارات YOLO26 الرئيسية

  • تصميم NMS من البداية إلى النهاية: يزيل YOLO26 بشكل أساسي المعالجة اللاحقة لـ Non-Maximum Suppression (NMS). تم ابتكاره في البداية في YOLOv10، مما يبسط منطق النشر ويضمن تنفيذًا متسقًا ومنخفض التأخير بغض النظر عن كثافة الكائنات.
  • إزالة DFL: من خلال إزالة Distribution Focal Loss (DFL)، يتم تبسيط بنية النموذج بشكل كبير، مما يعزز التوافق مع بيئات الحوسبة الطرفية شديدة التقييد.
  • CPU أسرع بنسبة تصل إلى 43٪ CPU : تم تحسينه بشكل كبير للبيئات التي تفتقر إلى وحدات معالجة رسومات مخصصة، مما يجعله أسرع بشكل كبير من EfficientDet على الأجهزة الخفيفة.
  • MuSGD Optimizer: مستوحى من تقنيات نماذج اللغة الكبيرة (مثل Kimi K2 من Moonshot AI)، يوفر هذا المزيج من SGD Muon استقرارًا على مستوى LLM وتقاربًا سريعًا لتدريب الرؤية الحاسوبية.
  • ProgLoss + STAL: توفر وظائف الخسارة المتقدمة هذه تحسينات ملحوظة في التعرف على الأجسام الصغيرة، وهي ميزة مهمة للصور الجوية وتطبيقات الطائرات بدون طيار.
  • تحسينات خاصة بالمهام: تشمل خسارة التجزئة الدلالية وبروتو متعدد المقاييس لمهام التجزئة، وتقدير الاحتمالية اللوغاريتمية المتبقية (RLE) لتقدير الوضع المعقد، وخسارة زاوية متخصصة مصممة خصيصًا لإصلاح مشكلات حدود الصندوق المحيط الموجه (OBB).

بالنسبة للفرق التي تستخدم حاليًا أنظمة قديمة، فإن الانتقال إلى Ultralytics يفتح الباب أمام سير عمل مبسط حيث يمكن تدريب هذه النماذج المتطورة ونشرها بسهولة. يمكن للمطورين أيضًا استكشاف الإصدارات القوية السابقة مثل YOLO11 و YOLOv8 وفقًا لمتطلبات التوافق مع الإصدارات السابقة.

تدريب مبسط وسهولة الاستخدام

إحدى السمات المميزة Ultralytics هي سهولة الاستخدام. على عكس الإعداد المعقد والمتعدد التبعيات المطلوب لبيئات TensorFlow من EfficientDet، Ultralytics واجهة برمجة تطبيقات بسيطة تعتمد على لغة Python.

تقلل هذه البيئة من استخدامCUDA أثناء التدريب، مما يضمن إمكانية معالجة مجموعات البيانات الكبيرة بكفاءة دون حدوث أخطاء نفاد الذاكرة (OOM) التي تظهر عادةً في البنى الضخمة القائمة على Transformer.

مثال على الكود: البدء في استخدام Ultralytics

يوضح المقتطف التالي كيف يمكن للمطورين الاستفادة من Ultralytics لتدريب نموذج YOLO26 المتطور بسلاسة فور إخراجه من العلبة.

from ultralytics import YOLO

# Initialize the state-of-the-art YOLO26 model for object detection
model = YOLO("yolo26n.pt")

# Train the model effortlessly using the integrated Ultralytics ecosystem
results = model.train(
    data="coco8.yaml",
    epochs=100,
    imgsz=640,
    device=0,  # Auto-selects optimal device
    batch=16,
)

# Validate the model's performance
metrics = model.val()
print(f"Validation mAP50-95: {metrics.box.map}")

# Export the model for edge deployment (e.g., OpenVINO for CPU optimization)
model.export(format="openvino")

التصدير للإنتاج

يمكن تصدير النماذج التي تم تدريبها عبر واجهة Ultralytics على الفور إلى تنسيقات إنتاج مختلفة مثل OpenVINO أو ONNX، مما يضمن إنتاجية عالية بغض النظر عن الأجهزة المستهدفة.

حالات الاستخدام المثالية والتطبيقات الواقعية

عند تصميم حل ما، من الضروري مواءمة نقاط قوة النموذج مع حالة الاستخدام المحددة.

متى تستخدم EfficientDet

يظل EfficientDet مرشحًا للبحوث الأكاديمية القديمة أو البيئات المرتبطة بشكل صارم بنظام Google البيئي حيث تكون التجارب المركبة للتوسع هي المحور الرئيسي. وتكون متغيراته الأصغر (d0-d2) مفيدة عندما يكون حجم القرص المطلق مقيدًا بشدة.

متى تستخدم YOLOv7

YOLOv7 في الإعدادات القديمة عالية الأداء، خاصةً عندما يكون PyTorch مفضلًا على TensorFlow. ولا يزال يستخدم على نطاق واسع في:

  • تحليلات الفيديو: معالجة تدفقات الأمان ذات معدل الإطارات العالي حيث تتوفر GPU بكثرة.
  • الفحص الصناعي: تحديد العيوب في خطوط التجميع الصناعية سريعة الحركة.

متى تختار YOLO26

بالنسبة لجميع عمليات النشر الجديدة، فإن YOLO26 هو الخيار الموصى به بلا منازع. إن توازن أدائه الذي لا مثيل له ونظامه البيئي القوي والمحافظ عليه جيدًا يجعله الخيار الأمثل لـ:

  • المدن الذكية وإدارة حركة المرور: يضمن تصميمه NMS زمن استدلال ثابت، وهو أمر حيوي لتنسيق حركة المرور في الوقت الفعلي.
  • الروبوتات والأنظمة المستقلة: يضمن الارتفاع المذهل بنسبة 43٪ في سرعة CPU خوارزميات تنقل عالية الاستجابة للأجهزة المدمجة.
  • المراقبة الزراعية والجوية: استخدام ProgLoss و STAL لتحديد الأجسام الصغيرة بدقة مثل محاصيل معينة أو الحيوانات البرية من الصور الملتقطة من ارتفاعات عالية.

باختصار، في حين أن EfficientDet و YOLOv7 سياقًا تاريخيًا قيمًا وفائدة متخصصة محددة، فإن مهندس الرؤية الحاسوبية الحديث يستفيد بشكل أفضل من اعتماد بنية Ultralytics التي تحل بذكاء العقبات السابقة بينما توسع حدود ما هو ممكن في مجال الذكاء الاصطناعي.


تعليقات