Inference Engine
发现推理引擎如何优化像 Ultralytics YOLO26 这样的机器学习模型以实现实时部署。立即探索边缘 AI 的性能提升技巧。
推理引擎是一个专门的软件组件,旨在执行训练好的机器学习模型并从新数据中生成预测。与侧重于通过计算密集型过程(如 backpropagation)学习模式的训练阶段不同,推理引擎针对被称为 model deployment 的运营阶段进行了严格优化。其首要目标是以尽可能高的效率运行计算,在目标硬件(无论是可扩展的云服务器还是电池供电的 Edge AI 设备)上最小化 inference latency 并最大化吞吐量。通过剥离训练所需的开销,这些引擎使复杂的 neural networks 能够在实时应用中发挥作用。
推理引擎如何优化性能#
从训练环境到推理引擎的过渡通常涉及几个优化步骤,以简化模型的结构。由于模型不再需要学习,引擎可以丢弃梯度更新所需的数据,从而有效地冻结 model weights。推理引擎使用的常见技术包括层融合(将多个操作组合为单个步骤以减少内存访问)和 model quantization(将权重从高精度浮点格式转换为低精度整数,例如 INT8)。
这些优化允许诸如 Ultralytics YOLO26 之类的高级架构在极高的速度下运行,而不会对 accuracy 造成重大损失。不同的引擎通常针对特定的硬件生态系统进行定制,以释放最高性能:
- NVIDIA TensorRT:通过利用特定硬件的内核并优化网络图,在 NVIDIA GPUs 上提供高性能推理。
- Intel OpenVINO:优化 Intel 架构(包括 CPUs 和集成显卡)上的 deep learning 性能,使其成为边缘计算的理想选择。
- ONNX Runtime:一个跨平台加速器,支持 ONNX 格式的模型,为不同的框架和硬件后端提供桥梁。
实际应用#
推理引擎是许多现代 AI 便利功能背后的无形驱动力,使 computer vision 系统能够对环境做出即时反应。
-
自动驾驶汽车:在自动驾驶汽车中,object detection 模型必须在几毫秒内识别行人、交通标志和其他车辆。在汽车硬件上本地运行的推理引擎可确保此处理以 real-time inference 速度进行,因为依赖云连接会引入危险的延迟。
-
智能制造:工厂利用 industrial IoT 相机来检查装配线上的产品。推理引擎处理视频流以执行 anomaly detection,并立即标记缺陷。这种自动化在不减慢生产速度的情况下减少了浪费并确保了严格的质量控制。
推理引擎与训练框架对比#
区分用于创建模型的软件和用于运行它的引擎是很有帮助的。训练框架(如 PyTorch 或 TensorFlow)提供了用于设计架构、计算损失以及通过 supervised learning 更新参数的工具。它优先考虑灵活性和调试功能。
相比之下,推理引擎获取来自训练框架的成品,并优先考虑执行速度和内存效率。虽然你可以在训练框架内运行推理,但它几乎不如使用专用引擎高效,特别是对于通过 TensorFlow Lite 或 Apple Core ML 等工具在手机或嵌入式设备上进行部署。
结合 Ultralytics YOLO26 使用推理引擎#
ultralytics 软件包抽象了推理引擎的大部分复杂性,使用户能够无缝运行预测。在后台,它处理图像的预处理和模型的执行。对于希望进行扩展的用户,Ultralytics Platform 简化了训练模型并将其导出到与各种推理引擎兼容的优化格式的过程。
以下示例演示了如何加载预训练的 YOLO26 模型并在图像上运行推理:
from ultralytics import YOLO
# Load the YOLO26n model (nano version for speed)
model = YOLO("yolo26n.pt")
# Run inference on an image from a URL
# The 'predict' method acts as the interface to the inference process
results = model.predict("https://ultralytics.com/images/bus.jpg")
# Display the results
results[0].show()





