MLOps 是一组方法和技术,用于在生产环境中可靠高效地部署和维护机器学习 (ML) 模型。因此,MLOps 是机器学习、DevOps 和数据工程的交集
机器学习模型过程
一般来说,ML模型过程包括八个阶段(图2和图3),其中可能包括数据收集和/或数据标记[1]:
-
数据准备
-
特征工程
-
模型设计
-
模型训练和优化
-
模型评估
-
模型部署
-
模型服务
-
模型监控
图 2:ML 模型 SDLC 的阶段 [2]
图 3:包括监控的 ML 模型 SDLC [2]
相比之下,ModelOps 专注于管理各种 AI 模型的完整软件开发生命周期 (SDLC),包括机器学习、知识图谱、规则、优化、自然语言和基于代理的模型(图 4)。
机器学习工作流
机器学习需要试验各种数据集、数据准备和算法,以构建最大化某些目标指标的模型。构建模型后,下一步是将最终模型部署到生产系统,监视模型性能,并根据新数据不断重新训练模型并将其与其他模型进行比较。
MLOps 平台必须提供至少五个功能来帮助管理 ML 工作流 [3]:
跟踪:一个 API,用于在运行机器学习代码并稍后可视化结果时记录参数、代码版本、指标和项目。
项目:用于打包可重用 ML 代码的标准格式。
模型:一种约定,用于将 ML 模型打包为多种风格,以及帮助部署它们的各种工具。
注册表:集中式模型存储、一组 API 和 UI,用于协作管理 ML 模型的整个生命周期。
可伸缩性:旨在扩展到大型数据集、大型输出文件和大量实验。
结论
MLOps 是一组用于部署和维护机器学习 (ML) 模型的方法和技术。但是,MLOps 当前未定义任何标准,因此请务必牢记这一点。因此,重要的是要看到“大局”,它涉及了解 MLOps 的关键概念、阶段、功能和挑战。