术语表

机器学习运营(MLOps)

探索 MLOps 的强大功能:简化 ML 模型部署、自动化工作流程、确保可靠性并高效扩展人工智能的成功。

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

了解更多

机器学习运营(MLOps)是一套实践方法,旨在可靠高效地部署和维护生产中的机器学习(ML)模型。MLOps 从DevOps 原则中汲取灵感,在模型开发(数据科学家、ML 工程师)和 IT 运营(运营工程师)之间架起了一座桥梁,简化了从数据收集到模型部署和监控的整个 ML 生命周期。其目标是实现流程的自动化和标准化,从而在生产环境中实现更快的实验、更可靠的部署以及 ML 系统的持续改进。

MLOps 的核心原则

MLOps 基于几项关键原则,旨在管理 ML 系统的独特复杂性:

  • 自动化:使用适用于 ML 的持续集成/持续部署(CI/CD)管道,自动执行数据准备、模型训练、验证和部署等重复性任务。
  • 协作:在整个 ML 生命周期中,促进数据科学、软件工程和运营团队之间的沟通与协作。
  • 版本控制:对数据、代码和模型实施版本控制,以确保可重现性和可追溯性。DVC等工具通常与 Git 同时使用。
  • 模型监控持续跟踪生产中的模型性能、数据质量和运行状况,以检测数据漂移或性能下降等问题。
  • 治理与合规:确保模型符合监管要求、道德准则(人工智能道德)以及有关数据隐私和安全的组织政策。

MLOps 生命周期

MLOps 生命周期包括 ML 模型的整个过程:

  1. 数据管理:数据集的输入、验证、清理(数据清理)和版本管理(数据标签和准备指南可在Ultralytics 文档中找到)。
  2. 模型开发:尝试不同的算法、特征工程和架构,经常使用的框架包括 PyTorchTensorFlow.
  3. 模型培训:大规模训练模型,可能使用分布式训练,并使用以下工具管理实验 Weights & BiasesMLflow 等工具管理实验。超参数调整通常是自动化的。
  4. 模型验证:验证数据上使用准确率mAP等指标评估模型性能。
  5. 模型部署打包使用Docker 进行容器化)并将模型部署到生产环境中,可能使用Kubernetes 等协调平台。
  6. 模型监控和再训练:跟踪实时性能,检测漂移或衰减,并在必要时触发再训练管道。可观察性在此发挥着关键作用。

MLOps 与相关概念

  • MLOps 与 AutoML:MLOps 涵盖整个端到端生命周期管理,而自动化机器学习 (AutoML)则特别关注模型构建步骤(数据准备、特征工程、模型选择、超参数调整)的自动化。AutoML 工具可以是 MLOps 工作流程中的一个组件。
  • MLOps 与可观察性: 可观察性是MLOps 战略中的一项关键能力。它提供了解已部署 ML 系统的内部状态和行为所需的工具和实践(日志、指标、跟踪),从而实现有效监控和故障排除。

实际应用

MLOps 实践对于管理生产中的复杂 ML 系统至关重要:

  1. 推荐系统:Netflix 或 Spotify 等公司使用 MLOps 根据新的用户交互数据持续重新训练推荐模型,对不同的模型版本进行 A/B 测试,监控参与度指标,并快速回滚表现不佳的模型。这确保了推荐的相关性和个性化。
  2. 欺诈检测:金融机构部署 MLOps 管道来管理欺诈检测模型。这包括监控交易数据的漂移,根据新的欺诈模式自动重新训练模型,确保实时检测的低推理延迟,以及维护审计跟踪以符合监管要求。 Ultralytics YOLO模型在可视化检测系统中使用时,可能会被用于欺诈检测,在部署和监控方面也会受益于 MLOps。

工具和平台

有多种工具支持 MLOps 生命周期的不同阶段:

实施 MLOps 原则有助于企业更有效地构建、部署和管理人工智能系统,缩小实验研究与可靠的生产应用之间的差距。

阅读全部