在机器学习领域,MLOps是一个越来越受到重视的概念,它结合了机器学习和软件开发中的DevOps实践。本文将简要介绍 MLOps 的含义,并探讨Amazon SageMaker这一工具如何简化 MLOps 的实施和管理,从而提高机器学习项目的部署效率并节约时间和成本。对于那些对 MLOps 概念尚不清楚的人来说,了解相关工具将有助于他们更好地理解这一领域。
MLOps 一词来源于“机器学习”和软件开发中的“DevOps”实践。这是一个新兴领域,正在迅速获得数据科学家、机器学习工程师和人工智能爱好者的关注。MLOps 是一系列机器学习(ML)从业者遵循的流程,旨在加快 ML 模型在实际项目中的部署,并提高各种项目流程的整合效率。它的目标是在生产环境中以可靠和高效的方式部署可维护的机器学习模型。
MLOps 的优势在于:
MLOps 系统需要具备上述特性才能被认为是健壮的。模型工件需要构建得包含所有数据预处理所需的信息。模型工件是训练作业产生的文件集合,这些文件是模型部署所必需的。在 AWS SageMaker API 中,它们是训练模型的结果输出,通常包括训练参数、描述如何计算推断的模型定义以及其他元数据。
构建模型工件后,必须能够跟踪构建它们的代码、它们被训练和测试的数据,以及它们之间的关系。有了这种能力,就可以通过自动化应用程序开发阶段,频繁地将应用程序交付给客户。ML 应用程序可以通过 CI/CD 过程高效地持续部署、集成和交付。
使用的工具类型取决于项目的性质。将看到一些工具及其特性,以便理解它们如何最好地适应。这里提到的“工具”一词并没有太多花哨的含义,它只是实现 MLOps 的一种手段。将这些工具视为专业平台管理的一部分。了解工具的特性将解释它们如何在 ML 生命周期的任何部分中使用。以下是该领域中一些最常见的工具。
Amazon SageMaker
是一个基于云的机器学习平台,自 2017 年 11 月推出以来已有五年历史。它在云端创建、训练和部署机器学习模型。Amazon SageMaker 是一个完全托管的机器学习平台,使数据科学家和开发者能够快速构建和训练机器学习模型,然后将其部署到生产环境中。它通过提供诸如 Amazon SageMaker JumpStart 之类的功能,使 ML 工作流程的启动变得更加容易,JumpStart 包含内置算法和预构建的机器学习(ML)解决方案,只需点击几下即可部署。
它包含数百个内置算法和来自模型中心的预训练模型,包括 TensorFlow Hub、PyTorch Hub、HuggingFace 和 MxNet GluonCV。执行常见的机器学习任务变得非常容易。所有这些特性使得实施 MLOps 变得非常容易和快速。Amazon SageMaker 提供 MLOps 帮助开发者自动化和标准化 ML 生命周期中的流程。这通过训练、测试、故障排除、部署和管理 ML 模型提高了生产力。
除了 Amazon SageMaker JumpStart 之外,还有一些其他功能可用于促进MLOps,包括:
这也节省了时间,减少了生产过程中异常或漂移造成的损害。重新训练得到了管理和减少。监控可以设置为监控数据、模型、生产中的模型偏差漂移以及监控生产中的模型特征归因漂移。