术语表

模型部署

了解模型部署的基本要素,将 ML 模型转化为现实世界中的预测、自动化和人工智能驱动的洞察力工具。

模型部署是将训练有素的机器学习(ML)模型集成到实时生产环境中的关键过程,在该环境中,模型可以接收输入并提供预测。它是机器学习生命周期的最后阶段,将静态模型文件转化为功能强大、可产生价值的应用程序。如果没有有效的部署,即使是最精确的模型也只是一种学术练习。我们的目标是以可靠和可扩展的方式,让最终用户、软件应用程序或其他自动化系统能够获取模型的预测能力。

什么是部署流程?

部署模型不仅仅是保存训练好的模型权重那么简单。这是一个多步骤过程,可确保模型在目标环境中高效可靠地运行。

  1. 模型优化:在部署之前,通常会对模型的速度和大小进行优化。模型量化模型剪枝等技术可减少实时推理所需的计算资源,而不会明显降低准确性
  2. 模型导出:然后将优化后的模型转换成适合目标平台的格式。例如,Ultralytics 模型可以导出为 ONNXTensorRTCoreML多种格式,因此具有很强的通用性。
  3. 打包:将模型及其所有依赖项(如特定库和框架)捆绑在一起。使用Docker等工具进行容器化是一种常见做法,因为它可以创建一个自足的、可移植的环境,确保模型在任何地方都能一致运行。
  4. 服务:打包模型部署到服务器或设备上,通过应用程序接口接受请求。该组件称为模型服务,负责处理传入数据并返回预测结果。
  5. 监控:部署后,持续的模型监控至关重要。这包括跟踪性能指标、延迟和资源使用情况,以确保模型按预期运行,并检测数据漂移等问题。

部署环境

模型可以在各种环境中部署,每种环境都有自己的优势和挑战。

  • 云平台亚马逊网络服务(AWS)谷歌云平台(GCP)微软 Azure等服务为托管复杂模型提供了强大、可扩展的基础设施。
  • 内部服务器:对数据隐私有严格要求的组织或需要完全控制其基础设施的组织,可以在自己的服务器上部署模型。
  • 边缘人工智能设备边缘人工智能是指将模型直接部署到本地硬件上,如智能手机、无人机、工业传感器或英伟达 Jetson 等专用设备。这种方法非常适合需要低推理延迟和离线功能的应用。
  • 网络浏览器:可以使用TensorFlow.js 等框架在网络浏览器中直接运行模型,从而实现无需服务器端处理的交互式人工智能体验。

实际应用

  • 制造质量控制:经过缺陷检测训练的Ultralytics YOLO模型可部署在工厂车间的边缘设备上。该模型经过TensorRT优化,具有高吞吐量,与俯瞰传送带的摄像头集成在一起。它能进行实时物体检测,识别有问题的产品,并立即发出信号让机械臂将其移除。整个过程在本地完成,最大程度地减少了网络延迟,确保立即采取行动。如需了解更多信息,请参阅人工智能在制造业中的应用
  • 智能零售分析:在云服务器上部署了用于人员计数和跟踪的计算机视觉模型。零售店内的摄像头将视频流传输到云端,模型在云端处理馈送信息,生成客流热图并分析购物模式。该应用程序由Kubernetes管理,可处理来自多个商店的不同负载,为库存管理和商店布局优化提供有价值的见解。

模型部署、模型服务和 MLOps

这些术语虽然密切相关,但却截然不同。

  • 模型部署与模型服务:部署是将训练有素的模型投入运行的整个端到端过程。模型服务是部署一个特定组成部分,指的是负责运行模型和响应预测请求(通常通过应用程序接口)的基础设施。
  • 模型部署与 MLOps机器学习运营(MLOps)是一套涵盖整个人工智能生命周期的广泛实践。部署是 MLOps 框架中的一个关键阶段,它还包括数据管理、模型训练、版本管理以及持续监控和再训练。Ultralytics HUB等平台提供了一个集成环境来管理整个工作流程,从训练自定义模型到无缝部署和监控。

加入 Ultralytics 社区

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

立即加入
链接复制到剪贴板