بالنقر على "قبول جميع ملفات تعريف الارتباط"، فإنك توافق على تخزين ملفات تعريف الارتباط على جهازك لتحسين تصفح الموقع وتحليل استخدام الموقع والمساعدة في جهودنا التسويقية. المزيد من المعلومات
إعدادات ملفات تعريف الارتباط
بالنقر على "قبول جميع ملفات تعريف الارتباط"، فإنك توافق على تخزين ملفات تعريف الارتباط على جهازك لتحسين تصفح الموقع وتحليل استخدام الموقع والمساعدة في جهودنا التسويقية. المزيد من المعلومات
قم بتمكين تدريب نموذج Ultralytics YOLOv5 ونشره باستخدام Neural Magic's DeepSparse لأداء من فئة GPU على وحدات المعالجة المركزية. تحقيق عمليات نشر YOLOv5 بشكل أسرع وقابل للتطوير.
هل تريد تسريع تدريب ونشر نماذج YOLOv5 الخاصة بك؟ لقد قمنا بتغطيتك! نقدم لك أحدث شركائنا، Neural Magic. نظرًا لأن Neural Magic توفر أدوات برمجية تؤكد على ذروة أداء النموذج وبساطة سير العمل، فمن الطبيعي أن نجتمع معًا لتقديم حل لجعل عملية نشر YOLOv5 أفضل.
DeepSparse هو وقت تشغيل الاستدلال بوحدة المعالجة المركزية في Neural Magic، والذي يستفيد من التباعد والحسابات منخفضة الدقة داخل الشبكات العصبية لتقديم أداء استثنائي على الأجهزة السلعية. على سبيل المثال، بالمقارنة مع خط الأساس لوقت تشغيل ONNX، يوفر DeepSparse سرعة 5.8 مرة لـ YOLOv5s التي تعمل على نفس الجهاز!
لأول مرة، يمكن لأعباء عمل التعلُّم العميق الخاصة بك تلبية متطلبات الأداء الخاصة بالإنتاج دون تعقيدات وتكاليف مسرعات الأجهزة. ببساطة، يمنحك DeepSparse أداء وحدات معالجة الرسومات وبساطة البرامج:
عمليات نشر مرنة: تشغيل متسق عبر السحابة ومركز البيانات والحافة مع أي مزود أجهزة
قابلية التوسع اللانهائي: توسيع النطاق باستخدام Kubernetes القياسي، أو عمودياً إلى 100 نواة أو تجريدها بالكامل باستخدام خوادم بدون خادم
تكامل سهل: استخدم واجهات برمجة تطبيقات نظيفة لدمج نموذجك في تطبيق ما ومراقبته في الإنتاج
تحقيق أداء من فئة GPU على وحدات المعالجة المركزية السلعية
تستفيد DeepSparse من تباعد النماذج لزيادة سرعة أدائها.
يسمح التقليل من خلال التقليم والتكميم بتخفيض الحجم والحساب اللازمين لتنفيذ الشبكة مع الحفاظ على دقة عالية. إن عملية DeepSparse مدركة للتشتت، حيث تتخطى عمليات الضرب المضاعفة للصفر وتقلص مقدار الحوسبة في التمرير الأمامي. نظرًا لأن الحوسبة المتفرقة مرتبطة بالذاكرة، فإن DeepSparse ينفذ الشبكة بعمق، ويقسم المشكلة إلى أعمدة Tensor Columns، وهي عبارة عن خطوط عمودية من الحوسبة التي تتناسب مع ذاكرة التخزين المؤقت.
تسمح الشبكات المتفرقة ذات الحسابات المضغوطة التي يتم تنفيذها بعمق في ذاكرة التخزين المؤقت لـ DeepSparse بتقديم أداء من فئة GPU على وحدات المعالجة المركزية!
إنشاء إصدار متناثر من YOLOv5 مدرب على بيانات مخصصة
يحتوي مستودع نماذج Neural Magic المفتوح المصدر، SparseZoo، على نقاط تدقيق مُحللة مسبقًا لكل نموذج من نماذج YOLOv5. وباستخدام SparseML، المدمج مع Ultralytics، يمكنك ضبط نقطة تدقيق متناثرة على بياناتك باستخدام أمر CLI واحد.
نشر YOLOv5 مع DeepSparse
تثبيت DeepSparse
قم بتشغيل ما يلي لتثبيت DeepSparse. نوصي باستخدام بيئة افتراضية مع Python.
pip install deepsparse [server,yolo,onnxruntime]
جمع ملف ONNX
يقبل DeepSparse نموذجًا بصيغة ONNX، ويتم تمريره إما بصيغة
مسار محلي لنموذج ONNX
كعب SparseZoo الذي يحدد نموذجًا في SparseZoo
سوف نقارن بين YOLOv5s الكثيفة القياسية الكثيفة و YOLOv5s المشذبة والمختصرة والمحددة بواسطة بذرة SparseZoo التالية:
تعمل خطوط الأنابيب على التفاف المعالجة المسبقة والمعالجة اللاحقة للإخراج حول وقت التشغيل، مما يوفر واجهة نظيفة لإضافة DeepSparse إلى تطبيق ما. يشتمل تكامل DeepSparse-Ultralytics على خط أنابيب خارج الصندوق يقبل الصور الخام ويخرج المربعات المحدودة.
إنشاء خط أنابيب وتشغيل الاستدلال:
من deepsparse استيراد خط الأنابيب
# قائمة الصور في نظام الملفات المحلي الصور = ["basilica.jpg"]
# إنشاء خط أنابيب model_stub = "zoo:cv/detection/yolov5-s/pytorch/pytorch/ultralytics/coco/pruned65_quant-none" yolo_pipeline = Pipeline.create( مهمة="yolo"، model_path=model_stub, )
إذا كنت تعمل في السحابة، فقد يظهر لك خطأً مفاده أن open-cv لا يمكنه العثور على libGL.so.1. يؤدي تشغيل ما يلي على Ubuntu إلى تثبيته:
apt-get install libgl1-mesa-glx
خادم HTTP
يتم تشغيل DeepSparse Server على رأس إطار عمل الويب FastAPI الشهير وخادم الويب Uvicorn. باستخدام أمر CLI واحد فقط، يمكنك بسهولة إعداد نقطة نهاية خدمة نموذجية باستخدام DeepSparse. يدعم الخادم أي خط أنابيب من DeepSparse، بما في ذلك اكتشاف الكائنات باستخدام YOLOv5، مما يتيح لك إرسال الصور الخام إلى نقطة النهاية واستلام المربعات المحدودة.
قم بتدوير الخادم باستخدام YOLOv5s YOLOv5s المشذبة والمقلّمة:
في Ultralytics، نعقد شراكات تجارية مع شركات ناشئة أخرى لمساعدتنا في تمويل البحث والتطوير لأدواتنا الرائعة مفتوحة المصدر، مثل YOLOv5، لإبقائها مجانية للجميع. قد تحتوي هذه المقالة على روابط تابعة لهؤلاء الشركاء.