封面由编辑
你可能已经熟悉了机器学习及其在当今世界的用途。人工智能(AI)和机器学习(ML)促进了智能软件的发展,能够准确预测结果,并将通常由人类完成的各种工作自动化。将机器学习纳入一个应用程序是至关重要的,对组织来说,确保其顺利运行则更为关键。
公司为此利用一套被称为 "机器学习操作"或MLOps的最佳实践。而且,MLOps对于任何企业的繁荣未来都变得至关重要。
根据德勤的数据,到2025年,市场可能会扩大40亿美元,意味着自2019年以来增长了近12倍。
尽管机器学习给各种业务流程带来了众多优势,但企业很难实施ML方法来提高生产力。
最佳MLOps实践以及如何应用它们
你不能只是与一个新的SaaS供应商签约或创建新的云计算实例,并期望MLOps发挥作用。它需要细致的准备和跨团队和部门的统一方法,无论你是 启动了一个DAO还是注册了一个LLC。以下是成功实施MLOps的一些最佳实践。
在几个细分市场上验证一个模型
模型可以被重复使用,但软件不能。一个模型的有用性会随着时间的推移而降低,这就需要一个重新培训的过程。每一种新的情况都需要对模型进行调整。你需要一个训练管道来完成这个任务。
虽然实验监控可以帮助我们管理模型的版本和可重复性,但在使用模型之前验证模型也是至关重要的。
离线或在线验证是企业可以根据他们的优先事项来使用的选项。使用测试数据集来评估模型对实现商业目标的适合性,集中在精度、准确度等指标上。在做出推广决定之前,应将这些指标与当前的生产/基线模型进行比较。
如果你的实验在元数据方面得到良好的跟踪和管理,就有可能轻松地进行推广或回滚。在这篇文章中,我们将看看用A/B测试来验证一个在线模型,看看它在真实数据上是否表现良好。
机器学习系统越来越意识到他们可以从数据中获取的偏见。这方面的一个例子是Twitter的图片裁剪工具,它对一些用户是无效的。通过比较你的模型对不同用户群的表现,可以发现并修复这种不准确的情况。还应该在各种数据集上测试模型的性能,以确认它符合要求。
尝试新事物,并跟踪结果
超参数搜索和特征工程是不断发展的领域。ML团队的目标是,考虑到当前的技术水平和数据中不断变化的模式,尽可能产生最好的系统。
然而,这需要与最新的趋势和标准保持一致。同时,测试这些概念,看看它们是否能帮助你的机器学习(ML)系统表现得更好。
数据、代码和超参数都可以在实验中使用。每个可能的变量组合都会产生指标,可以与其他实验的结果进行比较。调查发生的环境也有可能会改变结果。
你可能还想部署 时间跟踪软件,以确保结果的及时性,并跟踪每个项目的时间。
了解你的MLOps的成熟度
微软和谷歌等领先的云计算供应商采用了MLOps的成熟度模型。
组织变革和新的工作实践是实施MLOps的必要条件。随着组织的系统和程序开始发展,这种情况逐渐发生。
任何成功的MLOps实施都需要对组织的MLOps成熟度进展进行诚实评估。在进行了有效的成熟度评估后,企业可以学习提升到一个成熟度等级。对部署过程的改变,如实施DevOps或引进新的团队成员,是其中的一部分。
有各种方法来存储机器学习的数据,如特征存储。特征存储对于拥有相对发达的数据基础设施的组织是有帮助的。他们需要确保不同的数据团队使用相同的特征,并减少重复劳动的数量。如果一个组织只有几个数据科学家或分析师,那么特征存储可能不值得努力。
组织可以通过利用MLOps成熟度模型,让他们的技术、流程和团队堆积在一起,共同成熟。它确保了在实施前迭代和测试工具的可能性。
做一个成本-效益分析
确保你了解MLOps可以为你的组织做什么。如果你在进行另一次购买时遵循你的策略,你可以有效地处理每一笔交易。假设你是一个买车的人,想为自己挑选一辆最好的车。当然,你会有广泛的可能性--例如,跑车、SUV、紧凑型车、豪华轿车等。你必须首先选择哪个类别最适合你的需求,以实现成本效益的购买,然后根据你的预算分析不同的车型和细分市场。
在为你的公司选择最佳MLOps技术时,同样的规则也适用。例如,跑车和SUV有不同的优势和劣势。以同样的方式,你可以分析几个MLOps工具的优势和劣势。
为了做出 明智的战略决策,你必须考虑几个变量,包括你公司的预算和目标,你打算进行的MLOps活动,你打算使用的数据集的来源和格式,以及你团队的能力。
保持开放的沟通渠道
产品经理和用户体验设计师可以影响支持你的系统的产品如何与你的客户接触。机器学习工程师、DevOps工程师、数据科学家、数据可视化专家和软件开发人员都在一起工作,实施和管理一个长期的机器学习系统。
员工的表现由经理和企业主审查和认可,而合规专家则验证活动是否符合公司的政策和监管标准。
如果机器学习系统在面对不断变化的用户和数据模式及期望时,能继续满足业务目标,就需要进行沟通。
将自动化纳入你的工作流程
一个公司的MLOps成熟度可能会由于广泛和先进的自动化而产生。在缺乏MLOps的环境中,许多机器学习任务必须由人工完成。这包括特征工程、数据清理和转换、将训练和测试数据切成小块、建立模型训练代码等。
数据科学家通过手动执行这些程序,创造了错误的空间,并浪费了本可用于探索的时间。
连续再训练,数据分析师可以建立验证、数据摄取、特征工程、实验和模型测试的管道,是自动化行动的一个完美例子。持续再训练可以防止模型漂移,通常被视为机器学习自动化的早期步骤。
结论
总的来说,机器学习是复杂的,但如果你采用MLOps来改善参与其开发和实施的团队之间的沟通,它是可能的。这不仅是详细和高效的,而且还可能为公司建立新的机器学习系统节省资金和时间。
**Nahla Davies**是一名软件开发人员和技术作家。在全身心投入技术写作工作之前,她设法--除其他耐人寻味的事情外--在一家Inc.公司担任首席程序员。5,000家体验式品牌组织的首席程序员,其客户包括三星、时代华纳、Netflix和索尼。