用語集

TensorRT

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

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

さらに詳しく

TensorRT 、NVIDIAによって開発された高性能なディープラーニング(DL)推論オプティマイザとランタイムライブラリです。 NVIDIA.これは、NVIDIA GPU上で動作するディープラーニングアプリケーションの推論スループットを最大化し、推論レイテンシを最小化するために特別に設計されています。TensorRT 、さまざまなフレームワークから訓練されたニューラルネットワークモデルを取り込み、数多くの最適化を適用して、高度に最適化されたランタイムエンジンを生成してデプロイします。このプロセスは、特にスピードと応答性が重要な本番環境で効率的にモデルを展開するために非常に重要です。

主な機能と最適化

TensorRT 、いくつかの洗練された技術によって大幅な性能向上を実現している:

  • 精度キャリブレーション:モデル精度をFP32からFP16やINT8のような低精度(混合精度またはモデル量子化)に、精度の損失を最小限に抑えながら低減し、計算の高速化とメモリ使用量の低減を実現します。
  • レイヤーとTensor 融合:複数のレイヤまたは演算を単一のカーネルに統合(レイヤ・フュージョン)し、メモリ帯域幅の使用とカーネル起動のオーバーヘッドを削減します。
  • カーネルの自動チューニング:ターゲットに最適な実装済みアルゴリズム(カーネル)を選択します。 NVIDIA GPUアーキテクチャに最適なアルゴリズム(カーネル)を選択します。
  • 動的Tensor メモリ:寿命が重複しないテンソルに割り当てられたメモリを再利用することで、メモリフットプリントを最小化する。
  • マルチストリーム実行:複数の入力ストリームの並列処理が可能。

TensorRT の仕組み

このワークフローでは通常、学習済みのモデル(たとえば PyTorchまたは TensorFlowのような中間フォーマットを介して ONNXのような中間フォーマットを介して)、TensorRT オプティマイザに入力する。TensorRT モデルを解析し、指定された精度とターゲットGPUグラフの最適化とターゲット固有の最適化を実行し、最終的にTensorRT エンジンと呼ばれる最適化された推論計画を生成します。このエンジンファイルをデプロイすることで、高速な推論が可能になります。

AIとMLにおける関連性

TensorRT 、機械学習ライフサイクルのモデルデプロイメントフェーズに大きく関係している。推論を大幅に高速化できるため、次のようなモデルによる物体検出などリアルタイムの推論を必要とするアプリケーションには不可欠です。 Ultralytics YOLOのようなモデルによる物体検出、画像セグメンテーション、自然言語処理など、リアルタイムの推論を必要とするアプリケーションに不可欠です。のようなツールと並んで、NVIDIA ソフトウェアスタックの重要なコンポーネントです。 CUDA強力なデータセンターGPUから エッジAI用のエネルギー効率に優れたNVIDIA Jetsonモジュールまで、NVIDIA ハードウェアの可能性を最大限に活用することができます。Ultralytics シームレスな統合を提供し、ユーザーは YOLO モデルをTensorRT 形式にエクスポートして、最適化されたデプロイメントを行うことができます。

実世界での応用

TensorRT 、高速で効率的なAI推論が必要とされるさまざまな業界で広く使用されている:

  1. 自律走行車自動運転車(自動車におけるAI)では、TensorRT 、組み込みNVIDIA DRIVEプラットフォーム上で動作する知覚モデル(物体検出や車線分割など)を最適化し、安全にとって重要なリアルタイムの意思決定を保証します。RTDETRのようなモデルは、このようなシステムでの展開のためにTensorRT 使用して最適化できます(RTDETRv2とYOLOv5 比較)。
  2. 医療画像解析病院や研究機関では、腫瘍検出や異常識別などのタスクのために医療スキャン(CT、MRI)を解析するAIモデルの推論を高速化するためにTensorRT 使用しています(AI in Healthcare)。これは多くの場合、より大規模なコンピュータビジョン(CV)システムの一部です。

TensorRT 関連技術の比較

TensorRT NVIDIA GPUに特化した推論の最適化に焦点を当てているが、エコシステムには他のツールも存在する:

  • ディープラーニング・フレームワーク(PyTorchTensorFlow):これらは主にモデルのトレーニングに使用されるが、基本的な推論機能も提供する。TensorRT 、これらのフレームワークでトレーニングされたモデルをデプロイ用に最適化する。
  • ONNX ランタイム NVIDIA GPU(多くの場合、実行プロバイダとしてTensorRT 使用)やCPUなど、複数のハードウェアアクセラレータをサポートするクロスプラットフォームの推論エンジン。より広範なハードウェア互換性を提供するが、NVIDIA ハードウェア上ではTensorRT 同レベルの最適化は実現できない。
  • Intel OpenVINO TensorRT いるが、Intel ハードウェア(CPU、iGPU、VPU)に最適化されている。Ultralytics モデルも OpenVINO フォーマットにエクスポートできます。

TensorRT の主な差別化要因は、NVIDIA ハードウェアとの深い統合と、GPU 向けに調整された積極的な最適化戦略であり、NVIDIA プラットフォーム上では、より汎用的なランタイムと比較して最高性能のベンチマーク(MLPerf ベンチマークを参照)が得られることがよくあります。モデルやデプロイの管理は、Ultralytics HUB のようなプラットフォームを使って効率化することができます。

すべて読む