انتقل إلى المحتوى

تحسين YOLOv8 الاستدلالات مع Neural Magicمحرك ديب سباترس

عند نشر نماذج اكتشاف الكائنات مثل Ultralytics YOLOv8 على أجهزة مختلفة، يمكنك أن تصطدم بمشكلات فريدة مثل التحسين. وهنا يأتي دور تكامل YOLOv8 مع محرك DeepSparse Engine Neural Magic. فهو يحوّل الطريقة التي يتم بها تنفيذ نماذج YOLOv8 ويتيح أداءً على مستوى GPU مباشرةً على وحدات المعالجة المركزية.

يوضح لك هذا الدليل كيفية النشر YOLOv8 استخدام Neural MagicDeepSparse ، وكيفية تشغيل الاستدلالات ، وكذلك كيفية قياس الأداء لضمان تحسينه.

Neural Magicديب سبارس

Neural Magicنظرة عامة على DeepSparse

Neural MagicDeepSparse هو وقت تشغيل استدلالي مصمم لتحسين تنفيذ الشبكات العصبية على وحدات المعالجة المركزية. وهو يطبق تقنيات متقدمة مثل التباعد والتشذيب والتكميم لتقليل المتطلبات الحسابية بشكل كبير مع الحفاظ على الدقة. يوفر DeepSparse حلاً رشيقًا لتنفيذ الشبكات العصبية بكفاءة وقابلية للتطوير عبر مختلف الأجهزة.

فوائد الدمج Neural Magicديب سبارس مع YOLOv8

قبل الغوص في كيفية النشر YOLOV8 باستخدام DeepSparse ، دعنا نفهم فوائد استخدام DeepSparse. تشمل بعض المزايا الرئيسية ما يلي:

  • سرعة الاستدلال المحسنة: تحقق ما يصل إلى 525 إطارا في الثانية (تشغيل YOLOv8n) ، تسريع كبير YOLOv8قدرات الاستدلال مقارنة بالطرق التقليدية.

سرعة الاستدلال المحسنة

  • كفاءة النموذج المحسنة: يستخدم التقليم والتكميم لتحسين YOLOv8، وتقليل حجم النموذج والمتطلبات الحسابية مع الحفاظ على الدقة.

كفاءة النموذج الأمثل

  • أداء عالٍ على وحدات المعالجة المركزية القياسية: يوفر أداءً يشبه GPU على وحدات المعالجة المركزية، مما يوفر خيارًا أكثر سهولة وفعالية من حيث التكلفة لمختلف التطبيقات.

  • تكامل ونشر مبسط: يوفر أدوات سهلة الاستخدام لسهولة تكامل YOLOv8 في التطبيقات ، بما في ذلك ميزات التعليقات التوضيحية للصور والفيديو.

  • دعم لأنواع النماذج المختلفة: متوافق مع كل من المعايير والأمثل YOLOv8 النماذج، مضيفا مرونة النشر.

  • حل فعال من حيث التكلفة وقابل للتطوير: يقلل من النفقات التشغيلية ويوفر نشرا قابلا للتطوير لنماذج متقدمة للكشف عن الكائنات.

كيف Neural Magicتعمل تقنية DeepSparse؟

Neural Magicتقنية Deep Sparse مستوحاة من كفاءة الدماغ البشري في حساب الشبكة العصبية. يعتمد مبدأين رئيسيين من الدماغ على النحو التالي:

  • التناثر: تتضمن عملية التناثر تقليم المعلومات الزائدة عن الحاجة من شبكات التعلم العميق ، مما يؤدي إلى نماذج أصغر وأسرع دون المساس بالدقة. تقلل هذه التقنية من حجم الشبكة والاحتياجات الحسابية بشكل كبير.

  • المحلية المرجعية: يستخدم DeepSparse طريقة تنفيذ فريدة من نوعها، حيث يتم تقسيم الشبكة إلى Tensor عمود. يتم تنفيذ هذه الأعمدة على أساس العمق، بحيث تتناسب تمامًا مع ذاكرة التخزين المؤقت CPU. يحاكي هذا النهج كفاءة الدماغ، مما يقلل من حركة البيانات ويزيد من استخدام ذاكرة التخزين المؤقت CPU'مخبأ التخزين المؤقت.

كيف Neural Magicتعمل تقنية DeepSparse

لمزيد من التفاصيل حول كيفية القيام بذلك Neural Magicفي عمل تقنية DeepSparse ، تحقق من منشور المدونة الخاص بهم.

إنشاء نسخة متفرقة من YOLOv8 تم تدريبهم على مجموعة بيانات مخصصة

SparseZoo ، مستودع نموذج مفتوح المصدر بواسطة Neural Magicالعروض مجموعة من المتناثرة مسبقا YOLOv8 نقاط التفتيش النموذجية. مع SparseML ، متكامل بسلاسة مع Ultralytics، يمكن للمستخدمين ضبط نقاط التفتيش المتفرقة هذه دون عناء على مجموعات البيانات المحددة الخاصة بهم باستخدام واجهة سطر أوامر مباشرة.

الخروج Neural Magic's SparseML YOLOv8 وثائق لمزيد من التفاصيل.

إستعمال: النشر YOLOV8 باستخدام ديب سبارس

نشر YOLOv8 مع Neural Magicيتضمن DeepSparse بضع خطوات مباشرة. قبل الغوص في تعليمات الاستخدام ، تأكد من إطلاعك على نطاق YOLOv8 النماذج التي تقدمها Ultralytics. سيساعدك هذا في اختيار النموذج الأنسب لمتطلبات مشروعك. إليك كيف يمكنك البدء.

الخطوة 1: التثبيت

لتثبيت الحزم المطلوبة ، قم بتشغيل:

تركيب

# Install the required packages
pip install deepsparse[yolov8]

الخطوة 2: التصدير YOLOv8 ل ONNX تنسيق

يتطلب محرك ديب سباترس YOLOv8 نماذج في ONNX تنسيق. يعد تصدير النموذج الخاص بك إلى هذا التنسيق أمرا ضروريا للتوافق مع DeepSparse. استخدم الأمر التالي للتصدير YOLOv8 نماذج:

تصدير النموذج

# Export YOLOv8 model to ONNX format
yolo task=detect mode=export model=yolov8n.pt format=onnx opset=13

سيحفظ هذا الأمر ملف yolov8n.onnx نموذج للقرص الخاص بك.

الخطوة 3: نشر الاستدلالات وتشغيلها

مع الخاص بك YOLOv8 نموذج في ONNX ، يمكنك نشر الاستدلالات وتشغيلها باستخدام DeepSparse. يمكن القيام بذلك بسهولة من خلال حدسها Python واجهة برمجة التطبيقات:

نشر الاستدلالات وتشغيلها

from deepsparse import Pipeline

# Specify the path to your YOLOv8 ONNX model
model_path = "path/to/yolov8n.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: قياس الأداء

من المهم التحقق من أن YOLOv8 النموذج يعمل على النحو الأمثل على DeepSparse. يمكنك قياس أداء النموذج الخاص بك لتحليل الإنتاجية وزمن الوصول:

قياس

# Benchmark performance
deepsparse.benchmark model_path="path/to/yolov8n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"

الخطوة 5: ميزات إضافية

يوفر DeepSparse ميزات إضافية للتكامل العملي ل YOLOv8 في التطبيقات، مثل التعليقات التوضيحية للصور وتقييم مجموعة البيانات.

ميزات إضافية

# For image annotation
deepsparse.yolov8.annotate --source "path/to/image.jpg" --model_filepath "path/to/yolov8n.onnx"

# For evaluating model performance on a dataset
deepsparse.yolov8.eval --model_path "path/to/yolov8n.onnx"

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

ميزة التعليق التوضيحي للصورة

بعد تشغيل الأمر eval ، ستتلقى مقاييس إخراج مفصلة مثل الدقة والاستدعاء و mAP (متوسط الدقة). يوفر هذا عرضا شاملا لأداء النموذج الخاص بك على مجموعة البيانات. هذه الوظيفة مفيدة بشكل خاص لضبط وتحسين YOLOv8 نماذج لحالات استخدام محددة ، مما يضمن دقة وكفاءة عالية.

ملخص

استكشف هذا الدليل تكامل Ultralytics' YOLOv8 مع محرك DeepSparse Neural Magic. وسلط الضوء على كيفية تعزيز هذا التكامل لأداء YOLOv8 على منصات CPU ، مما يوفر كفاءة على مستوى GPU وتقنيات متقدمة لتشتت الشبكات العصبية.

للمزيد من المعلومات التفصيلية والاستخدام المتقدم، قم بزيارة وثائق DeepSparseNeural Magic'DeepSparse. يمكنك أيضًا الاطلاع على وثائق Neural Magic حول التكامل مع YOLOv8 هنا ومشاهدة جلسة رائعة حول هذا الموضوع هنا.

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

الأسئلة المتداولة

ما هو محرك Neural Magic'DeepSparse Engine وكيف يعمل على تحسين أداء YOLOv8 ؟

Neural Magicمحرك DeepSparse Engine هو وقت تشغيل استدلالي مصمم لتحسين تنفيذ الشبكات العصبية على وحدات المعالجة المركزية من خلال تقنيات متقدمة مثل التباعد، والتشذيب، والتكميم. من خلال دمج DeepSparse مع YOLOv8 ، يمكنك تحقيق أداء يشبه أداء GPU على وحدات المعالجة المركزية القياسية، مما يعزز بشكل كبير سرعة الاستدلال وكفاءة النموذج والأداء العام مع الحفاظ على الدقة. لمزيد من التفاصيل، راجع قسم DeepSparse على الموقع الإلكتروني Neural Magic.

كيف يمكنني تثبيت الحزم اللازمة للنشر YOLOv8 باستخدام Neural Magic'DeepSparse' ؟

إن تثبيت الحزم المطلوبة لنشر YOLOv8 مع Neural Magic'DeepSparse' أمر بسيط ومباشر. يمكنك تثبيتها بسهولة باستخدام CLI. إليك الأمر الذي تحتاج إلى تشغيله:

pip install deepsparse[yolov8]

بمجرد التثبيت، اتبع الخطوات الواردة في قسم التثبيت لإعداد بيئتك والبدء في استخدام DeepSparse مع YOLOv8.

كيف يمكنني تحويل نماذج YOLOv8 إلى تنسيق ONNX لاستخدامها مع DeepSparse؟

لتحويل النماذج YOLOv8 إلى التنسيق ONNX ، وهو أمر مطلوب للتوافق مع DeepSparse، يمكنك استخدام الأمر التالي CLI :

yolo task=detect mode=export model=yolov8n.pt format=onnx opset=13

سيصدر هذا الأمر نموذج YOLOv8 الخاص بك (yolov8n.pt) إلى تنسيق (yolov8n.onnx) التي يمكن أن يستخدمها محرك DeepSparse. يمكن العثور على مزيد من المعلومات حول تصدير النماذج في قسم تصدير النماذج.

كيف يمكنني قياس أداء YOLOv8 على محرك DeepSparse؟

يساعدك قياس الأداء YOLOv8 على DeepSparse على تحليل الإنتاجية وزمن الاستجابة لضمان تحسين نموذجك. يمكنك استخدام الأمر التالي CLI لتشغيل معيار قياسي:

deepsparse.benchmark model_path="path/to/yolov8n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"

سيوفر لك هذا الأمر مقاييس الأداء الحيوية. لمزيد من التفاصيل، راجع قسم قياس الأداء المعياري.

لماذا يجب استخدام Neural Magic'DeepSparse مع YOLOv8 لمهام الكشف عن الكائنات؟

يوفر دمج Neural Magic'DeepSparse الخاص بـ مع YOLOv8 العديد من الفوائد:

  • سرعة استدلال محسّنة: يحقق ما يصل إلى 525 إطاراً في الثانية، مما يزيد من سرعة قدرات YOLOv8 بشكل كبير.
  • كفاءة النموذج الأمثل: يستخدم تقنيات التباعد والتشذيب والتكميم لتقليل حجم النموذج والاحتياجات الحسابية مع الحفاظ على الدقة.
  • أداء عالٍ على وحدات المعالجة المركزية القياسية: يوفر أداءً يشبه أداء GPU على أجهزة CPU فعالة من حيث التكلفة.
  • تكامل مبسط: أدوات سهلة الاستخدام لسهولة النشر والتكامل.
  • المرونة: يدعم كلاً من الطرازين القياسي والمحسّن للتشتت YOLOv8 .
  • فعالة من حيث التكلفة: يقلل من النفقات التشغيلية من خلال الاستخدام الفعال للموارد.

لمزيد من التعمق في هذه المزايا، يرجى زيارة قسم فوائد دمج Neural Magic'DeepSparse مع YOLOv8 .



تم الإنشاء 2023-12-30، تم التحديث 2024-07-05
المؤلفون: جلين-جوتشر (7)، أبيرامي فينا (1)

التعليقات