企业第一次部署人工智能和构建机器学习项目的时候,往往把重点放在理论上。那么有没有一种模型,可以提供必要的结果?如果有,我们又该如何构建和训练这种模型呢?
根据IDC的数据显示,部署人工智能或者机器学习解决方案平均需要长达9个多月的时间。主要是因为数据科学家用来打造这些概念证明的工具,通常不能很好地转化为生产系统。IDC分析师SriramSubramanian说:“我们将研发的过程所需的时间称为‘模型速度’,即从开始到结束需要多长时间。”
企业可以利用MLOps解决上述问题。MLOps(Machine Learning Operations)是一组最佳实践、框架和工具,可以帮助企业管理数据、模型、部署、监控,以及其他利用理论概念验证AI系统并使之奏效的方方面面。
Subramanian进一步解释,“MLOps将模型速度缩短到几周——有时甚至是几天,就像使用DevOps加快应用构建的平均时间一样,这就是为什么你需要MLOps。”企业通过采用MLOps可以构建更多模型、更快地创新、应对更多的使用场景。“MLOps的价值定位很明确。”
据IDC预测,到2024年将有60%的企业使用MLOps来实施他们的机器学习工作流。Subramanian说,当他们对受访者调查采用人工智能和机器学习的挑战时,最主要的障碍之一就是缺少MLOps,仅次于成本。
在本文中,我们研究了MLOps是什么,如何演变的,以及企业组织需要完成和牢记什么,才能充分利用这种新兴的人工智能操作方法。
MLOps的演进
几年前,当Eugenio Zuccarelli首次开始构建机器学习项目的时候,MLOps还只是一组最佳实践。从那时起,Zuccarelli一直在多家企业从事人工智能项目,包括医疗和金融服务领域的企业,他看到,随着时间的推移MLOps开始发展到包含了各种工具和平台。
如今,MLOps为人工智能操作提供了一个相当强大的框架,Zuccarelli说,他现在是CVS Health的创新数据科学家,他提到了之前从事的一个项目,该项目旨在创建一个可以预测不良结果的应用,例如再入院或疾病进展。
“我们正在探索数据集和模型,并与医生进行沟通找出最佳模型所具备的特征。但要使这些模型真正有用,还需要让用户真正地用起这些模型。”
这意味着要打造一个可靠的、快速且稳定的移动应用,后端有一个通过API连接的机器学习系统。他说:“如果没有MLOps,我们将无法确保这一点。”
他的团队使用H2O MLOps平台和其他工具为模型创建了健康仪表板。“你肯定不希望模型发生重大变化,也不想引入偏见。健康仪表板让我们能够了解系统是否发生了变化。”
通过使用MLOps平台还可以对生产系统进行更新。他说:“在不停止应用工作的情况下换出文件是非常困难的。而MLOps可以在生产进行中、以系统影响最小的情况下换出系统。”
他说,MLOps平台随着逐渐成熟将会加速整个模型开发的过程,因为企业不必为每个项目都重新发明框架。数据管道管理功能对于人工智能的实施也至关重要。
“如果我们有多个需要相互通信的数据源,这时候MLOps就可以发挥作用了。你希望流入机器学习模型的所有数据都是一致的且高质量的。就像那句话说的,垃圾进,垃圾出。如果模型的信息很差,那么预测本身就会很差。”
MLOps的基础:一个不断变化中的目标
但不要认为,仅仅因为有那么多可用的平台和工具,就忽略了MLOps的核心原则。刚开始使用MLOps的企业应该记住,MLOps的核心是在数据科学和数据工程之间建立牢固的联系。
Zuccarelli说:“为了确保MLOps项目的成功,你需要数据工程师和数据科学家是在同一个团队内工作的。”
此外,防止偏见、确保透明度、提供可解释性以及支持道德平台所必需的工具,都还在开发之中,“这方面肯定还需要做很多工作,因为这是一个非常新的领域。”
因此,如果没有一个完整的交钥匙型解决方案可供采用,企业就必须非常了解如何让MLOps有效地实施人工智能的方方面面。这就意味着,要广泛地培养专业技能,技术咨询公司Insight的人工智能团队国家实践经理Meagan Gentry这样表示。
MLOps涵盖了从数据收集、验证和分析、到管理机器资源和追踪模型性能的整个范畴,有很多辅助工具是可以部署在本地、云端或者在边缘的,这些工具有的是开源的,有的是专属的。
但掌握技术只是其中一个方面,MLOps还借鉴了DevOps的敏捷方法和迭代开发的原则,Gentry说。此外,和任何敏捷相关的领域一样,沟通是至关重要的。
“每个角色的沟通都是很重要的,数据科学家和数据工程师之间的沟通,和DevOps的沟通,以及和整个IT团队的沟通。”
对于刚起步的公司来说,MLOps可能是令人困惑的,它有很多一般性原则,有几十家相关厂商,甚至还有非常多的开源工具集。
“这时候会遇到各种陷阱,”Capgemini Americas企业架构高级经理Helen Ristov说。“其中很多都还在开发中,现在还没有一套正式的指导方针,就像DevOps一样,这还是一项新兴技术,指导方针和相关政策需要一定时间才能推出。”
Ristov建议,企业应该从数据平台开始他们的MLOps之旅。“也许他们有数据集,但是这些数据集是在不同地方的,没有一个统一的环境。”
她说,企业不需要将所有数据转移到一个平台上,但确实需要一种方法从不同的数据源中引入数据,不同的应用,情况也各不相同。例如,数据湖非常适合那些以高频次进行大量分析、低成本存储的企业。MLOps平台通常有用于构建和管理数据管道并跟踪不同版本的训练数据工具,但这并不是一劳永逸的。然后是模型创建、版本控制、日志记录、衡量功能集、管理模型本身等其他方面。
“其中涉及大量的编码工作,”Ristov说,建立一个MLOps平台可能需要数月时间,而且在集成方面,平台供应商还有很多的工作要做。
“这些不同方向还有很大的发展空间,很多工具还在开发之中,生态系统非常庞大,人们只是选择他们所需的东西。MLOps还处于‘青春期’,大多数企业组织仍在寻找最理想的配置。”
MLOps的市场格局
IDC的Subramanian表示,MLOps市场规模预计将从2020年的1.85亿美元增长到2025年约7亿美元,但这个市场也有可能被严重低估了,因为MLOps产品通常与更大的平台捆绑在一起。他说,到2025年MLOps市场的真实规模可能超过20亿美元。
Subramanian说,MLOps厂商供应商往往分为三大类,首先是大型云提供商,例如AWS、Azure和Google Cloud,这种厂商是把MLOps功能作为一项服务提供给客户。
第二类是机器学习平台厂商,例如DataRobot、Dataiku、Iguazio等。
“第三类是过去所说的数据管理厂商,例如Cloudera、SAS和DataBricks等等。他们的优势在于数据管理能力和数据操作,然后扩展到机器学习能力,最终延伸到MLOps能力。”
Subramanian说,这三个领域都呈现出爆炸式增长,能让MLOps厂商脱颖而出的,是他们能否同时支持本地环境和云部署模型,是否能够实施可信的、负责任的人工智能,是否即插即用,是否容易扩展,这就是体现差异化的方面。”
根据IDC最近的一项调查显示,缺乏实施负责任AI的各种方法,是阻碍人工智能和机器学习普及的三大障碍之一,与缺乏MLOps一起并列第二。造成这种情况很大程度上是因为除了采用MLOps别无他选,Gartner人工智能和机器学习研究分析师Sumit Agarwal这样表示。
“其他方法都是手动的,所以,真的没有其他选择了。如果你想扩展的话,你需要自动化。你需要代码、数据以及模型的可追溯性。”
根据Gartner最近的一项调查显示,一个模型从概念验证到生产所需的平均时间已经从9个月缩短到7.3个月。“但是7.3个月时间仍然很长,企业组织有很多机会利用MLOps。”
MLOps带来的企业文化变革
Genpact公司全球分析负责人Amaresh Tripathy表示,实施MLOps还需要以企业AI团队的身份掀起一场文化变革。
“数据科学家给人们的印象通常是一个疯狂的科学家,试图大海捞针。但实际上数据科学家是发现者和探索者,而不是生产小部件的工厂。”企业经常低估自身所需要付出的努力。
“人们能更好地理解工程,对用户体验有这样那样的要求,但不知道为什么,人们对部署模型却完全不同。人们会假设所有擅长测试环境的数据科学家自然都会部署这些模型,或者可以派几个IT员工来部署,这是错误的。人们并不了解他们需要什么。”
很多企业也并不知道MLOps可能会给企业内部其他方面带来哪些连锁反应,因此经常导致企业内部发生巨大的变化。
“你可以把MLOps放在呼叫中心,平均响应时间实际上会增加,因为简单的事情交给了机器和人工智能来处理,而交给人类做的事情实际上需要更长的时间,因为这些事情往往更复杂。所以你需要重新考虑这些工作是什么,你需要什么样的人,这些人应该具备什么样的技能。”
Tripathy表示,如今,一个企业组织中只有不到5%的决策是由算法驱动的,但这种情况正在迅速变化。“我们预计未来五年,将有20%到25%的决策是由算法驱动的,我们看到的每一个统计数据都表明,我们处于人工智能快速扩展的拐点上。”
他认为,MLOps是关键的一个部分。如果没有MLOps,你就无法始终如一地使用人工智能。MLOps是企业AI规模化的催化剂。