在 GitHub 上编辑

exp diff

显示实验之间指标参数的变化。

概要

usage: dvc exp diff [-h] [-q | -v] [--all] [--param-deps]
                    [--json] [--md]
                    [--no-path] [--precision <n>]
                    [a_rev] [b_rev]
positional arguments:
  a_rev            Old experiment to compare (defaults to HEAD)
  b_rev            New experiment to compare (defaults to the current
                   workspace)

描述

通过打印差异表格,快速比较两个实验之间的dvc paramsdvc metrics。默认情况下,它包含参数/指标文件的“路径”、“参数”或“指标”名称、新的“值”,以及数值的差异(“变化”)。示例如下:

$ dvc exp diff
Path         Metric   HEAD      workspace  Change
scores.json  roc_auc  0.915363  0.93345    0.018087
scores.json  grade    B         B-         —

Path         Param         HEAD  workspace  Change
params.yaml  max_features  1500  3000       1500

这类似于将dvc params diffdvc metrics diff针对相关实验的报告合并在一起。

不带参数时,此命令将工作区中所有在dvc.yaml文件中引用的参数和指标与最新提交的版本(必需)进行比较。默认仅列出发生变化的参数/指标(使用--all显示全部)。

a_revb_rev 是可选的待比较实验。它们接受实验名称或哈希值(详情见dvc exp run)。仅提供一个时,会将其与工作区进行比较。

另一种展示实验的方式是dvc exp show命令,它列出所有当前实验(不进行比较)。

选项

  • --all - 列出所有参数和指标,包括未发生变化的。

  • --param-deps - 仅包含作为阶段依赖的参数。

  • --json - 以易于解析的 JSON 格式输出命令结果,而非人类可读的表格形式。

  • --md - 以 Markdown 表格格式(GFM)输出命令结果。

  • --no-path - 隐藏列出参数/指标文件位置的“路径”列。当仅存在一个指标或参数文件时非常有用,例如:

  • --precision <n> - 四舍五入十进制数值至 n 位有效数字(默认为 5)。仅适用于指标。

  • -h, --help - 打印使用说明/帮助信息,然后退出。

  • -q, --quiet - 不向标准输出写入任何内容。如果没有问题则以 0 退出,否则以 1 退出。

  • -v, --verbose - 显示详细的跟踪信息。

示例

本示例基于 我们的入门指南,您可在其中找到实际源代码。

假设我们在项目中运行了 3 个实验:

$ dvc exp show
 ────────────────────────────────────────────────────────────────────────────────────────────
  neutral:**Experiment**               neutral:**Created**           metric: **auc**   param:**featurize.max_features**   param:**featurize.ngrams**
 ────────────────────────────────────────────────────────────────────────────────────────────
  workspace                -              0.61314   1500                     2
  10-bigrams-experiment    Jun 20, 2020   0.61314   1500                     2
  ├── major-mela           Oct 21, 2020   0.61314   1500                     2
  ├── gluey-leak           Oct 09, 2020   0.57756   2000                     2
  └── ochre-dook           Oct 09, 2020   0.51676   500                      2
 ────────────────────────────────────────────────────────────────────────────────────────────

由于我们尚未对工作区进行任何更改,可以这样将 gluey-leak 与其基线(10-bigrams-experiment,当前 HEAD)进行比较:

$ dvc exp diff gluey-leak
Path         Metric  HEAD     gluey-leak  Change
scores.json  auc     0.61314  0.577565    -0.035575

Path         Param                   HEAD  gluey-leak  Change
params.yaml  featurize.max_features  2000  1500        -500

要比较两个特定实验(默认显示第二个实验的值):

$ dvc exp diff gluey-leak ochre-dook
Path         Metric  gluey-leak  ochre-dook   Change
scores.json  auc     0.577559    0.51676     -0.060799

Path         Param                   gluey-leak  ochre-dook  Change
params.yaml  featurize.max_features  2000        500        -1500

要将实验与 7-ml-pipeline 标签(或任何其他修订版本)进行比较:

$ dvc exp diff gluey-leak 7-ml-pipeline
Path         Metric  gluey-leak  7-ml-pipeline  Change
scores.json  auc     0.577559    None           diff not supported

Path         Param                   gluey-leak  7-ml-pipeline  Change
params.yaml  featurize.max_features  2000        500            -1500
params.yaml  featurize.ngrams        2           1              -1
内容

🐛 发现问题?告诉我们!或者修复它:

在 GitHub 上编辑

有疑问?加入我们的聊天,我们会为您提供帮助:

Discord 聊天