Skip to content

Latest commit

 

History

History
121 lines (61 loc) · 8.81 KB

2438.md

File metadata and controls

121 lines (61 loc) · 8.81 KB

什么是 MLOps 工程师?

原文:www.kdnuggets.com/2022/03/mlops-engineer.html

什么是 MLOps 工程师?

图片由Freepik创建

介绍

MLOps 是数据行业中一个相对较新的术语。在过去,公司只专注于聘请数据科学家和机器学习从业者。这些人可以构建预测模型,帮助公司自动化工作流程并做出关键决策。

然而,随着时间的推移,机器学习项目开始对组织造成更多的损害而非好处。当投入生产时它们失败了,导致了商业机会的丧失和客户的不满。

为什么会发生这种情况?

从理论上讲,这些公司做得一切都很对。他们聘请了一支经验丰富的数据科学家团队,这些团队拥有构建技术上可靠模型的能力。他们还拥有领域专家,清晰地定义了业务用例,并成功地将问题陈述转化为机器学习项目。

这些举措所构建的模型在测试环境中表现出色,但在交付给最终用户时却失败了。这是一个没人能预测到的结果,并且导致组织损失了数百万美元。

问题在于:

数据科学家的重点仅在于模型构建。一旦这些机器学习模型交到最终用户手中,就没有合适的系统来确保它们在实际环境中表现良好。模型在未经过训练的环境中表现可能会大相径庭。

由于机器学习对大多数组织来说都是全新的,这些因素在过去没有被考虑在内,这导致了灾难性的后果和糟糕的表现。

这里有几个由于缺乏持续模型监控和维护而导致的实际机器学习项目失败的例子:

Predpol 是一家旨在通过统计分析预测贫困犯罪的公司。该软件可以预测犯罪发生的时间和地点,并派遣警察到该地区进行逮捕。然后,算法会在这些数据上重新训练,以便进行未来的犯罪预测。

具有讽刺意味的是,上述过程最终形成了一个反馈循环。每次逮捕发生时,模型都会被更新,并将更多的执法人员派往同一地区。这反过来导致特定地区的逮捕人数增加,这些数据又被反馈到模型中。Predpol 系统最终在警察更多的地区预测了更高的犯罪率,而不是犯罪分子更多的地区。

这是一个失败的机器学习项目的例子。模型预测被泄露到了训练数据中,这些数据随后被用于进一步增强算法。

现实世界是不可预测且不断变化的。因此,一个表现良好的机器学习模型可能在下一天就会变得非常不准确。

一个例子可以在一个致力于为医疗保健构建机器学习模型的公司中看到。这个组织部署了一个算法来预测 30 天内的医院再入院率。

大约 2–3 个月后,最初有效的模型开始做出非常不准确的预测。每个部署该模型的医院都遇到了同样的问题,算法的低效使客户不满。

一个团队被分配去调查此事,他们发现模型性能每次训练数据库发生变化时都会下降。例如,如果医院更改了他们接受的保险类型,这直接影响到前往急诊室的患者类型,从而对模型的准确性产生负面影响。

在意识到问题后,他们立即着手解决情况。一个由技术专家和业务精英组成的团队被分配去监控输入数据的变化,并确保这些变化在预测算法中得到反映。

这种输入数据变化的现象被称为数据漂移,是公司中模型性能下降最常见的原因之一。

例如,如果你在一个主要受众为 18–34 岁女性的组织工作,并且在她们的行为属性上训练了你的模型,你就会在算法中引入偏差。

如果公司推出了一个面向年龄较大的新产品线,模型将不再相关。需要在准确代表公司当前用户行为的数据上重新训练模型。

数据漂移需要迅速检测,并且模型更新应尽快完成,以确保公司面临的损失最小。

季节性是指数据在特定时间间隔内经历规律性和可预测性变化的特征。机器学习模型需要定期更新,以考虑季节性变化。

例如,如果你基于过去 3 个月的数据为星巴克构建推荐系统,你的算法将根据客户在那个特定季节喜欢的饮品进行预测。

在接下来的几个月里,一旦气候发生变化,大多数用户的咖啡饮用习惯也会发生变化。如果这种变化没有被你构建的模型捕捉到,你可能会试图以不受欢迎的饮品吸引客户,这将导致公司损失。

MLOps 工程师的崛起

上述仅是一些例子,如果不加以考虑,这些因素可能对生产化算法的性能产生巨大负面影响。

随着组织因无效的机器学习项目而开始浪费时间和金钱,他们调查了这个问题。为什么尽管聘请了高能力的数据科学家,他们却看不到结果?

一旦雇主们明白问题在于缺乏适当的模型部署程序,他们意识到需要一个全新的角色——一个既具备机器学习又具备操作技能的人,能够处理模型构建后的工作流程。

这个职位被称为 MLOps(机器学习操作)。

MLOps 工程师所需的技能

MLOps 工程师负责模型的部署和持续维护。

如果你想成为一名 MLOps 工程师,你需要了解机器学习算法。你将负责重构其他数据科学家的代码,以使其准备好投入生产,并且需要能够理解他们的工作。

除了机器学习技能,你还需要具备 DevOps 的基础知识。DevOps 是一个将软件开发人员和运维团队的工作范围整合起来以自动化工作流程的角色。MLOps 工程师的角色与 DevOps 工程师非常相似,只是前者处理的是机器学习模型。

你需要学习 DevOps 概念,例如使用 CI/CD 管道自动化工作流程。CI 和 CD 分别代表持续集成和持续部署,它们使数据科学家所做的代码更改能够快速而可靠地交付到生产环境中。

MLOps 工程师角色——下一步

尽管大多数数据爱好者倾向于专注于发展他们的机器学习和数据科学技能,但成为数据科学家并不是你在行业中的唯一职业选择。

MLOps 正在快速增长,该领域的解决方案市场预计到 2025 年将增长至 40 亿美元

此外,MLOps 领域包含大量的职业机会,因为公司目前正面临数据科学家和 DevOps 工程师技能组合的员工短缺

如果您正在考虑换工作,并且目前在权衡各种选择,考虑追求 MLOps 职业可能是个好主意,因为这是一个相对未饱和的领域,具有惊人的成长机会

Natassha Selvaraj 是一位自学成才的数据科学家,热衷于写作。您可以在LinkedIn上与她联系。


我们的三大课程推荐

1. 谷歌网络安全证书 - 快速进入网络安全职业生涯。

2. 谷歌数据分析专业证书 - 提升您的数据分析技能

3. 谷歌 IT 支持专业证书 - 支持您的组织进行 IT 工作


更多相关主题