treeverse/dvc

🦉 Data Versioning and ML Experiments

解决的问题

DVC(数据版本控制)解决了机器学习项目中的可复现性挑战。它允许开发者对大型数据集和机器学习模型进行版本管理——这些文件太大,无法用 Git 管理——同时将版本控制元数据保留在 Git 中,确保代码、数据和模型的特定版本始终相互关联。

工作原理

DVC 作为 Git 的一层封装。它将实际的数据和模型文件存储在 Git 仓库之外的独立缓存中,而 Git 中只保留轻量级的占位文件。为了共享和备份该缓存,DVC 支持多种远程存储平台,包括 S3、Azure、Google Cloud,以及通过 SSH 连接的本地网络存储。

它还提供了一种定义计算图(管道)的系统,将代码与数据连接起来。这些管道指定了每个步骤的依赖关系和输出,使 DVC 只运行受变更影响的步骤。

适用人群

需要追踪实验、版本化数据和模型,并协作构建可复现的机器学习管道的机器学习工程师和数据科学家。

主要亮点

  • 数据版 Git:无需专用服务器即可版本化和共享数据制品和模型。
  • 轻量级管道:仅执行受变更影响的步骤的版本化数据管道。
  • 本地实验追踪:在本地 Git 仓库中直接追踪和比较超参数、指标和性能图表。
  • 云存储集成:无缝推送和拉取来自 S3、Azure 和 GCS 等云提供商的数据。
  • VS Code 扩展:在 IDE 内部提供实验追踪和数据管理的图形界面。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目