为什么数据科学家需要承担开发运维的工作?

作者 | Caleb Kaiser

译者 | 弯月,责编 | 夕颜

头图 | CSDN下载自视觉中国

出品 | CSDN(ID:CSDNnews)

以下为译文:

 

如果你需要创建一个生产环境下的机器学习流水线,那么开始的部分工作(设计和训练模型等)显然属于数据科学的范畴。

 

某种意义上,当你需要将模型投入生产环境时,需要将常规的流水线从数据科学领域转移到基础设施领域。直观地讲,这时数据科学团队需要将工作移交给其他人,即开发运维。

 

然而,现实并非总是如此。越来越多的公司开始要求数据科学家负责将模型部署到生产的工作。

 

据统计,大多数数据科学家都需要花费25%以上的工作时间来部署模型。有趣的是,在数据科学家职位的招聘广告中也经常看见Kubernetes、Docker和EC2之类的技术要求。

 

为什么数据科学家不应该处理模型服务?

 

简单来说,模型服务是基础架构的问题,不属于数据科学范畴。我们可以比较一下这两个领域使用的技术栈:

             

当然,有些数据科学家喜欢开发运维,他们也可以承担跨部门的工作,但是这种情况比较罕见。事实上,我认为大家都高估了数据科学与开发运维之间的重叠度。

 

我们反过来看,你是否认为开发运维工程师能够设计新的模型体系结构,或者拥有大量调整超参数的经验?可能那些具备了数据科学知识,而且愿意学习一切的开发运维工程师确实能够胜任这些工作,但是将这些工作视为开发运维团队的职责就很奇怪了。

 

将心比心,数据科学家也不应该操心自动伸缩或编写Kubernetes清单文件的工作。那么为什么各个公司会这样要求他们呢?

 

各个公司忽视了基础设施的工作

 

许多组织对于模型服务的复杂程度存在根本的误解。通常他们的态度是“利用Flask打包一下模型就足够了。”

 

然而现实情况是,无论规模如何,任何模型服务都涉及一系列基础设施的难题。例如:

 

  • 如何在保证不停机的情况下,自动更新生产中的模型?

  • 如何有效地自动伸缩一个在GPU上运行的5GB模型?

  • 如何监视和调试生产部署?

  • 如何在控制云消费的情况下,完成所有的工作?

 

平心而论,现如今的机器学习基础设施是一个非常新的概念。两年前,Uber才透露了他们最先进的内部机器学习基础设施:Michelangelo。机器学习基础设施的编写方式多种多样。

 

但是,很多组织也很好地示范了如何在没有Uber工程资源的情况下,将数据科学与开发运维的工作重心分开来。

 

如何分离数据科学与开发运维的工作?

 

在这个话题上,我的很多看法主要来自我从事的开源模型服务平台Cortex上的工作。

 

我们通过模型-API-客户端的抽象架构,概念化了数据科学、开发运维与产品工程之间的交接工作:

 

  • 模型:经过训练的模型,即便是没有数据科学专业知识的工程师也可以使用predict()函数。

  • API:基础设施层接受训练好的模型,然后部署为Web服务。我们构建了Cortex来自动化这一层的工作。

  • 客户端:实际与部署在API层中的Web服务交互的应用程序。

 

在模型阶段,数据科学家会训练并导出模型。他们还将负责编写predict()函数,用于根据模型生成和过滤预测。

 

接下来,他们会将该模型移交给API,这个阶段的工作完全由开发运维部门负责。对于开发运维部门来说,该模型只是一个Python函数,只需将其转换为微服务,然后进行容器化和部署。

 

在模型-微服务启动后,产品工程师就可以把它们当作API进行查询。对他们来说,该模型只是一个Web服务。

 

模型-API-客户端体系结构不是分割数据科学与工程问题的唯一方法,但这个例子说明了你完全可以在数据科学和开发运维之间划清界线,同时无需引入过多的开销或构建昂贵的端到端平台。

 

只需在机器学习的工作流程中建立明确的交接点,就可以将数据科学家解放出来,让他们去做擅长的工作:数据科学。

作者简介

Caleb Kaiser,机器学习基础设施工程师。

原文链接:

https://towardsdatascience.com/why-are-data-scientists-doing-devops-bc36d00584c3

本文为CSDN翻译文章,转载请注明出处。

【END】

6月2日20:00,CSDN 创始人&董事长、极客帮创投创始合伙人蒋涛携手全球顶级开源基金会主席、董事,聚焦中国开源现状,直面开发者在开源技术、商业上的难题,你绝不可错过的开源巅峰对谈!立即免费围观

更多精彩推荐
☞大佬 Zed 玩转跨界:不会绘画的音乐家不是好程序员
☞航拍高手、吉他十级,6500+Star 开源项目作者,后浪程序员给力!
☞面试官:你的 SQL 一般有几个 join?| 原力计划
☞基于深度学习和传统算法的人体姿态估计,技术细节都讲清楚了
☞面试中遇到这 3 个SQL问题,最容易掉坑里!
☞好扑科技结合区块链行业发展趋势,重磅推出“好扑区块链合伙人”计划
点击阅读原文,精彩继续。
你点的每个“在看”,我都认真当成了喜欢
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值