加入收藏 | 设为首页 | 会员中心 | 我要投稿 沧州站长网 (https://www.0317zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

关于DevOps,数据科学家需要知道这些

发布时间:2021-07-05 21:38:56 所属栏目:大数据 来源:互联网
导读:随着机器学习(ML)在过去几年的快速发展,开始ML实验变得非常容易。多亏了像scikit-learn和Keras这样的库,用几行代码就可以创建模型。 但是,将数据科学项目转化为有意义的应用程序比以往任何时候都更加困难,比如将模型转化为团队决策或成为产品的一部分。

随着机器学习(ML)在过去几年的快速发展,开始ML实验变得非常容易。多亏了像scikit-learn和Keras这样的库,用几行代码就可以创建模型。

但是,将数据科学项目转化为有意义的应用程序比以往任何时候都更加困难,比如将模型转化为团队决策或成为产品的一部分。典型的ML项目涉及到许多不同的技能集,对于任何一个人来说,如果不是完全不可能的话,那也是一种挑战——如此困难,少有的同时还能开发高质量软件和游戏工程师的数据科学家被称为独角兽!

随着这一领域的成熟,很多工作将需要软件、工程和数学技能的结合,有些人说他们已经这么做了。

引用一位无与伦比的数据科学家/工程师/评论家Vicki Boykis在她的博客data science is different now里的话:

越来越清楚的是,在炒作周期的后期阶段,数据科学正逐渐接近工程,数据科学家需要的技能不再是可视化和基于统计的,而是与传统的计算机科学课程更加一致。

为什么数据科学家需要了解DevOps

那么,在众多的工程和软件技能中,数据科学家应该学习哪一种呢?我的钱花在DevOps上了。

DevOps是development和operations的合成词,于2009年在比利时的一次会议上正式诞生。这次会议的召开是为了应对科技公司在历史上经历过深刻分歧的两个方面之间的紧张关系。软件开发人员需要快速行动并经常进行试验,而运维团队则优先考虑服务的稳定性和可用性(这些人让服务器每天都在运行)。他们的目标不仅是对立,而且是竞争。

这听起来很像今天的数据科学。数据科学家通过实验创造价值:数据建模、组合和转换的新方法。与此同时,雇佣数据科学家的组织受到稳定的激励。

这种划分的后果是深远的:在最新的Anaconda数据科学状态”报告中,“不到一半(48%)的受访者认为他们可以证明数据科学对他们的组织的影响”。据估计,绝大多数由数据科学家创建的模型最终都被束之高阁。我们还没有强大的实践来在创建模型的团队和部署模型的团队之间传递模型。数据科学家和实现他们工作的开发人员和工程师拥有完全不同的工具、约束条件和技能集。

DevOps的出现就是为了解决软件中的这种僵局,就像开发人员vs运维一样。它取得了巨大的成功:许多团队已经从每几个月部署一次新代码发展到一天部署几次。既然我们已经有了机器学习和操作,那么现在就该考虑MLOps了——来自DevOps的用于数据科学的原则。

引入持续集成

DevOps既是一种哲学,也是一套实践,包括:

  • 自动化你所能做到的一切
  • 快速获得对新想法的反馈
  • 减少工作流程中的手工交接

在一个典型的数据科学项目中,我们可以看到一些应用:

  • 自动化你所能做到的一切。自动化部分重复和可预测的数据处理、模型训练和模型测试。
  • 快速获得对新想法的反馈。当你的数据、代码或软件环境发生变化时,立即在类似生产的环境(即具有预期在生产中具有的依赖关系和约束的机器)中进行测试。
  • 减少工作流程中的手工交接。为数据科学家寻找机会,尽可能多地测试他们自己的模型。不要等到有开发人员时才查看模型在类似生产环境中的行为。

实现这些目标的标准DevOps方法是一种称为持续集成(CI)的方法。

要点是,当你更改项目的源代码时(通常通过Git提交注册更改),你的软件将被自动构建和测试。每个动作都会引发反馈。CI通常与Git-flow一起使用,Git-flow是一种开发架构,其中的新特性构建在Git分支上。当一个特性分支通过自动化测试时,它就成为了一个候选分支,可以合并到主分支中。

(编辑:沧州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读