تحسين استدلالات YOLO11 باستخدام محرك DeepSparse من Neural Magic
عند نشر نماذج الكشف عن الأجسام مثل Ultralytics YOLO11 على أجهزة متنوعة، قد تواجه مشكلات فريدة مثل التحسين. وهنا يأتي دور تكامل YOLO11 مع محرك DeepSparse من Neural Magic. فهو يغير طريقة تنفيذ نماذج YOLO11 ويتيح أداءً يضاهي وحدة معالجة الرسوميات (GPU) مباشرةً على وحدات المعالجة المركزية (CPUs).
يوضح لك هذا الدليل كيفية نشر YOLO11 باستخدام DeepSparse من Neural Magic، وكيفية تشغيل الاستدلالات، وكذلك كيفية قياس الأداء لضمان تحسينه.
SparseML نهاية العمر الافتراضي
Neural Magic كانت استحوذت عليها Red Hat في يناير 2025، وتتجاهل الإصدارات المجتمعية من deepsparse
, sparseml
, sparsezoo
، و sparsify
المكتبات. لمزيد من المعلومات، راجع الإشعار المنشور في ملف Readme الموجود على sparseml
مستودع GitHub.
DeepSparse من Neural Magic
DeepSparse من Neural Magic هو وقت تشغيل للاستدلال مصمم لتحسين تنفيذ الشبكات العصبية على وحدات المعالجة المركزية (CPUs). يطبق تقنيات متقدمة مثل التفرقة والتقليم والتكميم لتقليل المتطلبات الحسابية بشكل كبير مع الحفاظ على الدقة. يقدم DeepSparse حلاً مرنًا لتنفيذ الشبكات العصبية بكفاءة وقابلية للتوسع عبر الأجهزة المختلفة.
فوائد دمج DeepSparse من Neural Magic مع YOLO11
قبل الخوض في كيفية نشر YOLO11 باستخدام DeepSparse، دعونا نفهم فوائد استخدام DeepSparse. تتضمن بعض المزايا الرئيسية ما يلي:
- سرعة استدلال محسنة: يحقق ما يصل إلى 525 إطارًا في الثانية (FPS) (على YOLO11n)، مما يسرع بشكل كبير قدرات استدلال YOLO11 مقارنة بالطرق التقليدية.
- كفاءة نموذج مُحسَّنة: يستخدم التقليم والتكميم لتحسين كفاءة YOLO11، وتقليل حجم النموذج والمتطلبات الحسابية مع الحفاظ على الدقة.
-
أداء عالٍ على وحدات المعالجة المركزية (CPUs) القياسية: يوفر أداءً يضاهي وحدة معالجة الرسوميات (GPU) على وحدات المعالجة المركزية (CPUs)، مما يوفر خيارًا أكثر سهولة وفعالية من حيث التكلفة لمختلف التطبيقات.
-
تكامل ونشر مبسط: يقدم أدوات سهلة الاستخدام لتكامل YOLO11 بسهولة في التطبيقات، بما في ذلك ميزات ترميز الصور والفيديو.
-
دعم أنواع النماذج المختلفة: متوافق مع نماذج YOLO11 القياسية والمحسّنة للتفرقة، مما يضيف مرونة في النشر.
-
حل فعال من حيث التكلفة وقابل للتطوير: يقلل النفقات التشغيلية ويوفر نشرًا قابلاً للتطوير لنماذج الكشف عن الأجسام المتقدمة.
كيف تعمل تقنية DeepSparse من Neural Magic؟
تستوحي تقنية Deep Sparse من Neural Magic كفاءة الدماغ البشري في حساب الشبكات العصبية. وتتبنى مبدأين أساسيين من الدماغ على النحو التالي:
-
التخفيف (Sparsity): تتضمن عملية التخفيف إزالة المعلومات الزائدة من شبكات التعلم العميق، مما يؤدي إلى نماذج أصغر وأسرع دون المساس بالدقة. تقلل هذه التقنية بشكل كبير من حجم الشبكة واحتياجاتها الحسابية.
-
مبدأ المرجعية الموضعية (Locality of Reference): يستخدم DeepSparse طريقة تنفيذ فريدة، حيث يقسم الشبكة إلى أعمدة Tensor. يتم تنفيذ هذه الأعمدة بعمق، وتناسب تمامًا ذاكرة التخزين المؤقت لوحدة المعالجة المركزية (CPU). يحاكي هذا النهج كفاءة الدماغ، ويقلل من حركة البيانات ويزيد من استخدام ذاكرة التخزين المؤقت لوحدة المعالجة المركزية (CPU).
لمزيد من التفاصيل حول كيفية عمل تقنية DeepSparse من Neural Magic، تحقق من منشور المدونة الخاص بهم.
إنشاء نسخة متفرقة من YOLO11 تم تدريبها على مجموعة بيانات مخصصة
SparseZoo، وهو مستودع نماذج مفتوح المصدر من Neural Magic، يقدم مجموعة من نقاط فحص نموذج YOLO11 المجهزة مسبقًا. باستخدام SparseML، المدمج بسلاسة مع Ultralytics، يمكن للمستخدمين بسهولة ضبط نقاط الفحص المتفرقة هذه على مجموعات البيانات الخاصة بهم باستخدام واجهة سطر أوامر مباشرة.
راجع وثائق SparseML YOLO11 من Neural Magic لمزيد من التفاصيل.
الاستخدام: نشر YOLO11 باستخدام DeepSparse
يتضمن نشر YOLO11 باستخدام DeepSparse من Neural Magic بضع خطوات مباشرة. قبل الخوض في إرشادات الاستخدام، تأكد من التحقق من مجموعة نماذج YOLO11 التي تقدمها Ultralytics. سيساعدك هذا في اختيار النموذج الأنسب لمتطلبات مشروعك. إليك كيف يمكنك البدء.
الخطوة 1: التثبيت
لتثبيت الحزم المطلوبة، قم بتشغيل:
التثبيت
# Install the required packages
pip install deepsparse[yolov8]
الخطوة 2: تصدير YOLO11 إلى تنسيق ONNX
يتطلب محرك DeepSparse نماذج YOLO11 بتنسيق ONNX. يُعد تصدير النموذج الخاص بك بهذا التنسيق أمرًا ضروريًا للتوافق مع DeepSparse. استخدم الأمر التالي لتصدير نماذج YOLO11:
تصدير النموذج
# Export YOLO11 model to ONNX format
yolo task=detect mode=export model=yolo11n.pt format=onnx opset=13
سيحفظ هذا الأمر yolo11n.onnx
النموذج على القرص الخاص بك.
الخطوة 3: نشر وتشغيل الاستدلالات
باستخدام نموذج YOLO11 الخاص بك بتنسيق ONNX، يمكنك نشر وتشغيل الاستدلالات باستخدام DeepSparse. يمكن القيام بذلك بسهولة باستخدام واجهة Python API البديهية الخاصة بهم:
نشر وتشغيل الاستدلالات
from deepsparse import Pipeline
# Specify the path to your YOLO11 ONNX model
model_path = "path/to/yolo11n.onnx"
# Set up the DeepSparse Pipeline
yolo_pipeline = Pipeline.create(task="yolov8", model_path=model_path)
# Run the model on your images
images = ["path/to/image.jpg"]
pipeline_outputs = yolo_pipeline(images=images)
الخطوة 4: قياس الأداء
من المهم التحقق من أن نموذج YOLO11 الخاص بك يعمل على النحو الأمثل على DeepSparse. يمكنك قياس أداء النموذج الخاص بك لتحليل الإنتاجية والكمون:
قياس الأداء
# Benchmark performance
deepsparse.benchmark model_path="path/to/yolo11n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"
الخطوة 5: ميزات إضافية
يوفر DeepSparse ميزات إضافية للتكامل العملي لـ YOLO11 في التطبيقات، مثل إضافة التعليقات التوضيحية إلى الصور وتقييم مجموعة البيانات.
ميزات إضافية
# For image annotation
deepsparse.yolov8.annotate --source "path/to/image.jpg" --model_filepath "path/to/yolo11n.onnx"
# For evaluating model performance on a dataset
deepsparse.yolov8.eval --model_path "path/to/yolo11n.onnx"
يؤدي تشغيل أمر annotate إلى معالجة الصورة المحددة، واكتشاف الكائنات، وحفظ الصورة المشروحة مع مربعات الإحاطة والتصنيفات. سيتم تخزين الصورة المشروحة في مجلد annotation-results. يساعد هذا في توفير تمثيل مرئي لقدرات اكتشاف النموذج.
بعد تشغيل أمر التقييم، ستتلقى مقاييس إخراج مفصلة مثل الدقة، و الاسترجاع، و mAP (متوسط الدقة المتوسطة). يوفر هذا عرضًا شاملاً لأداء النموذج الخاص بك على مجموعة البيانات. هذه الوظيفة مفيدة بشكل خاص لضبط نماذج YOLO11 وتحسينها لحالات استخدام محددة، مما يضمن دقة وكفاءة عالية.
ملخص
استكشف هذا الدليل تكامل YOLO11 من Ultralytics مع DeepSparse Engine من Neural Magic. وسلط الضوء على كيف يعزز هذا التكامل أداء YOLO11 على منصات CPU، مما يوفر كفاءة على مستوى GPU وتقنيات تخفيف الشبكة العصبية المتقدمة.
لمزيد من المعلومات التفصيلية والاستخدام المتقدم، قم بزيارة وثائق DeepSparse بواسطة Neural Magic. يمكنك أيضًا استكشاف دليل تكامل YOLO11 و مشاهدة جلسة إرشادية على YouTube.
بالإضافة إلى ذلك، لفهم أوسع لتكاملات YOLO11 المختلفة، قم بزيارة صفحة دليل تكامل Ultralytics، حيث يمكنك اكتشاف مجموعة من إمكانيات التكامل الأخرى المثيرة.
الأسئلة الشائعة
ما هو محرك DeepSparse من Neural Magic وكيف يحسن أداء YOLO11؟
DeepSparse Engine من Neural Magic هو وقت تشغيل للاستدلال مصمم لتحسين تنفيذ الشبكات العصبية على وحدات المعالجة المركزية (CPUs) من خلال التقنيات المتقدمة مثل التخفيف والتقليم والتكميم. من خلال دمج DeepSparse مع YOLO11، يمكنك تحقيق أداء يشبه أداء وحدة معالجة الرسومات (GPU) على وحدات المعالجة المركزية (CPUs) القياسية، مما يعزز بشكل كبير سرعة الاستدلال وكفاءة النموذج والأداء العام مع الحفاظ على الدقة. لمزيد من التفاصيل، تحقق من قسم DeepSparse الخاص بـ Neural Magic.
كيف يمكنني تثبيت الحزم اللازمة لنشر YOLO11 باستخدام DeepSparse من Neural Magic؟
يعد تثبيت الحزم المطلوبة لنشر YOLO11 باستخدام DeepSparse من Neural Magic أمرًا مباشرًا. يمكنك بسهولة تثبيتها باستخدام CLI. إليك الأمر الذي تحتاج إلى تشغيله:
pip install deepsparse[yolov8]
بمجرد التثبيت، اتبع الخطوات الواردة في قسم التثبيت لإعداد بيئتك والبدء في استخدام DeepSparse مع YOLO11.
كيف يمكنني تحويل نماذج YOLO11 إلى تنسيق ONNX لاستخدامها مع DeepSparse؟
لتحويل نماذج YOLO11 إلى تنسيق ONNX، المطلوب للتوافق مع DeepSparse، يمكنك استخدام أمر CLI التالي:
yolo task=detect mode=export model=yolo11n.pt format=onnx opset=13
سيقوم هذا الأمر بتصدير نموذج YOLO11 الخاص بك (yolo11n.pt
) إلى تنسيق (yolo11n.onnx
) يمكن استخدامه بواسطة محرك DeepSparse. يمكن العثور على مزيد من المعلومات حول تصدير النموذج في قسم تصدير النموذج.
كيف يمكنني قياس أداء YOLO11 على محرك DeepSparse؟
يساعد قياس أداء YOLO11 على DeepSparse في تحليل الإنتاجية والكمون لضمان تحسين النموذج الخاص بك. يمكنك استخدام أمر CLI التالي لتشغيل قياس الأداء:
deepsparse.benchmark model_path="path/to/yolo11n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"
سيوفر لك هذا الأمر مقاييس أداء حيوية. لمزيد من التفاصيل، راجع قسم قياس الأداء.
لماذا يجب علي استخدام DeepSparse من Neural Magic مع YOLO11 لمهام الكشف عن الأجسام؟
يوفر دمج DeepSparse من Neural Magic مع YOLO11 العديد من المزايا:
- سرعة استدلال محسّنة: تحقق ما يصل إلى 525 إطارًا في الثانية (FPS)، مما يسرع بشكل كبير قدرات YOLO11.
- كفاءة نموذج مُحسَّنة: تستخدم تقنيات التخفيف والتقليم والقياس لتقليل حجم النموذج والاحتياجات الحسابية مع الحفاظ على الدقة.
- أداء عالٍ على وحدات المعالجة المركزية (CPUs) القياسية: يوفر أداءً مشابهاً لوحدة معالجة الرسومات (GPU) على أجهزة وحدة المعالجة المركزية (CPU) فعالة من حيث التكلفة.
- تكامل مبسط: أدوات سهلة الاستخدام لسهولة النشر والتكامل.
- مرونة: يدعم نماذج YOLO11 القياسية والمحسّنة للتخفيف.
- فعالية من حيث التكلفة: يقلل النفقات التشغيلية من خلال الاستخدام الفعال للموارد.
للحصول على نظرة أكثر تعمقًا حول هذه المزايا، قم بزيارة قسم مزايا دمج DeepSparse من Neural Magic مع YOLO11.