简介
编辑DVC是一个免费的、开源的、与平台无关的版本系统,用于数据、机器学习模型和实验。它旨在使ML模型可共享,实验可重复,并跟踪模型、数据和管道的版本。DVC在Git存储库和云存储之上工作。
DVC0.6的第 一个(beta)版本于2017年5月推出。2020年5月,DVC1.0由Iterative.ai公开发布。
数据版本控制的概述
编辑DVC旨在将软件开发的最佳实践纳入机器学习工作流程。它通过为数据集和机器学习模型的云存储扩展传统的软件工具Git来实现。
具体来说,DVC使机器学习操作。
编码:它通过在云存储中存储数据文件的指针来编码数据集和模型。
这些功能也允许自动构建数据集,训练、评估和部署ML模型。
DVC和GitDVC将大型文件和数据集存储在Git之外的独立存储器中。
这个存储可以在用户的电脑上,也可以托管在任何主要的云存储供应商上,比如AWSS3、谷歌云存储和微软AzureBlob存储。
DVC用户也可以在任何服务器上建立一个远程仓库,并远程连接到该仓库。当用户将他们的数据和模型存储在远程仓库时,在他们的Git仓库中会创建文本文件,指向远程存储的实际数据。
数据版本控制的功能
编辑DVC的功能可以分为三类:数据管理、管道和实验跟踪。
数据管理数据和模型版本管理是DVC的基础层,用于大型文件、数据集和机器学习模型。它允许使用标准的Git工作流程,但不需要将这些文件存储在存储库中。
大文件、目录和ML模型被替换成小的元文件,而这些元文件又指向原始数据。数据被单独存储,允许数据科学家转移大型数据集或与他人分享模型。DVC通过编纂实现了数据的版本化。
当用户创建元文件,描述要跟踪哪些数据集、ML工件和其他特征时,DVC使得捕捉数据和模型的版本、创建和恢复快照、记录不断变化的指标、在版本之间切换等成为可能。
数据文件和目录的xxx版本以系统的方式被缓存(也防止文件重复)。工作数据存储与用户的工作空间分开,以保持项目的轻盈,但通过DVC自动处理的文件链接保持连接。
管线DVC提供了一种机制来定义和执行管道。管道代表了建立ML数据集和模型的过程,从数据的预处理到模型的训练和评估。管道也可用于将模型部署到生产环境中。
DVC管道专注于ML过程的实验阶段。用户可以通过克隆带有管道的Git存储库或运行ML实验来运行DVC管道的多个副本。
他们还可以将工作流程记录为管道,并在将来重现它。管道在代码中被表示为yaml配置文件。
这些文件定义了管道的阶段以及数据和信息如何从一个步骤流向下一个步骤。当一个管道运行时,该管道产生的工件被注册在dvc.lock文件中。
锁文件记录了所运行的阶段,并存储了每个阶段的输出结果的哈希值。它不仅是流水线的执行记录,而且在决定哪些步骤必须在流水线的后续执行中重新运行时也很有用。实验跟踪实验跟踪允许开发者探索、迭代和比较不同的机器学习实验。
每个实验代表了由工作区的变化所定义的数据科学项目的一个变体。实验在当前分支(GitHEAD)中保持一个与提交的链接,作为其父级或基线。
然而,它们并不构成常规Git树的一部分(除非它们是持久化的)。这可以阻止临时提交和分支充斥在用户的存储库中。实验的常见用例是。
模型架构的比较
编辑训练或评估数据集的比较
模型超参数的选择DVC实验可以通过VSCodeIDE或IterativeStudio在线管理和可视化。可视化允许每个用户直观地比较实验结果,跟踪绘图,并通过库集成生成。DVC提供了几种在常规工作流程中使用可视化的选项。
内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/175561/