مسرد المصطلحات

TensorRT

قم بتحسين نماذج التعلم العميق باستخدام TensorRT للحصول على استدلال أسرع وفعال على وحدات معالجة الرسومات NVIDIA. تحقيق أداء في الوقت الفعلي مع YOLO وتطبيقات الذكاء الاصطناعي.

TensorRT عبارة عن مُحسِّن استدلالي عالي الأداء للتعلم العميق (DL) ومكتبة وقت تشغيل تم تطويرها بواسطة NVIDIA. وهي مصممة خصيصًا لزيادة إنتاجية الاستدلال إلى أقصى حد وتقليل زمن انتقال الاستدلال لتطبيقات التعلم العميق التي تعمل على وحدات معالجة الرسومات NVIDIA. يأخذ TensorRT نماذج الشبكات العصبية المدربة من أطر عمل مختلفة ويطبق العديد من التحسينات لإنشاء محرك وقت تشغيل مُحسَّن للغاية للنشر. تُعد هذه العملية ضرورية لنشر النماذج بكفاءة في بيئات الإنتاج، خاصةً عندما تكون السرعة والاستجابة أمرًا بالغ الأهمية.

الميزات والتحسينات الرئيسية

يحقق TensorRT تحسينات كبيرة في الأداء من خلال العديد من التقنيات المتطورة:

  • معايرة الدقة: يقلل من دقة النموذج من FP32 إلى دقة أقل مثل FP16 أو INT8(دقة مختلطة أو تكميم النموذج) مع الحد الأدنى من الخسارة في الدقة، مما يؤدي إلى حساب أسرع واستخدام أقل للذاكرة.
  • دمج الطبقات والمكثفات: يجمع بين عدة طبقات أو عمليات متعددة في نواة واحدة(دمج الطبقات)، مما يقلل من استخدام النطاق الترددي للذاكرة ونفقات تشغيل النواة.
  • الضبط التلقائي للنواة: يختار أفضل خوارزميات (نواة) تم تنفيذها مسبقًا (نواة) لبنية وحدة معالجة الرسومات NVIDIA المستهدفة، مما يضمن الأداء الأمثل للأجهزة المحددة.
  • ذاكرة الموتر الديناميكية: يقلل من بصمة الذاكرة عن طريق إعادة استخدام الذاكرة المخصصة للمُغازِلات التي لا يتداخل عمرها الافتراضي.
  • تنفيذ متعدد التدفقات: تمكين المعالجة المتوازية لتدفقات الإدخال المتعددة.

كيف يعمل TensorRT

يتضمن سير العمل عادةً أخذ نموذج مُدرَّب (على سبيل المثال، من PyTorch أو TensorFlow، غالبًا عبر تنسيق وسيط مثل ONNX) وإدخاله في مُحسِّن TensorRT. يقوم TensorRT بتحليل النموذج، وينفذ تحسينات الرسم البياني والتحسينات الخاصة بالهدف بناءً على الدقة المحددة ووحدة معالجة الرسومات المستهدفة، وأخيراً يولد خطة استدلال محسّنة تُعرف باسم محرك TensorRT. يمكن بعد ذلك نشر ملف المحرك هذا للاستدلال السريع.

الملاءمة في الذكاء الاصطناعي والتعلم الآلي

يعتبر TensorRT وثيق الصلة بمرحلة نشر النماذج في دورة حياة التعلم الآلي. إن قدرتها على تسريع الاستدلال بشكل كبير تجعلها لا غنى عنها للتطبيقات التي تتطلب الاستدلال في الوقت الحقيقي، مثل اكتشاف الكائنات باستخدام نماذج مثل Ultralytics YOLO، وتجزئة الصور، ومعالجة اللغة الطبيعية. إنه مكون رئيسي في حزمة برمجيات NVIDIA، إلى جانب أدوات مثل CUDA، مما يتيح للمطورين الاستفادة من الإمكانات الكاملة لأجهزة NVIDIA، بدءًا من وحدات معالجة الرسومات القوية في مركز البيانات إلى وحدات NVIDIA Jetson الموفرة للطاقة للذكاء الاصطناعي Edge. يوفر Ultralytics تكاملاً سلسًا، مما يسمح للمستخدمين بتصدير نماذج YOLO إلى تنسيق TensorRT للنشر الأمثل، وغالبًا ما يتم استخدامه مع منصات مثل Triton Inference Server.

التطبيقات الواقعية

يُستخدَم TensorRT على نطاق واسع في مختلف الصناعات التي تحتاج إلى استدلال سريع وفعال للذكاء الاصطناعي:

  1. المركبات ذاتية القيادة: في السيارات ذاتية القيادة(الذكاء الاصطناعي في السيارات)، تعمل TensorRT على تحسين نماذج الإدراك (مثل اكتشاف الأجسام وتجزئة المسارات) التي تعمل على منصات NVIDIA DRIVE المدمجة، مما يضمن اتخاذ القرارات في الوقت الفعلي وهو أمر بالغ الأهمية للسلامة. يمكن تحسين نماذج مثل RTDETR باستخدام TensorRT لنشرها في مثل هذه الأنظمة(مقارنة بين RTDETRv2 و YOLOv5).
  2. تحليل الصور الطبية: تستخدم المستشفيات والمؤسسات البحثية TensorRT لتسريع الاستدلال على نماذج الذكاء الاصطناعي التي تحلل الفحوصات الطبية (التصوير المقطعي المحوسب والتصوير بالرنين المغناطيسي) لمهام مثل اكتشاف الأورام أو تحديد الشذوذ(الذكاء الاصطناعي في الرعاية الصحية)، مما يتيح تشخيصًا أسرع ودعم سير العمل السريري. غالبًا ما يكون هذا جزءًا من أنظمة رؤية الكمبيوتر (CV) الأكبر حجمًا.

TensorRT مقابل التقنيات ذات الصلة

بينما يركز TensorRT على تحسين الاستدلال خصيصًا لوحدات معالجة الرسومات NVIDIA، توجد أدوات أخرى في النظام البيئي:

  • أطر التعلم العميق (PyTorch و TensorFlow): تُستخدم هذه في المقام الأول لتدريب النماذج ولكنها توفر أيضًا قدرات استدلالية أساسية. يعمل TensorRT على تحسين النماذج المدربة في هذه الأطر للنشر.
  • وقت تشغيل ONNX: محرك استدلالي متعدد المنصات يدعم العديد من مسرعات الأجهزة، بما في ذلك وحدات معالجة الرسومات NVIDIA (غالبًا ما يستخدم TensorRT كمزود تنفيذ) ووحدات المعالجة المركزية وغيرها. يوفر توافقًا أوسع للأجهزة ولكنه قد لا يحقق نفس المستوى من التحسين على أجهزة NVIDIA مثل TensorRT مباشرةً.
  • Intel OpenVINO: مشابه ل TensorRT ولكنه مُحسَّن لأجهزة Intel (وحدات المعالجة المركزية ووحدات معالجة iGPU ووحدات معالجة البيانات الافتراضية الخاصة). يمكن أيضًا تصدير نماذج Ultralytics إلى تنسيق OpenVINO.

إن أهم ما يميز TensorRT هو تكامله العميق مع أجهزة NVIDIA واستراتيجيات التحسين القوية المصممة خصيصًا لوحدات معالجة الرسومات، وغالبًا ما ينتج عنها أعلى معايير الأداء (انظر معايير MLPerf) على منصات NVIDIA مقارنةً بأوقات تشغيل أكثر عمومية. يمكن تبسيط إدارة النماذج وعمليات النشر باستخدام منصات مثل Ultralytics HUB.

انضم إلى مجتمع Ultralytics

انضم إلى مستقبل الذكاء الاصطناعي. تواصل وتعاون ونمو مع المبتكرين العالميين

انضم الآن
تم نسخ الرابط إلى الحافظة