阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

亚马逊正在重塑 MLOps

  • 2021-11-25
  • 本文字数:2899 字

    阅读完需:约 10 分钟

亚马逊正在重塑MLOps

作者 | Vishnu Prathish

译者 | 王强

策划 | 冬梅


本文最初发布于 Medium 网站,经原作者授权由 InfoQ 中文站翻译并分享。


众所周知,在三大云提供商中 AWS 拥有最丰富的机器学习能力组合。随着 Sagemaker Studio 于 2020 年初公开发布,他们创建了一个全集成的 ML 开发环境——这是业界首创。


在所有 ML 产品的中心锚定一个 IDE 是一个明智的举动——只要你的相关服务正确地填补了关键运维层面的空白。如果一切顺利,亚马逊将有机会一劳永逸地重塑行业中机器学习的面貌。


甚至在 Sagemaker Studio 之前,AWS 就有了一些针对 MLOps 的服务。但是,Re:invent 2020 更进一步。他们发布了一系列产品 / 服务,填补了大多数已知的空白。


现在他们做得怎么样?他们是否为正确的受众构建了正确的工具?这个问题还需要几年时间才能得出答案。但是 AWS 肯定在这场竞赛中处于领先位置。现在,我们来研究一些关键的新服务,从中了解 AWS 在这场游戏中的优势所在。

AWS 的现有 MLOps 套件


亚马逊的现有产品完全基于 Sagemaker Studio。它为 ML 开发提供了业内首创的集成开发环境。下面介绍一些基于它实现的功能,这些功能让这个平台颇具吸引力:


  • Sagemaker Studio notebooks 提供无服务器的 Jupyter 笔记本代替你的本地笔记本。它还支持本地模式。但我强烈建议你围绕中心化笔记本设置构建开发环境。

  • Sagemaker Autopilot 将 AutoML 引入了 AWS,从而消除了 ML 流程中的所有繁重工作。

  • Sagemaker Experiments 允许你保存和跟踪你的训练实验。它还允许将一个模型与另一个模型对比,从而允许用户从实验结果表中手动选择最佳模型。

  • Sagemaker Model tuning 允许你利用云来自动执行超参数优化。

  • Multimodel endpoints 能大大降低推理成本。

  • Model monitor 能帮助你跟踪生产中的指标,从而轻松跟踪模型漂移。

2021 年有什么新变化?


尽管 AWS 是 ML 服务的运维提供商,但它仍然不能声称自己拥有用于所有机器学习目的的,打通的开发环境。MLOps 在几个领域存在重大差距。


没有连贯的 CI/CD 管道可以将它们连在一起。没有这样的管道,感觉用户在使用一系列不同的服务。机器学习过程各个阶段(数据准备、训练、验证、推理、监控)的相关产品也还不完整。


但这种情况正在改变。随着 re:invent 2020 和之前发布的一些新服务的出现,AWS 在今年已经填补了大部分空白,而其他多数提供商则远远落后。


下面是一些例子。

Data Wrangler:零代码数据准备


AWS Sagemaker Data Wrangler 提供了一种干净的 Jupyter 风格的 IDE,用于机器学习数据准备。它直接建立在 Sagemaker Studio 上,因此利用了 Studio 的所有强大功能(比如它的数据可视化)。


即使从技术上讲这是一种无代码工具,但 Data Wrangler 还是可以使用代码自定义的。你可以将 300 多种内置的自动转换应用于你的训练数据。你只需单击即可将工作流程导出到 Sagemaker 笔记本并构建就地模型。它还直接支持多个数据存储,包括 Snowflake、MongoDB 和 Databricks。


Data Wrangler 解决了亚马逊在 ML 数据准备方面的巨大空白。他们声称,以这种方式简化数据准备工作可以大大减少用户花费在数据准备上的时间。

Sagemaker DataBrew:同样的工具,但做法不同



Data Brew 也是无代码数据准备工具。但这两种工具面向的是两类不同的受众。Data Wrangler 专门针对 ML,而 Data Brew 专注在通用探索性数据分析(EDA)上。另外,Data Brew 是一个以 UI 为中心的工具。


EDA 通常是 ML 的先决条件,因此它们完全可以同时使用。Data Brew 的一键分析和精心设计的界面(适合不会编写代码的用户)让作业变得更加简单明了。


两种工具都可以用来完成特征工程。但是只有 Data Wrangler 支持将特征空间导出到 AWS Feature Store,所以更合适一些。


另一个空白,填补完毕。

AWS Feature Store:大规模特征工程


这是一个重要的发布,解决了关键的 特征工程缺失 的问题。许多机器学习实践在脱机(批处理)和在线(实时)特征工程之间存在差异。复杂的特征工程转换和在批处理期间构建的新特征很难很好地转换为推理 / 预测管道。


Feature Store 在这两点之间放置了一个专有的针对特征空间的存储库来解决这一问题。训练期间你在 Sagemaker Studio 中对原始数据所做的所有操作都可以导出到 Feature Store 中,并且可以保证在推理过程中可以正确地复制这些数据。


除了解决这个在线 - 离线问题外,它还支持特征可发现、共享和特征重用。它的设计还考虑了延迟——这是大规模场景中必须做的。

Sagemaker Pipelines:机器学习流程的 CI/CD


对我来说,这项服务是本年度最重要的运维发布。


尽管可扩展 ML 的重要先决条件是可靠的 CI/CD 流程 / 框架,但之前并没有好用的产品选项。大家要么用的是没那么理想的 MLOps 流程,要么建立了自己的 CI/CD 版本。


ML 的自制 CI/CD 框架存在的问题是它们无法推广,因此无法轻松开源。框架不可避免地要在代码中写入许多领域知识——既是为了缩短开发时间,也是为了与现有服务更好地集成。AWS 打算通过用于 ML 的通用 CI/CD 框架解决这一问题。


Sagemaker Pipelines 允许你创建、可视化和管理 ML 工作流。它使你能够创建单独的开发和生产环境并进行跟踪。环境允许你进行工件升级。它还带有一个模型注册表,可让你跟踪和选择正确的部署模型。


这一管道的一个不太明显的效果是,它还将其他所有用于 ML 的 Sagemaker 服务编织在一起。这为 AWS 带来了明显的优势,因为它可以实现真正的端到端 ML。

re:invent 的其他相关内容

Sagemaker Clarify:

跨 e2e Sagemaker 工作流的偏见检测。对于 B2C 公司而言这是一大优势。

SageMaker 调试器的改进

训练期间对资源利用情况进行监视和深度 profiling。特别是在深层神经网络上。

边缘机器学习

Sagemaker edge manager 基于 AWS Neo 之上,引入了边缘设备的模型管理。如果你在物联网行业,它会非常有用。

数据库 ML 功能

虽然不太算是 MLOps,但亚马逊新的数据库 ML 服务确实属于一个共同的主题——建立一个平稳的生产级 ML 流程,从而完全消除了对运维的需求。


  • Amazon Redshift ML:将 Sagemaker Autopilot 集成到 Amazon Redshift 中

  • Amazon Neptune ML:集成 Graph ml

  • Amazon Aurora ML:使用 SQL 查询将 ML 直接集成到 Postgres 中。

  • Amazon Athena ML:在 Athena 上提供经过预训练的模型。

竞争对手的情况?

Azure Machine Learning 和 Google Cloud AI platform 是排名靠前的云提供商中的两家头部 MlOps 提供商。两者都具有强大的管道和 CI/CD 功能。但是,Google AI 管道仍处于测试阶段,而其 AWS 竞品已经具备通用性。Azure Machine Learning Studio 感觉与 Sagemaker 非常相似,但并没有提供那么多服务。


其他提供商所用的模式并没有在中心包含集成的 IDE。Azure ML Studio 似乎在这方面做了尝试。但它在功能集方面局限很大。


与其他头部提供商相比,亚马逊确实投入了更多资源来提供更好的数据科学运维解决方案。这样是否可以让他们牢牢地把持最集成的 MLOps 套件的领先地位?我想是这样。亚马逊在开发云解决方案方面具有 3 到 5 年的领先优势(或更多?这里我找不到参考数据)。但是,现在预测谁将赢得 MLOps 竞赛还为时过早。


原文链接:

https://medium.com/analytics-vidhya/amazon-is-reinventing-mlops-57f36c0b2d0a

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2021-11-25 15:082279
用户头像
李冬梅 加V:busulishang4668

发布了 811 篇内容, 共 379.4 次阅读, 收获喜欢 999 次。

关注

评论

发布
暂无评论
发现更多内容

鸿蒙开发实例|分布式文件服务

TiAmo

华为 鸿蒙 10月月更

云端软件运行,小程序安全沙箱技术为端侧安全保驾护航

Geek_99967b

小程序

Vue3, setup语法糖、Composition API全方位解读

yyds2026

Vue

知识管理是团队的心脏,让企业管理更上一层楼

Baklib

文档 文档协同

SegmentFault 思否发布开源问答社区软件 Answer

万事ONES

1024里的小温暖,用技术让生活变得更美好!

阿里技术

1024程序员节

大家都在“卷”的推荐系统还有进步空间吗?看技术大牛们怎么说

小红书技术REDtech

重磅丨九科被评为“2022年中国流程挖掘行业典型实践厂商” 实力再获“RPA中国”认可

九科Ninetech

RPA 流程挖掘 数智化转型

Spring Boot「13」使用 Actuator

Samson

Java spring 学习笔记 spring-boot 10月月更

当我遇到10亿参数组合

FunTester

Vue.nextTick核心原理

yyds2026

Vue

Zookeeper的服务器的log4j升级为log4j2的升级方案(忽略配置化兼容问题)

洛神灬殇

zookeeper

Java之抽象类

魏铁锤

10月月更

【LeetCode】分割数组Java题解

Albert

算法 LeetCode 10月月更

“程”风破浪的开发者|APP自动化效果测试工具

智趣匠

学习方法 “程”风破浪的开发者 手机APP测试

“程”风破浪的开发者|我是如何快速学 Go 的?GoFrame 只用了 3 天时间就从小白变大佬?

王中阳Go

Go golang 学习方法 10月月更 “程”风破浪的开发者

算法题学习---链表内指定区间反转

桑榆

算法题 10月月更 C++

2022-10-24:以下go语言代码输出什么?A:3 3;B:3 4;C:0 0;D:0 1。 package main func main() { m := make(map[int]int

福大大架构师每日一题

golang 福大大 选择题

【愚公系列】2022年10月 Go教学课程 038-异常处理

愚公搬代码

10月月更

低代码无代码区别在哪?通过这5点来区别准没错

优秀

低代码 无代码

DevOps|1024程序员节如何做?介绍下我的思路

laofo

DevOps 研发效能 1024程序员节 快手

C# 线程的优先级

IC00

C# 学习 程序员 上位机 10月月更

C# 快捷菜单ConTextMenustrip控件学习

IC00

C# 学习 程序员 上位机 10月月更

View层、Controller层、Service层、Dao层的区别以及对应的功能

孙铭

service DAO 10月月更

Opencv 图像处理:数字图像的必会知识

timerring

OpenCV 计算机视觉 10月月更

Java实现随机人名抽取

魏铁锤

10月月更

Java领域又一神作!《凤凰架构》仅开源3小时,竟遭受Github万人哄抢

程序员小毕

程序员 架构 分布式 程序人生 系统设计

MapReduce作业生命周期

穿过生命散发芬芳

mapreduce 10月月更

Spring Boot 应用使用 application.yml 和 application.properties 的区别

Jerry Wang

Java mvc spring springboot 10月月更

Java | if语句和循环结构

陌上

ide Java、 10月月更

企业文档过多如何管理?文档协同能够帮到你

Baklib

文档 文档管理

亚马逊正在重塑MLOps_AI&大模型_Vishnu Prathish_InfoQ精选文章