了解如何将机器学习模型部署到云端或边缘环境。Ultralytics 如何为YOLO26模型简化导出与生产流程。
模型部署是关键阶段,在此阶段经过训练的机器学习模型将被集成到生产环境中, 该过程标志着模型从研究或实验环境(通常在隔离的笔记本中运行)向实际应用场景的转变,此时模型将与真实用户及系统进行交互。这一过程将静态的权重文件和架构转化为能创造价值的动态AI代理,例如识别视频流中的物体或在网站上推荐商品。
有效的部署需要解决与模型训练不同的挑战,包括延迟、可扩展性和硬件兼容性。企业通常采用Ultralytics 优化这一生命周期,确保在云端训练的模型能够无缝交付至各类环境——从高性能服务器到资源受限的边缘设备。
部署策略通常分为两类:云部署和边缘部署。选择取决于对速度、隐私和连接性的具体要求。
在模型部署前,通常需要进行优化以确保其在目标硬件上高效运行。该过程涉及模型导出,即将训练格式(如PyTorch)转换为适合部署的格式,例如ONNX。 ONNX (开放神经网络交换格式)或 OpenVINO。
量化等优化技术能在不显著降低准确性的前提下,缩减模型体积和内存占用。为确保跨计算环境的一致性,开发者常采用Docker等容器化工具,将模型与其所有必需的软件依赖打包整合。
以下是一个将YOLO26模型ONNX 示例,这是部署准备中的常见步骤:
from ultralytics import YOLO
# Load the YOLO26 nano model
model = YOLO("yolo26n.pt")
# Export the model to ONNX format for broad compatibility
# This creates a file suitable for various inference engines
path = model.export(format="onnx")
print(f"Model successfully exported to: {path}")
模型部署为各行各业广泛使用的计算机视觉系统提供支持。
区分模型部署与机器学习生命周期中的相关术语至关重要:
部署并非终点。模型上线后需要持续监控,以detect 数据漂移等问题——即实际数据开始偏离训练数据的情况。通常会集成Promet heus 或Grafana等工具track 指标,确保系统长期保持可靠性。当性能下降时,可能需要重新训练模型并重新部署,从而完成MLOps的闭环。