深圳Yolo 视觉
深圳
立即加入
词汇表

模型部署

了解如何将机器学习模型部署到云端或边缘环境。Ultralytics 如何为YOLO26模型简化导出与生产流程。

模型部署是关键阶段,在此阶段经过训练的机器学习模型将被集成到生产环境中, 该过程标志着模型从研究或实验环境(通常在隔离的笔记本中运行)向实际应用场景的转变,此时模型将与真实用户及系统进行交互。这一过程将静态的权重文件和架构转化为能创造价值的动态AI代理,例如识别视频流中的物体或在网站上推荐商品。

有效的部署需要解决与模型训练不同的挑战,包括延迟、可扩展性和硬件兼容性。企业通常采用Ultralytics 优化这一生命周期,确保在云端训练的模型能够无缝交付至各类环境——从高性能服务器到资源受限的边缘设备。

部署全景图

部署策略通常分为两类:云部署和边缘部署。选择取决于对速度、隐私和连接性的具体要求。

  • 云部署:模型部署在集中式服务器上,通常由以下服务管理: AWS SageMakerGoogle AI。应用程序通过 REST API处理请求并返回结果。该方法提供近乎无限的计算能力,非常适合大型复杂模型,但依赖于稳定的互联网连接。
  • 边缘部署:模型在数据生成设备(如智能手机、无人机或工厂摄像头)上本地运行。这种被称为边缘计算的方法能最大限度降低延迟并增强数据隐私性,因为信息不会离开设备。诸如TensorRT等工具可实现此类部署。 TensorRT 常用于优化此类环境的模型。

为生产准备模型

在模型部署前,通常需要进行优化以确保其在目标硬件上高效运行。该过程涉及模型导出,即将训练格式(如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}")

实际应用

模型部署为各行各业广泛使用的计算机视觉系统提供支持。

  • 制造质量控制: 在智能制造中,部署的模型实时监控传送带。NVIDIA 设备优化模型的摄像系统可即时detect 产品detect ,触发机械臂移除瑕疵品。这需要仅靠边缘AI部署才能实现的超低延迟。
  • 零售分析:门店通过部署模型分析客流量与顾客行为。 通过将物体追踪模型集成至安防摄像头数据流, 零售商可生成热门货架区域的热力图。这些洞察有助于优化店铺布局并提升库存管理效率, 通常采用云端部署方式整合多门店数据。

部署 vs. 推理 vs. 训练

区分模型部署与机器学习生命周期中的相关术语至关重要:

  • 模型训练是算法从数据集中学习模式的教育阶段。
  • 模型部署是集成阶段,在此阶段将训练好的模型安装到生产基础设施(服务器、应用程序或设备)中。
  • 推理是运行阶段——即部署的模型处理实时数据以生成预测的实际过程。例如,推理引擎执行由部署模型定义的计算。

监测与维护

部署并非终点。模型上线后需要持续监控,以detect 数据漂移等问题——即实际数据开始偏离训练数据的情况。通常会集成Promet heus 或Grafana等工具track 指标,确保系统长期保持可靠性。当性能下降时,可能需要重新训练模型并重新部署,从而完成MLOps的闭环。

加入Ultralytics 社区

加入人工智能的未来。与全球创新者联系、协作和共同成长

立即加入