用語集

TensorRT

ディープラーニングモデルをTensorRT で最適化し、NVIDIA GPU 上でより高速で効率的な推論を実現。YOLO 、AIアプリケーションでリアルタイムのパフォーマンスを実現する。

Ultralytics HUB で
を使ってYOLO モデルをシンプルにトレーニングする。

さらに詳しく

TensorRT 、NVIDIAによって開発された高性能なディープラーニング推論オプティマイザとランタイムライブラリです。 NVIDIA.様々な最適化技術を適用することで、NVIDIA Graphics Processing Units (GPU)上の深層学習モデルを高速化する。TensorRT 主な目標は、実稼働環境に導入されるモデルに対して、可能な限り低い推論レイテンシと最高のスループットを達成することであり、リアルタイム推論アプリケーションにとって極めて重要なものとなっています。

TensorRT の仕組み

TensorRT 、多くの場合、次のようなフレームワークからエクスポートされた学習済みのニューラルネットワークを使用します。 PyTorchまたは TensorFlowそして、ターゲットとするNVIDIA GPUために特別に最適化します。主な最適化ステップは以下の通りです:

  • グラフの最適化:レイヤーを融合し、冗長な操作を排除して、より効率的な計算グラフを作成する。
  • 精度キャリブレーション:モデルウェイトの数値精度を(例えばFP32からFP16またはINT8へ精度への影響を最小限に抑え、計算を大幅に高速化し、メモリ使用量を削減します。
  • カーネルの自動チューニング: NVIDIAライブラリ(cuDNNcuBLAS)から、特定のモデルレイヤーとターゲットGPU最適な実装済みアルゴリズム(カーネル)を選択します。
  • 動的Tensor メモリ:テンソルに割り当てられたメモリを再利用することで、メモリフットプリントを最小化。

これらの最適化により、特定のモデルとハードウェアに合わせた非常に効率的な実行時推論エンジンが実現される。

Ultralytics関連性

TensorRT 、Ultralytics YOLO モデルの主要なデプロイメントターゲットです。ユーザーは、学習したUltralytics YOLO モデルを TensorRT フォーマットにエクスポートすることで、NVIDIA Jetsonのようなエッジデバイスを含むNVIDIA ハードウェア上で大幅なスピードアップを実現することができます。これにより、様々な分野での高性能アプリケーションが可能になります。YOLOv5 RT-DETR 比較などのモデル比較ページでは、TensorRT 最適化を使用して達成された推論速度がよく紹介されています。またUltralytics 、DeepStream onNVIDIA Jetsonガイドのように、NVIDIA プラットフォームと統合するためのガイドも提供しています。

実世界での応用

TensorRT 、NVIDIA ハードウェア上での高速かつ効率的な推論が重要な場面で広く使用されている:

  1. 自律走行車:自動運転車は、膨大な量のセンサーデータをリアルタイムで処理する必要があります。TensorRT 、物体検出、セグメンテーション、パスプランニングのモデルを高速化し、安全に不可欠な迅速な意思決定を可能にします。これは、車載ソリューションにおけるAIの中核をなす要素です。
  2. ビデオ分析とスマートシティ交通監視、群衆分析、セキュリティ監視などのタスクのために複数の高解像度ビデオストリームを処理するには、膨大な計算能力が必要です。TensorRT 、次のようなモデルを最適化します。 Ultralytics YOLOv8のようなモデルを最適化し、サーバやエッジデバイスでこれらの負荷の高い作業を効率的に処理することで、スマートシティ向けのAIソリューションを強化します。

TensorRT 類似用語の比較

  • ONNX Neural Network Exchange) ONNX 、ディープラーニングモデルを表現するためのオープンフォーマットです。TensorRT ONNX フォーマットからモデルをインポートすることができますが、ONNX 自体はハードウェアにとらわれないのに対し、TensorRT 特にNVIDIA GPU用のオプティマイザとランタイムです。Ultralytics モデルは ONNXエクスポートできる。
  • OpenVINO: TensorRT同様、OpenVINO 推論最適化ツールキットですが、Intel 開発され、主にIntel ハードウェア(CPU、iGPU、VPU)をターゲットにしています。Ultralytics OpenVINO 統合の詳細についてはこちらをご覧ください。
  • PyTorch/TensorFlow:これらは、主にモデルのトレーニングに使用されるディープラーニングフレームワークです。TensorRT 、これらのフレームワークを使用して学習した後にモデルを最適化し、効率的なモデルのデプロイに備えます。
すべて読む