机器学习运营(MLOps)是一套实践方法,旨在可靠高效地部署和维护生产中的机器学习(ML)模型。MLOps 从DevOps 原则中汲取灵感,在模型开发(数据科学家、ML 工程师)和 IT 运营(运营工程师)之间架起了一座桥梁,简化了从数据收集到模型部署和监控的整个 ML 生命周期。其目标是实现流程的自动化和标准化,从而在生产环境中实现更快的实验、更可靠的部署以及 ML 系统的持续改进。
MLOps 的核心原则
MLOps 基于几项关键原则,旨在管理 ML 系统的独特复杂性:
- 自动化:使用适用于 ML 的持续集成/持续部署(CI/CD)管道,自动执行数据准备、模型训练、验证和部署等重复性任务。
- 协作:在整个 ML 生命周期中,促进数据科学、软件工程和运营团队之间的沟通与协作。
- 版本控制:对数据、代码和模型实施版本控制,以确保可重现性和可追溯性。DVC等工具通常与 Git 同时使用。
- 模型监控:持续跟踪生产中的模型性能、数据质量和运行状况,以检测数据漂移或性能下降等问题。
- 治理与合规:确保模型符合监管要求、道德准则(人工智能道德)以及有关数据隐私和安全的组织政策。
MLOps 与相关概念
- MLOps 与 AutoML:MLOps 涵盖整个端到端生命周期管理,而自动化机器学习 (AutoML)则特别关注模型构建步骤(数据准备、特征工程、模型选择、超参数调整)的自动化。AutoML 工具可以是 MLOps 工作流程中的一个组件。
- MLOps 与可观察性: 可观察性是MLOps 战略中的一项关键能力。它提供了解已部署 ML 系统的内部状态和行为所需的工具和实践(日志、指标、跟踪),从而实现有效监控和故障排除。
实际应用
MLOps 实践对于管理生产中的复杂 ML 系统至关重要:
- 推荐系统:Netflix 或 Spotify 等公司使用 MLOps 根据新的用户交互数据持续重新训练推荐模型,对不同的模型版本进行 A/B 测试,监控参与度指标,并快速回滚表现不佳的模型。这确保了推荐的相关性和个性化。
- 欺诈检测:金融机构部署 MLOps 管道来管理欺诈检测模型。这包括监控交易数据的漂移,根据新的欺诈模式自动重新训练模型,确保实时检测的低推理延迟,以及维护审计跟踪以符合监管要求。 Ultralytics YOLO模型在可视化检测系统中使用时,可能会被用于欺诈检测,在部署和监控方面也会受益于 MLOps。
工具和平台
有多种工具支持 MLOps 生命周期的不同阶段:
实施 MLOps 原则有助于企业更有效地构建、部署和管理人工智能系统,缩小实验研究与可靠的生产应用之间的差距。