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

YOLO12: الكشف عن الكائنات المتمحور حول الانتباه

نظرة عامة

يقدم YOLO12 بنية تتمحور حول الانتباه تختلف عن الأساليب التقليدية القائمة على CNN المستخدمة في نماذج YOLO السابقة، ولكنها تحتفظ بسرعة الاستدلال في الوقت الفعلي الضرورية للعديد من التطبيقات. يحقق هذا النموذج دقة فائقة في الكشف عن الكائنات من خلال الابتكارات المنهجية الجديدة في آليات الانتباه وبنية الشبكة الشاملة، مع الحفاظ على الأداء في الوقت الفعلي.



شاهد: كيفية استخدام YOLO12 للكشف عن الكائنات باستخدام حزمة Ultralytics | هل YOLO12 سريع أم بطيء؟ 🚀

الميزات الرئيسية

  • آلية انتباه المنطقة: نهج جديد للانتباه الذاتي يعالج المجالات الاستقبالية الكبيرة بكفاءة. يقسم خرائط الميزات إلى مناطق l متساوية الحجم (افتراضيًا 4)، إما أفقيًا أو رأسيًا، وتجنب العمليات المعقدة والحفاظ على مجال استقبال فعال كبير. هذا يقلل بشكل كبير من التكلفة الحسابية مقارنة بالانتباه الذاتي القياسي.
  • شبكات تجميع الطبقات الفعالة المتبقية (R-ELAN): وحدة تجميع ميزات محسنة تعتمد على ELAN، مصممة لمعالجة تحديات التحسين، خاصة في النماذج الأكبر حجمًا التي تركز على الانتباه. تقدم R-ELAN:
    • اتصالات متبقية على مستوى الكتلة مع التحجيم (على غرار تحجيم الطبقة).
    • طريقة مُعاد تصميمها لتجميع الميزات لإنشاء هيكل يشبه عنق الزجاجة.
  • هندسة الانتباه المحسّنة: YOLO12 يبسّط آلية الانتباه القياسية لزيادة الكفاءة والتوافق مع إطار عمل YOLO. وهذا يشمل:
    • استخدام FlashAttention لتقليل النفقات العامة للوصول إلى الذاكرة.
    • إزالة الترميز الموضعي للحصول على نموذج أنظف وأسرع.
    • تعديل نسبة MLP (من 4 المعتادة إلى 1.2 أو 2) لتحقيق توازن أفضل للحساب بين طبقات الانتباه والتغذية الأمامية.
    • تقليل عمق الكتل المكدسة لتحسين التحسين.
    • الاستفادة من عمليات الالتفاف (عند الاقتضاء) لكفاءتها الحسابية.
    • إضافة التفافية قابلة للفصل 7x7 ("مستقبل الموضع") إلى آلية الانتباه لترميز المعلومات الموضعية ضمنيًا.
  • دعم المهام الشامل: يدعم YOLO12 مجموعة من مهام رؤية الكمبيوتر الأساسية: اكتشاف الكائنات، و تقسيم المثيلات، و تصنيف الصور، وتقدير الوضع، واكتشاف الكائنات الموجهة (OBB).
  • كفاءة محسّنة: يحقق دقة أعلى مع عدد أقل من المعلمات مقارنة بالعديد من النماذج السابقة، مما يدل على تحسن التوازن بين السرعة والدقة.
  • نشر مرن: مُصمم للنشر عبر منصات متنوعة، من الأجهزة الطرفية إلى البنية التحتية السحابية.

تصور مقارنة YOLO12

المهام والأوضاع المدعومة

يدعم YOLO12 مجموعة متنوعة من مهام رؤية الكمبيوتر. يعرض الجدول أدناه دعم المهام والأوضاع التشغيلية (الاستدلال والتحقق والتدريب والتصدير) المتاحة لكل منها:

نوع النموذج المهمة الاستدلال التحقق التدريب تصدير
YOLO12 اكتشاف
YOLO12-seg التجزئة
YOLO12-pose الوضع
YOLO12-cls التصنيف
YOLO12-obb OBB

مقاييس الأداء

يُظهر YOLO12 تحسينات كبيرة في الدقة عبر جميع مقاييس النموذج، مع بعض المقايضات في السرعة مقارنة بنماذج YOLO السابقة الأسرع. فيما يلي نتائج كمية لـ اكتشاف الكائنات على مجموعة بيانات التحقق من صحة COCO:

أداء الكشف (COCO val2017)

الأداء

النموذج الحجم
(بالبكسل)
mAPval
50-95
السرعة
وحدة المعالجة المركزية CPU ONNX
(بالمللي ثانية)
السرعة
T4 TensorRT
(مللي ثانية)
المعلمات
(M)
FLOPs
(B)
مقارنة
(mAP/السرعة)
YOLO12n 640 40.6 - 1.64 2.6 6.5 +2.1٪ /-9٪ (مقابل YOLOv10n)
YOLO12s 640 48.0 - 2.61 9.3 21.4 +0.1٪ /+42٪ (مقابل RT-DETRv2)
YOLO12m 640 52.5 - 4.86 20.2 67.5 +1.0٪ /-3٪ (مقابل YOLO11m)
YOLO12l 640 53.7 - 6.77 26.4 88.9 +0.4٪ /-8٪ (مقابل YOLO11l)
YOLO12x 640 55.2 - 11.79 59.1 199.0 +0.6٪ /-4٪ (مقابل YOLO11x)
  • تم قياس سرعة الاستدلال على وحدة معالجة الرسومات NVIDIA T4 GPU بدقة TensorRT FP16 precision.
  • تُظهر المقارنات التحسن النسبي في mAP والنسبة المئوية للتغير في السرعة (تشير القيمة الموجبة إلى سرعة أكبر؛ وتشير القيمة السالبة إلى سرعة أبطأ). تتم المقارنات مع النتائج المنشورة لـ YOLO10 و YOLO11 و RT-DETR حيثما توفرت.

أمثلة الاستخدام

يوفر هذا القسم أمثلة للتدريب والاستدلال باستخدام YOLO12. للحصول على وثائق أكثر شمولاً حول هذه الأوضاع وغيرها (بما في ذلك التحقق من الصحة و التصدير)، راجع صفحات التوقع و التدريب المخصصة.

تركز الأمثلة أدناه على نماذج YOLO12 Detect (لاكتشاف الأجسام). بالنسبة للمهام الأخرى المدعومة (التقسيم، والتصنيف، واكتشاف الأجسام الموجهة، وتقدير الوضعية)، راجع الوثائق الخاصة بكل مهمة: Segment، Classify، OBB، و Pose.

مثال

مدرب مسبقا *.pt النماذج (باستخدام PyTorch) والتكوين *.yaml يمكن تمرير الملفات إلى YOLO() class لإنشاء مثيل نموذج في Python:

from ultralytics import YOLO

# Load a COCO-pretrained YOLO12n model
model = YOLO("yolo12n.pt")

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference with the YOLO12n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

تتوفر أيضًا أوامر واجهة سطر الأوامر (CLI):

# Load a COCO-pretrained YOLO12n model and train on the COCO8 example dataset for 100 epochs
yolo train model=yolo12n.pt data=coco8.yaml epochs=100 imgsz=640

# Load a COCO-pretrained YOLO12n model and run inference on the 'bus.jpg' image
yolo predict model=yolo12n.pt source=path/to/bus.jpg

تحسينات رئيسية

  1. Enhanced Feature Extraction:

    • انتباه المنطقة: يتعامل بكفاءة مع المجالات الاستقبالية الكبيرة، مما يقلل من التكلفة الحسابية.
    • توازن مُحسَّن: توازن مُحسَّن بين الانتباه وحسابات الشبكة ذات التغذية الأمامية.
    • R-ELAN: يعزز تجميع الميزات باستخدام بنية R-ELAN.
  2. ابتكارات التحسين:

    • اتصالات متبقية: يقدم اتصالات متبقية مع تغيير الحجم لتحقيق الاستقرار في التدريب، خاصة في النماذج الأكبر.
    • تحسين تكامل الميزات: ينفذ طريقة محسنة لتكامل الميزات داخل R-ELAN.
    • FlashAttention: يتضمن FlashAttention لتقليل النفقات العامة للوصول إلى الذاكرة.
  3. الكفاءة المعمارية:

    • معلمات مخفضة: يحقق عددًا أقل من المعلمات مع الحفاظ على الدقة أو تحسينها مقارنة بالعديد من النماذج السابقة.
    • تبسيط الانتباه: يستخدم تطبيقًا مبسطًا للانتباه، وتجنب الترميز الموضعي.
    • نسب MLP مُحسَّنة: تضبط نسب MLP لتخصيص موارد الحوسبة بشكل أكثر فعالية.

المتطلبات

تطبيق Ultralytics YOLO12، بشكل افتراضي، لا يتطلب FlashAttention. ومع ذلك، يمكن تجميع FlashAttention اختياريًا واستخدامه مع YOLO12. لتجميع FlashAttention، يلزم وجود أحد وحدات معالجة الرسوميات NVIDIA التالية:

الاقتباسات والشكر والتقدير

إذا كنت تستخدم YOLO12 في بحثك، فيرجى الاستشهاد بالعمل الأصلي لـ جامعة بافالو و جامعة الأكاديمية الصينية للعلوم:

@article{tian2025yolov12,
  title={YOLOv12: Attention-Centric Real-Time Object Detectors},
  author={Tian, Yunjie and Ye, Qixiang and Doermann, David},
  journal={arXiv preprint arXiv:2502.12524},
  year={2025}
}

@software{yolo12,
  author = {Tian, Yunjie and Ye, Qixiang and Doermann, David},
  title = {YOLOv12: Attention-Centric Real-Time Object Detectors},
  year = {2025},
  url = {https://github.com/sunsmarterjie/yolov12},
  license = {AGPL-3.0}
}

الأسئلة الشائعة

كيف تحقق YOLO12 اكتشاف الكائنات في الوقت الفعلي مع الحفاظ على دقة عالية؟

تتضمن YOLO12 العديد من الابتكارات الرئيسية لتحقيق التوازن بين السرعة والدقة. تعالج آلية الانتباه للمساحة مجالات استقبال كبيرة بكفاءة، مما يقلل من التكلفة الحسابية مقارنة بالانتباه الذاتي القياسي. تعمل شبكات تجميع الطبقات الفعالة المتبقية (R-ELAN) على تحسين تجميع الميزات، ومعالجة تحديات التحسين في النماذج الأكبر التي تركز على الانتباه. تعمل بنية الانتباه المحسّنة، بما في ذلك استخدام FlashAttention وإزالة الترميز الموضعي، على زيادة الكفاءة. تتيح هذه الميزات لـ YOLO12 تحقيق دقة فائقة مع الحفاظ على سرعة الاستدلال في الوقت الفعلي الضرورية للعديد من التطبيقات.

ما هي مهام رؤية الكمبيوتر التي يدعمها YOLO12؟

YOLO12 هو نموذج متعدد الاستخدامات يدعم مجموعة واسعة من مهام رؤية الكمبيوتر الأساسية. يتفوق في الكشف عن الكائنات، وتجزئة المثيلات، وتصنيف الصور، وتقدير الوضع، والكشف عن الكائنات الموجهة (OBB) (انظر التفاصيل). إن دعم المهام الشامل هذا يجعل YOLO12 أداة قوية للتطبيقات المتنوعة، من الروبوتات والقيادة الذاتية إلى التصوير الطبي والفحص الصناعي. يمكن تنفيذ كل من هذه المهام في أوضاع الاستدلال والتحقق والتدريب والتصدير.

كيف تتم مقارنة YOLO12 بنماذج YOLO الأخرى والمنافسين مثل RT-DETR؟

يُظهر YOLO12 تحسينات كبيرة في الدقة عبر جميع مقاييس النموذج مقارنةً بنماذج YOLO السابقة مثل YOLOv10 و YOLO11، مع بعض المقايضات في السرعة مقارنةً بالنماذج السابقة الأسرع. على سبيل المثال، يحقق YOLO12n تحسينًا بنسبة +2.1% في mAP مقارنةً بـ YOLOv10n و +1.2% مقارنةً بـ YOLO11n على مجموعة بيانات COCO val2017. بالمقارنة مع نماذج مثل RT-DETR، يوفر YOLO12s تحسينًا بنسبة +1.5% في mAP وزيادة كبيرة في السرعة بنسبة +42%. تسلط هذه المقاييس الضوء على التوازن القوي بين الدقة والكفاءة في YOLO12. راجع قسم مقاييس الأداء للحصول على مقارنات تفصيلية.

ما هي متطلبات الأجهزة لتشغيل YOLO12، وخاصةً لاستخدام FlashAttention؟

بشكل افتراضي، لا يتطلب تطبيق Ultralytics YOLO12 FlashAttention. ومع ذلك، يمكن تجميع FlashAttention اختياريًا واستخدامه مع YOLO12 لتقليل النفقات العامة للوصول إلى الذاكرة. لتجميع FlashAttention، يلزم وجود أحد وحدات معالجة الرسومات NVIDIA التالية: وحدات معالجة الرسومات Turing (مثل T4، سلسلة Quadro RTX)، ووحدات معالجة الرسومات Ampere (مثل سلسلة RTX30، A30/40/100)، ووحدات معالجة الرسومات Ada Lovelace (مثل سلسلة RTX40)، أو وحدات معالجة الرسومات Hopper (مثل H100/H200). تتيح هذه المرونة للمستخدمين الاستفادة من فوائد FlashAttention عندما تسمح موارد الأجهزة بذلك.

أين يمكنني العثور على أمثلة للاستخدام ووثائق أكثر تفصيلاً لـ YOLO12؟

تقدم هذه الصفحة أمثلة استخدام أساسية للتدريب والاستدلال. للحصول على وثائق شاملة حول هذه الأوضاع وغيرها، بما في ذلك التحقق من الصحة و التصدير، راجع صفحات التنبؤ و التدريب المخصصة. للحصول على معلومات خاصة بالمهام (التقسيم والتصنيف واكتشاف الكائنات الموجهة وتقدير الوضع)، راجع الوثائق الخاصة بكل منها: التقسيم و التصنيف و OBB و الوضع. توفر هذه الموارد إرشادات متعمقة للاستخدام الفعال لـ YOLO12 في سيناريوهات مختلفة.



📅 أُنشئ منذ 4 أشهر ✏️ تم التحديث منذ 23 يومًا

تعليقات