数据科学家 数据工程师

While working in a software project it is very common and, in fact, a standard to start right away versioning code, and the benefits are already pretty obvious for the software community: it tracks every modification of the code in a particular code repository. If any mistake is made, developers can always travel through time and compare earlier versions of the code in order to solve the problem while minimizing disruption to all the team members. Code for software projects is the most precious asset and for that reason must be protected at all costs!

在软件项目中工作时,它是非常普遍的,实际上是立即开始版本控制代码的标准,对于软件社区来说,好处已经非常明显:它跟踪特定代码存储库中对代码的每次修改。 如果有任何错误,开发人员可以随时浏览并比较早期版本的代码,以解决问题,同时最大程度地减少对所有团队成员的破坏。 软件项目代码是最宝贵的资产,因此必须不惜一切代价保护它!

Well, for Data Science projects, data can also be considered the crown jewels, so why us, as Data Scientists, don’t treat as the most precious thing on earth through versioning control?

好吧,对于数据科学项目,数据也可以被视为皇冠上的明珠,那么为什么我们作为数据科学家不通过版本控制将其视为地球上最宝贵的东西呢?

For those familiar with Git, you might be thinking, “Git cannot handle large files and directories.. at least it can’t with the same performance as it deals with small code files. So how can I version control my data in the same old fashion we version control code?”. Well, this is now possible, and it’s easy as just typing git cloneand see the data files and ML model files saved in the workspace, and all this magic can be achieved with DVC.

对于熟悉Git的人来说,您可能会想: “ Git无法处理大文件和目录。至少,它不能具有与处理小代码文件相同的性能。 那么如何以与版本控制代码相同的旧版本来控制数据呢?”。 嗯,这已经成为可能,而且很容易,只需键入git clone并查看保存在工作区中的数据文件和ML模型文件,并且所有这些魔力都可以通过DVC来实现。

DVC快速入门 (Quick start with DVC)

First things first, we have to get DVC installed in our machines. It’s pretty straightforward and you can do it by following these steps.

首先,我们必须在计算机中安装DVC。 这非常简单,您可以按照以下步骤进行操作 。

As I’ve already mentioned, tools for data version control such as DVC makes it possible to build large projects while making it possible to reproduce the pipelines. Using DVC it’s very simple to add datasets into a git repository, and when I mean by simple, is as easy as typing the line below:

正如我已经提到的那样,用于数据版本控制的工具(例如DVC)使构建大型项目成为可能,同时又可以重现管道。 使用DVC,将数据集添加到git存储库非常简单,而我的意思很简单,就像键入以下行一样:

dvc add path/to/dataset

Regardless of the size of the dataset, the data is added to the repository. Assuming that we also want to push the dataset into the cloud, it is also possible with the below command:

无论数据集的大小如何,数据都会添加到存储库中。 假设我们也想将数据集推送到云中,也可以使用以下命令:

dvc push path/to/dataset.dvc

Out of the box, DVC supports many cloud storage services such as S3, Google Storage, Azure Blobs, Google Drive, etc… And since the dataset was pushed to the cloud through the version control system, if I clone the project into another machine, I’m able to download the data, or any other artifact, using the following command:

DVC开箱即用,支持许多云存储服务,例如S3,Google Storage,Azure Blob,Google Drive等。由于数据集是通过版本控制系统推送到云的,因此如果我将项目克隆到另一台计算机上,我可以使用以下命令下载数据或任何其他工件:

dvc pull

Well, now that you know how to start with DVC, I suggest you to go and further explore the tool, or similar ones. Version control should be your best friend as a Data Scientist, as they allow not only to version datasets but also to create reproducible pipelines, while keeping all the developments traceable and reproducible.

好了,既然您知道如何开始使用DVC,我建议您继续研究该工具或类似工具。 作为数据科学家,版本控制应该是您最好的朋友,因为它们不仅允许版本数据集,而且允许创建可复制的管道,同时保持所有开发的可追溯性和可复制性。

If this hasn’t yet convinced, next I’ll tell why you must start versioning control your data!!

如果尚未确定,接下来我将告诉为什么必须开始版本控制您的数据!

为什么要开始使用数据版本控制? (Why should I start using data version control?)

1.保存并复制所有数据实验 (1. Save and reproduce all of your data experiments)

As Data Scientists we know that to develop a Machine Learning model, is not all about code, but also about data and the right parameters. A lot of times, in order to find the perfect match, experimentation is required, which makes the process highly iterative and extremely important to keep track of the changes made as well as their impacts on the end results. This becomes even more important in a complex environment where multiple data scientists are collaborating. In that sense, if we are able to have a snapshot of the data used to develop a certain version of the model and have it versioned, it makes the process of iteration and model development not only easier but also trackable.

作为数据科学家,我们知道开发机器学习模型不仅与代码有关,而且与数据和正确的参数有关。 很多时候,为了找到完美的匹配,需要进行实验,这使得该过程具有高度的重复性,并且对于跟踪所做的更改及其对最终结果的影响非常重要。 在由多个数据科学家协作的复杂环境中,这一点变得更加重要。 从这个意义上讲,如果我们能够拥有用于开发模型的特定版本的数据的快照并对其进行版本化,那么它不仅使迭代和模型开发过程变得更加容易而且可跟踪。

2.调试和测试 (2. Debugging and testing)

While playing around in Kaggle competitions many times we do not understand the real challenges inherent to the development of an ML-based solution while working with production systems. In fact, one of the biggest challenges is to deal with the variety of data sources and the amount of data that we’ve available. Sometimes can be a bit daunting to reproduce the results of experimentation if we are not even able to retrieve the exact dataset that has been used. Data version control can ease these issues and make the process of machine learning solutions development must simpler, organized, and reproducible.

当多次参加Kaggle比赛时,我们不了解在与生产系统一起工作时开发基于ML的解决方案所固有的真正挑战。 实际上,最大的挑战之一是处理各种数据源和我们可用的数据量。 如果我们甚至无法检索已使用的确切数据集,有时要重现实验结果可能会有些艰巨。 数据版本控制可以缓解这些问题,并使机器学习解决方案的开发过程必须更简单,更有条理并且可重现。

3.合规与审计 (3. Compliance and auditing)

Privacy regulations, such as GDPR, already request companies and organizations to demonstrate compliance and history of the available data sources. The ability to track data version provided by version control tools is the first step to have companies data sources ready for compliance, and an essential step in maintaining a strong and robust audit train and risk management processes around data.

隐私法规(例如GDPR)已经要求公司和组织证明合规性和可用数据源的历史记录。 跟踪版本控制工具提供的数据版本的能力是使公司数据源准备好合规的第一步,并且是维持围绕数据的强大而强大的审核培训和风险管理流程的重要步骤。

4.协调软件和数据科学团队 (4. Align software and data science teams)

Sometimes, to have Data Science and Software teams talking the same language can be quite challenging and can highly depend on the profiles involved in the interactions between the teams. To start implementing some of the good practices from the software into the data science processes, can help not only to align the work between the teams involved, but also to accelerate the development and integration of the solutions.

有时,让数据科学和软件团队说相同的语言可能会非常具有挑战性,并且在很大程度上取决于团队之间交互所涉及的配置文件。 从软件到数据科学流程开始实施一些良好实践,不仅可以帮助使相关团队之间的工作保持一致,还可以加快解决方案的开发和集成。

结论 (Conclusions)

Data science is had to productize, and one of the main reasons for that is because there are too many mutable elements, such as data. The concept of versioning for data science applications can be interpreted in many possible ways, from models to data versioning. This article aimed to cover the importance and benefits of versioning data for the data science teams, but there are many more aspects that we should pay attention to as Data Scientists. In the end, keeping an eye on continuous delivery principles is very important for the success of ML-based solutions!

数据科学必须进行生产,其主要原因之一是因为可变元素(例如数据)太多。 从模型到数据版本控制,可以采用许多可能的方式来解释数据科学应用程序的版本控制概念。 本文旨在介绍对数据科学团队进行数据版本控制的重要性和好处,但是作为数据科学家,我们还有许多方面应注意。 最后,密切注意连续交付原则对于基于ML的解决方案的成功非常重要!

Fabiana Clemente is CDO at YData.

Fabiana Clemente YData的 CDO

Improved data for AI

改善AI数据

YData provides a data-centric development platform for Data Scientists to work to high-quality and synthetic data.

YData为数据科学家提供了以数据为中心的开发平台,以处理高质量和合成数据。

翻译自: https://medium.com/swlh/4-reasons-why-data-scientists-should-version-data-672aca5bbd0b

数据科学家 数据工程师


http://www.taodudu.cc/news/show-995231.html

相关文章:

  • 数据可视化 信息可视化_可视化数据以帮助清理数据
  • 使用python pandas dataframe学习数据分析
  • 前端绘制绘制图表_绘制我的文学风景
  • 回归分析检验_回归分析
  • 数据科学与大数据技术的案例_主数据科学案例研究,招聘经理的观点
  • cad2016珊瑚_预测有马的硬珊瑚覆盖率
  • 用python进行营销分析_用python进行covid 19分析
  • 请不要更多的基本情节
  • 机器学习解决什么问题_机器学习帮助解决水危机
  • 网络浏览器如何工作
  • 案例与案例之间的非常规排版
  • 隐私策略_隐私图标
  • figma 安装插件_彩色滤光片Figma插件,用于色盲
  • 设计师的10种范式转变
  • 实验心得_大肠杆菌原核表达实验心得(上篇)
  • googleearthpro打开没有地球_嫦娥五号成功着陆地球!为何嫦娥五号返回时会燃烧,升空却不会?...
  • python实训英文_GitHub - MiracleYoung/You-are-Pythonista: 汇聚【Python应用】【Python实训】【Python技术分享】等等...
  • 工作失职的处理决定_工作失职的处理决定
  • vue图片压缩不失真_图片压缩会失真?快试试这几个无损压缩神器。
  • 更换mysql_Docker搭建MySQL主从复制
  • advanced installer更换程序id_好程序员web前端培训分享kbone高级-事件系统
  • 3d制作中需要注意的问题_浅谈线路板制作时需要注意的问题
  • cnn图像二分类 python_人工智能Keras图像分类器(CNN卷积神经网络的图片识别篇)...
  • crc16的c语言函数 计算ccitt_C语言为何如此重要
  • python 商城api编写_Python实现简单的API接口
  • excel表格行列显示十字定位_WPS表格:Excel表格打印时,如何每页都显示标题行?...
  • oem是代工还是贴牌_代加工和贴牌加工的区别是什么
  • redis将散裂中某个值自增_这些Redis命令你都掌握了没?
  • opa847方波放大电路_电子管放大电路当中阴极电阻的作用和选择
  • 深度学习数据扩张_适用于少量数据的深度学习结构

数据科学家 数据工程师_数据科学家应该对数据进行版本控制的4个理由相关推荐

  1. python爬取公交车站数据_Python爬虫实例_城市公交网络站点数据的爬取方法

    爬取的站点:http://beijing.8684.cn/ (1)环境配置,直接上代码: # -*- coding: utf-8 -*- import requests ##导入requests fr ...

  2. python数据存储与读取_【Python爬虫】数据保存与读取

    1. Open方法 使用with open()新建对象 写入数据 # -*- coding: utf-8 -*- # __author__ = 'Carina' import requests imp ...

  3. 结构化数据抽取成三元组_干货丨AI在数据防泄漏中的应用——知识图谱之知识抽取...

    随着技术的不断发展,AI(Artificial Intelligence,人工智能)逐渐在社会经济发展的方方面面深入,成为信息化时代最重要的支柱技术之一. 在数据安全领域领域,AI技术所能起到的作用越 ...

  4. vb6 串口同时读取写入数据怎么避免冲突_分布式场景下的数据复制究竟怎么做...

    主从复制 集群中有一个主节点,写操作都必须经过主节点完成,读操作主从节点都可以处理. 同步复制 数据在副本上落盘才返回. 优点:保证在副本上的数据是最新数据. 缺点:延迟高,响应慢. 异步复制 数据不 ...

  5. 计算机大数据的前景方向_研究未来计算机大数据的发展方向

    龙源期刊网 http://www.qikan.com.cn 研究未来计算机大数据的发展方向 作者:贺彬 来源:<山东工业技术> 2019 年第 20 期 摘 要:随着计算机的普及,计算机在 ...

  6. 社会治理大数据平台怎么建_平度市社会治理大数据平台

    单位简介 申报单位:青岛城市大数据运营有限公司 承建单位:青岛城市大数据运营有限公司,杭州数梦工场有限公司 青岛城市大数据运营有限公司是由平度市城市开发集团有限公司与杭州数梦工场科技有限公司(独角兽企 ...

  7. excel找到对应数据的列指标_三种方式制作数据地图

    数据地图,因为地理信息的加持,信息丰富,直观明显,广泛地应用于多个行业,数据分析必备利器. 方式一:通过Excel制作数据地图 本文大篇幅在介绍这种方式的具体操作方法,共分为四个步骤.概括来说其主要通 ...

  8. 大数据审计的发展_科技赋能下大数据审计的实施路径与发展趋势

    大数据审计的现状      大数据应用范围不断扩大,但审计理念仍需加强      随着大数据技术优势的凸显,无论是国家机关审计中还是企业内部审计中,越来越倾向于应用大数据技术开展审计.大数据审计的推进 ...

  9. python大数据运维工程师_运维工程师转型大数据怎么样

    运维工作没意思,运维没有前途,运维会被取代--让很多的运维工程师感受到前途无"亮",随着资本寒冬的来临,以及各种新技术的不断出现,很多运维工程师开始走向了转型的道路.那么在如今的数 ...

  10. python大数据运维工程师_【大数据科普系列之二】大数据运维工程师

    大数据系列岗位要求,大数据运维可能是"技术含量最高"的职位之一,这里说的大数据运维主要是指hadoop生态体系方面的运维,在一些小公司或者传统行业的大公司也会使用oracle.db ...

最新文章

  1. Spring MVC_HandlerInterceptorAdapter的使用
  2. mysql的分页怎么不对_mysql一对多关联查询分页错误问题的解决方法
  3. 视觉与图像系列 几何光学I 近轴光学1 Fermat原理
  4. 图像代数运算:平均值去噪,减去背景
  5. Beginning C# Objects 读书笔记(一)
  6. python3出现module importlib._bootstrap has no attribute SourceFileLoader解决办法
  7. BAP存储属性的思想
  8. python 科学计算设计_《Python科学计算-(第2版)》怎么样_目录_pdf在线阅读 - 课课家教育...
  9. 特斯拉召回部分进口Model S、Model X电动汽车
  10. 20201015:力扣第210场周赛题解(上)
  11. ul在Firefox和IE下的不同表现
  12. 屏蔽系统的故障定位案例
  13. 有加密狗的软件怎样实现全网络电脑用_加密狗应用领域有哪些?为您揭开7大行业软件保护的奥秘...
  14. ❤️马上七夕,不懂浪漫?带你用Python“码”上七夕【建议收藏】❤️
  15. 计算机三级网络技术 = =
  16. 网络丢包的四大原因和修复方法
  17. 2021年N1叉车司机最新解析及N1叉车司机模拟考试
  18. 多个mysql共存_双mysql共存(MySQL8.0与MySQL5.7)
  19. Origin绘图 默认字体设置
  20. 一键重装系统win7旗舰版系统教程

热门文章

  1. POJ2114-Boatherds-树分治
  2. Linux下C语言使用openssl库进行MD5校验
  3. read和write函数的使用
  4. Java集合(五):Set集
  5. java高分面试指南:redis怎么保证高可用
  6. 隐藏导航条HTML,jQuery实现的导航条切换可显示隐藏
  7. Arcgis 使用ArcToolbox实现数据统计
  8. python 算术运算
  9. javascript动态创建table
  10. 24小时制时间格式和12小时制时间格式