YOLO-NAS
لمحة عامة
تم تطويره من قبل Deci AI ، YOLO-NAS هو نموذج تأسيسي رائد للكشف عن الأجسام. إنه نتاج تقنية بحث معمارية عصبية متقدمة، مصممة بدقة لمعالجة قيود نماذج YOLO السابقة. مع التحسينات الكبيرة في دعم التكميم والمفاضلة بين الدقة والكمية، يمثل YOLO-NAS قفزة كبيرة في اكتشاف الكائنات.
نظرة عامة على YOLO-NAS. YOLO-يستخدم نموذج NAS كتلًا مدركة للتقدير الكمي وتكميمًا انتقائيًا لتحقيق الأداء الأمثل. ويشهد النموذج، عند تحويله إلى نسخته المكمّمة INT8، انخفاضاً في الدقة إلى الحد الأدنى، وهو ما يمثل تحسناً كبيراً مقارنةً بالنماذج الأخرى. تُتوج هذه التطورات ببنية متفوقة مع قدرات غير مسبوقة في اكتشاف الأجسام وأداء متميز.
الميزات الرئيسية
- كتلة أساسية ملائمة للتقدير الكمي: YOLO-NAS تقدم كتلة أساسية جديدة ملائمة للتقدير الكمي، مما يعالج أحد القيود الكبيرة في نماذج YOLO السابقة.
- تدريب متطور وتقدير كمي متطور: YOLO-NAS يستفيد من مخططات التدريب المتقدمة وتقدير الكمية بعد التدريب لتحسين الأداء.
- التحسين التلقائي والتدريب المسبق: YOLO-NAS يستخدم التحسين التلقائي لـ AutoNAC ويتم تدريبه مسبقًا على مجموعات بيانات بارزة مثل COCO و Objects365 و Roboflow 100. هذا التدريب المسبق يجعله مناسبًا للغاية لمهام الكشف عن الكائنات في بيئات الإنتاج.
النماذج المدربة مسبقاً
اختبر قوة الجيل التالي من اكتشاف الأجسام من خلال نماذج YOLO-NAS المدربة مسبقًا التي يوفرها Ultralytics. تم تصميم هذه النماذج لتقديم أداء من الدرجة الأولى من حيث السرعة والدقة. اختر من بين مجموعة متنوعة من الخيارات المصممة خصيصًا لتلبية احتياجاتك الخاصة:
الطراز | mAP | زمن الاستجابة (مللي ثانية) |
---|---|---|
YOLO-NAS S | 47.5 | 3.21 |
YOLO-NAS M | 51.55 | 5.85 |
YOLO-NAS L | 52.22 | 7.87 |
YOLO-NAS S INT-8 | 47.03 | 2.36 |
YOLO-NAS M INT-8 | 51.0 | 3.78 |
YOLO-NAS L INT-8 | 52.1 | 4.78 |
تم تصميم كل متغير من الطرازات لتوفير توازن بين متوسط الدقة المتوسطة (mAP) ووقت الاستجابة، مما يساعدك على تحسين مهام اكتشاف الأجسام لديك من حيث الأداء والسرعة.
أمثلة على الاستخدام
Ultralytics جعلت نماذج YOLO-NAS سهلة الدمج في تطبيقاتك Python من خلال ultralytics
python الحزمة. توفر الحزمة واجهة برمجة تطبيقات Python سهلة الاستخدام لتبسيط العملية.
توضح الأمثلة التالية كيفية استخدام النماذج YOLO-NAS مع ultralytics
حزمة للاستدلال والتحقق من الصحة:
أمثلة على الاستدلال والتحقق من الصحة
في هذا المثال نتحقق من صحة YOLO-NAS-s على مجموعة بيانات COCO8.
مثال على ذلك
يوفر هذا المثال رمزًا بسيطًا للاستدلال والتحقق من صحة YOLO-NAS. للتعامل مع نتائج الاستدلال انظر التنبؤ الوضع. لاستخدام YOLO-NAS مع أوضاع إضافية انظر فال و التصدير. YOLO-NAS على ultralytics
الحزمة لا تدعم التدريب.
PyTorch ما قبل التدريب *.pt
يمكن تمرير ملفات النماذج إلى NAS()
لإنشاء مثيل للنموذج في python:
from ultralytics import NAS
# Load a COCO-pretrained YOLO-NAS-s model
model = NAS("yolo_nas_s.pt")
# Display model information (optional)
model.info()
# Validate the model on the COCO8 example dataset
results = model.val(data="coco8.yaml")
# Run inference with the YOLO-NAS-s model on the 'bus.jpg' image
results = model("path/to/bus.jpg")
CLI الأوامر متاحة لتشغيل النماذج مباشرةً:
المهام والأوضاع المدعومة
نقدم ثلاثة أنواع مختلفة من طرازات YOLO-NAS: صغير (s) ومتوسط (m) وكبير (l). تم تصميم كل متغير لتلبية الاحتياجات الحسابية واحتياجات الأداء المختلفة:
- YOLO-NAS-s: مُحسّن للبيئات التي تكون فيها الموارد الحاسوبية محدودة ولكن الكفاءة هي المفتاح.
- YOLO-NAS-m: يوفر نهجًا متوازنًا ومناسبًا لاكتشاف الأجسام للأغراض العامة بدقة أعلى.
- YOLO-NAS-l: مصممة خصيصًا للسيناريوهات التي تتطلب أعلى دقة، حيث تكون الموارد الحاسوبية أقل تقييدًا.
فيما يلي نظرة عامة مفصّلة عن كل نموذج، بما في ذلك روابط لأوزانها المدرّبة مسبقًا، والمهام التي تدعمها، وتوافقها مع أوضاع التشغيل المختلفة.
نوع الموديل | الأوزان المدربة مسبقاً | المهام المدعومة | الاستدلال | التحقق من الصحة | التدريب | التصدير |
---|---|---|---|---|---|---|
YOLO-NAS-s | yolo_nas_s.pt | اكتشاف الكائن | ✅ | ✅ | ❌ | ✅ |
YOLO-NAS-m | yolo_nas_m.pt | اكتشاف الكائن | ✅ | ✅ | ❌ | ✅ |
YOLO-NAS-l | yolo_nas_l.pt | اكتشاف الكائن | ✅ | ✅ | ❌ | ✅ |
الاستشهادات والشكر والتقدير
إذا كنت تستخدم YOLO-NAS في أعمال البحث أو التطوير الخاصة بك، يُرجى الاستشهاد بـ SuperGradients:
@misc{supergradients,
doi = {10.5281/ZENODO.7789328},
url = {https://zenodo.org/record/7789328},
author = {Aharon, Shay and {Louis-Dupont} and {Ofri Masad} and Yurkova, Kate and {Lotem Fridman} and {Lkdci} and Khvedchenya, Eugene and Rubin, Ran and Bagrov, Natan and Tymchenko, Borys and Keren, Tomer and Zhilko, Alexander and {Eran-Deci}},
title = {Super-Gradients},
publisher = {GitHub},
journal = {GitHub repository},
year = {2021},
}
ونعرب عن امتناننا لفريق Deci AI' SuperGradients ' لجهودهم في إنشاء هذا المورد القيّم لمجتمع الرؤية الحاسوبية والحفاظ عليه. نحن نعتقد أن YOLO-NAS، بهيكله المبتكر وقدراته الفائقة في اكتشاف الأجسام، سيصبح أداة مهمة للمطورين والباحثين على حد سواء.
الأسئلة الشائعة
ما هو YOLO-NAS وكيف يتحسن عن الطرازات السابقة YOLO ؟
YOLO-NAS، الذي تم تطويره من قبل Deci AI ، هو نموذج متطور للكشف عن الأجسام بالاستفادة من تقنية البحث المعماري العصبي (NAS) المتقدمة. وهو يعالج قيود النماذج السابقة YOLO من خلال إدخال ميزات مثل الكتل الأساسية الملائمة للتقدير الكمي ومخططات التدريب المتطورة. يؤدي ذلك إلى تحسينات كبيرة في الأداء، خاصةً في البيئات ذات الموارد الحاسوبية المحدودة. YOLO-يدعم نظام NAS أيضًا التكميم، ويحافظ على دقة عالية حتى عند تحويله إلى إصدار INT8، مما يعزز ملاءمته لبيئات الإنتاج. لمزيد من التفاصيل، راجع قسم نظرة عامة.
كيف يمكنني دمج نماذج YOLO-NAS في تطبيقي Python ؟
يمكنك بسهولة دمج النماذج YOLO-NAS في تطبيقك Python باستخدام ultralytics
الحزمة. فيما يلي مثال بسيط على كيفية تحميل نموذج YOLO-NAS مدرب مسبقًا وإجراء الاستدلال:
from ultralytics import NAS
# Load a COCO-pretrained YOLO-NAS-s model
model = NAS("yolo_nas_s.pt")
# Validate the model on the COCO8 example dataset
results = model.val(data="coco8.yaml")
# Run inference with the YOLO-NAS-s model on the 'bus.jpg' image
results = model("path/to/bus.jpg")
لمزيد من المعلومات، راجع أمثلة الاستدلال والتحقق من الصحة.
ما هي الميزات الرئيسية لنظام YOLO-NAS ولماذا يجب أن أفكر في استخدامه؟
YOLO-يقدم نظام NAS العديد من الميزات الرئيسية التي تجعله خيارًا متفوقًا لمهام اكتشاف الأجسام:
- كتلة أساسية ملائمة للتقدير الكمي: بنية محسّنة تعمل على تحسين أداء النموذج مع الحد الأدنى من انخفاض الدقة بعد التكميم.
- تدريب متطور وقياس كمي متطور: يستخدم مخططات تدريب متقدمة وتقنيات التكميم الكمي بعد التدريب.
- التحسين التلقائي لـ AutoNAC والتدريب المسبق: يستخدم خاصية التحسين التلقائي لـ AutoNAC ويتم تدريبه مسبقًا على مجموعات بيانات بارزة مثل COCO و Objects365 و Roboflow 100. تساهم هذه الميزات في دقته العالية وأدائه الفعال وملاءمته للنشر في بيئات الإنتاج. تعرف على المزيد في قسم الميزات الرئيسية.
ما هي المهام والأوضاع التي تدعمها نماذج YOLO-NAS؟
YOLO-تدعم نماذج NAS مختلف مهام وأنماط اكتشاف الكائنات مثل الاستدلال والتحقق من الصحة والتصدير. وهي لا تدعم التدريب. تشمل النماذج المدعومة YOLO-NAS-s، و YOLO-NAS-m، و YOLO-NAS-l، وكل منها مصمم خصيصًا لتلبية مختلف القدرات الحسابية واحتياجات الأداء. للحصول على نظرة عامة مفصلة، راجع قسم المهام والأنماط المدعومة.
هل تتوفر نماذج YOLO-NAS مدربة مسبقاً وكيف يمكنني الوصول إليها؟
نعم، يوفر الموقع الإلكتروني Ultralytics نماذج YOLO-NAS المدربة مسبقًا والتي يمكنك الوصول إليها مباشرةً. يتم تدريب هذه النماذج مسبقًا على مجموعات بيانات مثل COCO، مما يضمن أداءً عاليًا من حيث السرعة والدقة. يمكنك تنزيل هذه النماذج باستخدام الروابط المتوفرة في قسم النماذج المد ربة مسبقًا. إليك بعض الأمثلة: