什么是MLOps?


MLOps涵盖了一系列方法、工具和流程,被认为是机器学习项目成功的关键。机器学习运维 (MLOps) 是一套方法,数据科学家和运维专家通过它进行协作和沟通。

它是DevOps的机器学习版本,经过调整以满足各种机器学习组件的需求,例如变化的数据和新的开发角色的增加,例如机器学习工程师和数据科学家。它逐渐成为一种独立的机器学习生命周期管理方法。

这其中包括数据收集、模型生成、持续集成/持续交付、编排、部署、诊断、模型服务和业务KPI。

MLOps解决了什么问题?

MLOps是一套工具和策略,旨在简化数据科学家和机器学习从业者的工作。它为个人、小型团队甚至大型企业提供了一张路线图,帮助他们在各种限制条件下(例如敏感数据、资源有限或预算有限)实现目标。

  • 版本控制可以应用于模型训练中使用的数据以及其他模型工件。对模型和数据进行版本控制,可以确保机器学习实验的可重复性。

  • 投入生产的模型可能会随着时间的推移而性能下降,这是由于训练数据和测试数据之间的差异造成的。这种现象称为数据漂移。通过监控模型的性能,可以及时发现并解决这些问题。

  • 添加功能是一个耗时且计算密集型的过程。当正确实施MLOps方法时,一次创建的功能可以重复使用多次。这使数据科学家能够专注于模型的设计和测试。

MLOps的阶段

MLOps由多个组件组成,这些组件协同工作以保持机器学习模型开发生命周期的顺利运行。

  • 数据和模型版本控制 - 版本控制是指对在机器学习开发的不同阶段开发的多个模型迭代进行命名。它主要有助于在遇到问题时将模型回溯到之前的迭代。

  • 模型注册表 - 模型注册表是一个中央存储库,模型开发者可以轻松地提交可用于生产的模型。开发者可以使用注册表与其他团队和利益相关者协作,管理公司中所有模型的生命周期。

  • 模型服务 - 模型服务简单来说就是托管机器学习模型(本地或云端),并通过API提供其功能,以便应用程序可以将AI集成到其系统中。通过此操作,只需点击几下即可使用机器学习模型。

  • 模型监控 - 一旦模型投入生产,监控模型至关重要。它使您可以检测和解决诸如预测能力低、参数更改和泛化不足等问题,从而产生具有卓越性能的高质量解决方案。

  • 持续集成/持续交付 (CI/CD) - 在机器学习中,持续集成和持续交付可确保经常开发和发布高质量的模型。持续交付确保代码经常合并到中央存储库中,并进行自动化构建和测试。

  • 模型部署 - 将机器学习模型应用于实际使用中的任务称为模型部署。这个词经常与通过实时API提供模型的概念互换使用。

如何实施MLOps

MLOps 可以通过三种不同的方式实施。最佳选择取决于公司规模及其需要运行的机器学习模型数量。

如下所示:

  • 手动流程 (MLOps 级别 0) - 正如其名称所示,这里的机器学习工作流完全是手动的。对于最近开始使用机器学习的企业来说,这是一种常见的方法。这种采用MLOps的方法适用于非技术性企业,例如保险公司和银行,他们每年或在金融危机期间升级一次模型。

  • 机器学习管道自动化 (MLOps 级别 1) - 在此级别,机器学习管道被自动化以实现机器学习模型的持续训练。此过程包括自动化新数据训练、生产环境中的模型再训练、数据和模型验证自动化、管道触发器以及机器学习模型元数据的存储。

  • CI/CD管道自动化 (MLOps 级别 2) - 需要一个强大的自动化CI/CD管道,使数据科学家能够探索与超参数调整、特征工程和模型架构相关的新的想法,以便对机器学习管道进行快速和准确的更新。此级别适用于每天重新训练模型并在多个服务器上同时重新部署模型的企业。如果没有使用MLOps,这些企业将难以蓬勃发展。

使用MLOps的好处

以下是使用MLOps的优势:

  • MLOps使团队能够快速创新。

  • 团队可以更好地控制和管理机器学习资源。

  • 使用MLOps可以有效地管理整个机器学习生命周期。

  • 它使团队能够快速轻松地在任何位置部署高精度模型。

更新于:2022年8月26日

724 次浏览

启动您的职业生涯

完成课程获得认证

开始
广告
© . All rights reserved.