术语表

TensorRT

利用TensorRT 优化深度学习模型,在NVIDIA GPU 上实现更快、更高效的推理。通过YOLO 和人工智能应用实现实时性能。

使用Ultralytics HUB 对YOLO 模型进行简单培训

了解更多

TensorRT 是一款高性能深度学习推理优化器和运行时库,由英伟达™(NVIDIA®)公司开发。 NVIDIA.它通过应用各种优化技术,在NVIDIA ®)图形处理器(GPU)上加速深度学习模型。TensorRT 的主要目标是为部署在生产环境中的模型实现尽可能低的推理延迟和最高的吞吐量,这使其成为实时推理应用的关键。

TensorRT 如何工作

TensorRT 采用训练有素的神经网络,这种网络通常从诸如 PyTorchTensorFlow等框架GPU,并针对目标NVIDIA )GPU 进行专门优化。主要优化步骤包括

  • 图优化:融合各层并消除冗余操作,创建更高效的计算图。
  • 精度校准:降低模型权重的数值精度(如从 FP32 降至FP16 或 INT8),对精度的影响最小,从而显著加快计算速度并减少内存使用。
  • 内核自动调整:针对特定模型层和目标GPU,NVIDIA)库(cuDNNcuBLAS)中选择最佳预实现算法(内核)。
  • 动态Tensor 内存通过重复使用为张量分配的内存,最大限度地减少内存占用。

经过这些优化后,运行时推理引擎的效率非常高,适合特定的模型和硬件。

与Ultralytics的相关性

TensorRT 是Ultralytics YOLO 模型的关键部署目标。用户可以将训练有素的Ultralytics YOLO 模型导出为TensorRT 格式,从而在NVIDIA 硬件(包括NVIDIA Jetson 等边缘设备)上实现大幅提速。这使得各领域的高性能应用成为可能。模型比较页面(如YOLOv5 与RT-DETR 的比较)经常展示利用TensorRT 优化实现的推理速度。Ultralytics 还提供与NVIDIA 平台集成的指南,如DeepStream onNVIDIA Jetson 指南

实际应用

TensorRT 广泛应用于对NVIDIA )硬件的快速高效推理至关重要的领域:

  1. 自动驾驶汽车:自动驾驶汽车需要实时处理大量传感器数据。TensorRT 可加速物体检测、分割和路径规划模型,实现对安全至关重要的快速决策。这是汽车解决方案中人工智能的核心组成部分。
  2. 视频分析和智能城市:处理交通监控、人群分析或安全监控等任务所需的多个高分辨率视频流需要巨大的计算能力。TensorRT 优化了以下模型 Ultralytics YOLOv8等模型进行优化,以便在服务器或边缘设备上高效处理这些要求苛刻的工作负载,为智能城市的人工智能解决方案提供动力。

TensorRT 与类似术语

  • ONNX (开放神经网络交换) ONNX 是一种表示深度学习模型的开放格式。虽然TensorRT 可以从ONNX 格式导入模型,但ONNX 本身与硬件无关,而TensorRT 则是专门针对NVIDIA GPU 的优化器和运行时。Ultralytics 模型可以导出到ONNX
  • OpenVINO与TensorRT 类似,OpenVINO 也是一个推理优化工具包,但它是由Intel 开发的,主要针对Intel 硬件(CPU、iGPU、VPU)。了解有关Ultralytics OpenVINO 集成的更多信息。
  • PyTorch/TensorFlow这些都是深度学习框架,主要用于训练模型。TensorRT 在使用这些框架训练模型对其进行优化,为高效部署模型做好准备。
阅读全部