|数据版本化:如何开始使用DVC控制数据版本?


全文共1957字 , 预计学习时长5分钟

|数据版本化:如何开始使用DVC控制数据版本?
本文插图
图源:unsplash
在软件项目工作中 , 立即开始对代码进行版本控制是非常常见的行为 , 并且实际上已经是一种标准了 。 它的好处对于软件社区来说已经非常明显:跟踪特定代码存储库中对代码的每一次修改 。 如果出现任何错误 , 开发人员总是可以跨越时间 , 比较代码的早期版本以解决问题 , 同时最大限度地减少对所有团队成员的干扰 。
软件项目的代码是最宝贵的资产 , 因此必须不惜一切代价加以保护 。 对于数据科学项目来说 , 数据也可以被视为王冠上的宝石 , 那么为什么作为数据科学家 , 不通过版本控制来将其视为最宝贵的东西呢?
对于那些熟悉Git的人可能会想 , Git不能处理大文件和目录 , 至少它不能像处理小代码文件那样具有相同的性能 。 那么 , 怎样才能像版本控制代码那样对数据进行版本控制呢?
如今这是能够实现的 , 而且很简单 , 只需输入git clone并查看保存在工作空间中的数据文件和机器学习模型文件 , 所有这些魔术都可以通过DVC实现 。

|数据版本化:如何开始使用DVC控制数据版本?
本文插图
快速上手DVC

|数据版本化:如何开始使用DVC控制数据版本?
本文插图
Data VersionControl (DVC)
首先 , 必须在机器上安装DVC , 你可以按照下面的步骤来做 。
如前所述 , 用于数据版本控制的工具(如DVC)使构建大型项目成为可能 , 同时使重新生成管道成为可能 。 使用DVC将数据集添加到git存储库中非常简单 , 只需键入下面的代码即可:
dvc add path/to/dataset
无论数据集的大小如何 , 都会将数据添加到存储库中 。 假设我们还希望将数据集推进到云中 , 也可以使用下面的命令:
dvc push path/to/dataset.dvc
DC支持许多云存储服务 , 例如S3、Google Storage 、Azure blob、Google Drive等等 , 由于数据集被云通过版本控制系统 , 如果我克隆项目到另一个机器 , 就可以下载数据或任何其他组件 , 需要使用下面的命令:
dvc pull
现在你知道了如何开始使用DVC , 建议进一步研究这个工具或类似的工具 。 作为数据科学家 , 版本控制应该是你最好的朋友 , 它不仅允许对数据集进行版本化 , 还可以创建可重复的管道 , 同时保持所有开发项目的可追踪性和可重复性 。
如果这还不足以说服你 , 下面我将告诉为什么必须开始版本控制数据!

|数据版本化:如何开始使用DVC控制数据版本?
本文插图
为什么要开始使用数据版本控制?
1.保存并复制所有实验数据
作为数据科学家 , 我们知道开发一个机器学习模型不仅仅是代码 , 还有数据和正确的参数 。 很多时候 , 为了找到完美的匹配需要进行实验 , 这使得过程具有高度的迭代性 , 并且对于跟踪所做的更改及其对最终结果的影响非常重要 。
在多个数据科学家合作的复杂环境中 , 这变得更加重要 。 从这个意义上说 , 如果我们能够拥有用于开发模型的某个版本的数据的快照并将其版本化 , 那么迭代和模型开发的过程不仅更容易 , 而且还可跟踪 。

|数据版本化:如何开始使用DVC控制数据版本?
本文插图
图源:unsplash
2.调试及测试
虽然在Kaggle比赛中玩了很多次 , 但我们并不理解开发基于机器学习的解决方案所面临的真正挑战 。 实际上 , 最大的挑战之一就是处理各种数据源和可用的数据量 。分页标题
有时 , 如果我们甚至不能检索所使用的精确数据集 , 那么重现实验结果可能有点令人畏惧 。 数据版本控制可以缓解这些问题 , 并使机器学习解决方案的开发过程更加简单、有组织和可重复 。
3.合规及审计
一些隐私法规 , 如GDPR , 已经要求公司和组织展示可使用数据源的遵从性和历史记录 。 跟踪版本控制工具提供的数据版本的能力是使公司的数据源为遵从性做好准备的第一步 , 也是维护围绕数据的强大和健壮的审计培训和风险管理流程的必要步骤 。
4.协调软件和数据科学团队
有时候 , 协调使用同一种语言的数据科学和软件团队非常具有挑战性 , 高度依赖团队之间交互所涉及的配置文件 。 开始将一些好的实践从软件实现到数据科学过程中 , 不仅可以帮助调整所涉及的团队之间的工作 , 而且还可以加速解决方案的开发和集成 。

|数据版本化:如何开始使用DVC控制数据版本?
本文插图
图源:unsplash
数据科学必须产品化 , 其中有太多的可变元素——比如数据 。 数据科学应用程序的版本控制概念可以用多种可能的方式解释 , 从模型到数据版本控制 。 本文旨在介绍数据科学团队对数据版本化的重要性和好处 , 但是数据科学家还有更多方面需要注意 , 密切关注持续交付原则 , 对于基于机器学习的解决方案的成功非常重要 。

|数据版本化:如何开始使用DVC控制数据版本?
本文插图
留言点赞关注
我们一起分享AI学习与发展的干货
【|数据版本化:如何开始使用DVC控制数据版本?】如转载 , 请后台留言 , 遵守转载规范