git - DVC 实验管理工作流程

标签 git dvcs dvc

我在 DVC 实验管理方面遇到了困难。假设以下场景:

我有 params.yaml 文件:

recommendations:
  k: 66
  q: 5

我使用 dvc exp run -n exp_66 运行实验,然后执行 dvc exp push origin exp_66。之后,我修改 params.yaml 文件:

recommendations:
  k: 99
  q: 5

然后运行另一个实验 dvc exp run -n exp_99,之后我使用 dvc exp Push origin exp_99 进行提交。

现在,当我使用 Git pull 相应的分支时,我尝试通过运行 dvc exp pull origin exp_66 从 dvc pull exp_66。这会 pull (没有错误消息),但是 params.yaml 文件的内容是 k: 99 (我期望 k: 66)。我究竟做错了什么? git Push必须在dvc Push之后执行吗?除此之外,我还发现了dvc exp apply exp_66,但我不确定它是做什么的(建议在apply之后执行git add .,然后git commit

如果您能写下提交不同实验、推、 pull 、应用等的工作流程,我将不胜感激。

最佳答案

你做的一切都很好。最后 pull 完后可以看到使用dvc exp show时你的实验将会在那里。要将实验列表中可用的实验恢复到工作区中,您只需运行 dvc exp apply exp_66 。 DVC 将确保检查与此实验相对应的更改。

到目前为止,您的工作流程似乎是正确的。补充一点:一旦您确定其中一个实验是您想要在 git 历史记录中“保留”的内容,您可以使用 dvc exp branch {exp_id} {branch_name}为此实验创建一个单独的分支。然后你可以使用git命令保存更改。

关于git - DVC 实验管理工作流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71338160/

相关文章:

git - 如何知道我是否正在使用 Mercurial 进行 histedit?

git - 使用本地包的 Godep

python - 使用 venv 虚拟环境时,我应该将哪些文件提交到我的 git 存储库?

git - 从 git shell 中删除远程仓库

git:在工作副本之间推送的简单解决方案

dvc - 无法忽略 DVC 中的 .DS_Store 文件

git - 通过 ssh 使用 git 设置 jenkins

git - 使用 git 版本控制系统锁定二进制文件

git - 错误: bad DVC file name 'my_server\models\*.tar.gz.dvc' is git-ignored

python - 如何通过dvc run从conda环境执行python