Skip to main content

实验表

实验表是一个与项目相关的可自定义的实验列表。从实验表中,可以查看实验详情,并进行实验操作(重置、克隆、排队、创建跟踪排行榜以监控实验等)。实验表的自动刷新功能使用户能够持续监控实验进度。

查看实验的表格视图 Table view, 详细信息视图 Details view, 或 比较视图 Comparison view 使用页面左上角的按钮。使用表格视图根据感兴趣的列对实验进行比较。使用详细信息视图访问所选实验的详细信息,同时保持实验列表可见。详细信息视图也可以通过双击表格视图中的特定实验来打开其详细信息视图。 使用比较视图来比较实验的标量和绘图结果(更深入的比较,请参见比较实验)。此视图比较当前所选实验的标量/绘图。如果未选择任何实验,则比较表格中前100个可见的实验。

您可以归档实验,以便实验表不会变得太杂乱。点击表格顶部的OPEN ARCHIVE以打开归档并查看所有已归档的实验。从归档中,您可以恢复实验以将其从归档中移除。您还可以永久删除实验。

您可以通过点击Download并选择以下选项之一来下载实验表格为CSV文件:

  • 下载屏幕上的项目 - 下载当前屏幕上可见的实验值
  • 下载所有项目 - 下载此项目中符合当前活动过滤器的所有实验的值

下载的数据由当前显示的表格列组成。

实验表格

创建实验

您可以通过以下方式创建实验:

  • 运行使用ClearML检测的代码(参见任务创建
  • 克隆现有实验
  • 通过用户界面:输入实验的详细信息,包括其源代码和Python需求,然后通过ClearML 队列运行它或将其保存为草稿

通过用户界面创建实验:

  1. 点击 + New Experiment
  2. In the Create Experiment modal, input the following information:
    • 代码
      • 实验名称
      • Git
        • 仓库URL
        • 版本规范 - 以下之一:
          • 标签
          • 分支
          • 提交ID
        • 执行入口点
        • 添加 Task.init 调用 - 如果选中,Task.init() 调用将被添加到入口点。如果代码中尚未调用,请选择此项
    • 参数 (可选) - 添加 超参数 值。
    • 环境 (可选) - 使用以下任一选项设置实验的 Python 执行环境:
      • 使用 Poetry 规范 - 需要为实验指定一个 Docker 镜像以在其中执行。
      • 手动指定 Python 环境配置:
        • Python 二进制文件 - 要使用的 Python 可执行文件
        • 预安装的 venv - 要使用的特定现有虚拟环境。需要为实验指定一个 Docker 镜像以在其中执行。
        • Python 包规范:
          • 跳过 - 假设系统包可用。需要为实验指定一个 Docker 镜像以在其中执行。
          • 使用现有的 requirements.txt 文件
          • 明确指定所需的包
    • Docker (optional) - Specify Docker container configuration for executing the experiment
      • Image - 用于运行实验的Docker镜像

      • 参数 - 将Docker参数添加为单个字符串

      • 启动脚本 - 在设置实验环境之前,添加一个要在 Docker 内部执行的 bash 脚本

        important

        为了让任务在指定的容器中运行,执行任务的ClearML代理必须在Docker模式下运行:

        clearml-agent daemon --queue <execution_queue_to_pull_from> --docker

        欲了解更多信息,请参阅Docker 模式

    • 运行
      • 队列 - ClearML 队列 实验应在此排队等待执行
      • 输出目的地 - 实验输出应存储的URI(默认为ClearML文件服务器)。
  3. 一旦您输入了所有信息,请点击以下选项之一
    • 保存为草稿 - 将实验保存为新的草稿任务。
    • 运行 - 将实验加入队列,以便在运行标签中指定的队列中执行。

一旦你完成了实验创建向导,实验将被保存在你当前的项目中(你点击+ New Experiment的地方)。查看你可以在实验操作中对实验进行的操作。

实验表列

实验表的默认和可定制列在下表中描述。

ColumnDescriptionType
TYPEType of experiment. ClearML supports multiple task types for experimentation, and a variety of workflows and use cases.Default
NAMEExperiment name.Default
TAGSDescriptive, user-defined, color-coded tags assigned to experiments. Use tags to classify experiments, and filter the list. See tagging experiments.Default
STATUSExperiment state (status). See a list of the task states and state transitions. If you programmatically set task progress values, you will also see a progress indicator for Running, Failed, and Aborted tasks. See here.Default
PROJECTName of experiment's project.Default
USERUser who created or cloned the experiment.Default (hidden)
STARTEDElapsed time since the experiment started. To view the date and time of start, hover over the elapsed time.Default
UPDATEDElapsed time since the last update to the experiment. To view the date and time of update, hover over the elapsed time.Default
ITERATIONLast or most recent iteration of the experiment.Default
DESCRIPTIONA description of the experiment. For cloned experiments, the description indicates it was auto generated with a timestamp.Default (hidden)
RUN TIMEThe current / total running time of the experiment.Default (hidden)
MetricsAdd metrics column (last, minimum, and/or maximum values). The metrics depend upon the experiments in the table. See adding metrics.Customizable
HyperparametersAdd hyperparameters. The hyperparameters depend upon the experiments in the table. See adding hyperparameters.Customizable

自定义实验表

使用以下任意一项自定义表格:

  • 动态列顺序 - 拖动列标题到不同的位置。
  • 调整列宽 - 拖动列分隔符以更改该列的宽度。双击列分隔符以自动适应。
  • 更改表格列
    • 显示 / 隐藏列 - 点击 Setting Gear > 标记或清除列的复选框以显示或隐藏。
    • 添加自定义列 - 点击 + METRICS+ HYPERPARAMETERS 将指标 / 超参数列添加到 主列列表中。添加的列默认显示在表格中。您可以从 主列列表或列添加窗口中移除自定义列。
  • 筛选列
  • 排序列 - 根据指标和超参数、实验类型、实验名称、开始和最后更新的经过时间以及最后迭代。

使用实验表定制适用于各种用例,包括:

  • 创建一个排行榜,该排行榜将根据实验性能实时更新,并且可以共享和存储。
  • 按指标排序模型 - 模型与创建它们的实验相关联。对于每个指标,使用最后一个值、最小值和/或最大值。
  • 跟踪超参数 - 通过将超参数添加为列,并应用过滤和排序来跟踪超参数。

更改是持久的(缓存在浏览器中),并在URL中表示,因此自定义设置可以保存在浏览器书签中,并与其他ClearML用户共享以进行协作。

note

以下实验表的自定义设置是基于每个项目保存的:

  • Column Order
  • Column Width
  • Activity Sorting Order
  • Activity Filter
  • Custom Columns

如果一个项目有子项目,实验可以按子项目分组查看,或者与项目中的所有实验一起查看。这两种视图的自定义设置是分别保存的。

添加指标和/或超参数

实验表格定制gif

向实验表中添加指标和/或超参数列。指标和超参数取决于表中的实验。

添加指标:

  • 点击 Setting Gear > + 指标 > 展开一个指标 > 选择 LAST (值), MIN (最小值), 和/或 MAX (最大值) 复选框。

添加超参数:

  • 点击 Setting Gear > + 超参数 > 展开一个部分 > 选择超参数复选框。
Float Values Display

默认情况下,实验表显示四舍五入的浮点数值。将鼠标悬停在浮点数上以查看其精确值,该值会出现在工具提示中。要查看列中所有精确值,请将鼠标悬停在浮点数上并点击Expand

筛选列

过滤表格动图

可以通过点击列上的Filter来应用过滤器,相关的过滤器将会出现。

有几种类型的过滤器:

  • 值集 - 从列中所有值的列表中选择要包含的值
  • 数值范围 - 插入最小值和/或最大值
  • 日期范围 - 插入开始和/或结束日期和时间
  • 标签 - 从列中使用的所有标签列表中选择要过滤的标签。
    • 使用ANYALL选项按多个标签值进行过滤,这些选项分别对应逻辑“AND”和“OR”。这些选项出现在标签列表的顶部。
    • 通过点击复选框两次来按标签的缺失进行过滤(逻辑“NOT”)。标签的复选框中将出现一个X

一旦对列应用了过滤器,其过滤器图标将在其右上角显示一个高亮的点(Filter on)。

要清除所有活动的过滤器,请点击表格右上角的清除过滤器

实验操作

下表描述了可以从实验表中执行的操作,包括允许每个操作的状态

通过以下任意一种方式访问这些操作:

  • 在实验表中,右键单击一个实验或将鼠标悬停在一个实验上并点击 Dot menu 以打开上下文菜单
  • 在实验信息面板中,点击菜单按钮 Bar menu
  • 通过批量操作栏:当选择多个实验时,可在屏幕底部使用
ActionDescriptionStates Valid for the ActionState Transition
DetailsOpen the experiment's info panel (keeps the experiments list in view). Can also be accessed by double-clicking an experiment in the experiments table.Any stateNone
View Full ScreenView experiment details in full screen.Any stateNone
Manage QueueIf an experiment is Pending in a queue, view the utilization of that queue, manage that queue (remove experiments and change the order of experiments), and view information about the worker(s) listening to the queue. See the Orchestration page.EnqueuedNone
View WorkerIf an experiment is Running, view resource utilization, worker details, and queues to which a worker is listening.RunningNone
ShareFor ClearML Hosted Service users only, share an experiment and its model with a ClearML Hosted Service user in another workspace.Any stateNone
ArchiveMove experiment to the project's archive. If it is shared (ClearML Hosted Service only), the experiment becomes private.Any statePending to Draft
RestoreAction available in the archive. Restore an experiment to the active experiments table.Any StateNone
DeleteAction available in the archive. Delete an experiment, which will also remove all their logs, results, artifacts and debug samples.Any StateN/A
EnqueueAdd an experiment to a queue for a worker or workers (listening to the queue) to execute.Draft, AbortedPending
DequeueRemove an experiment from a queue.PendingDraft
ResetDelete the log and output from a previous run of an experiment (for example, before rerunning it).Completed, Aborted, or FailedDraft
AbortManually terminate a Running experiment.RunningAborted
Abort All ChildrenManually terminate all Running experiments which have this task as a parentRunning or AbortedNone for parent experiment, Aborted for child experiments
RetryEnqueue a failed experiment in order to rerun it. Make sure you have resolved the external problem which previously prevented the experiment’s completion.FailedPending
PublishPublish an experiment to prevent changes to its tracking data, inputs, and outputs. Published experiments and their models are read-only. Published experiments cannot be enqueued, but they can be cloned, and their clones can be edited, tuned, and enqueued.Completed, Aborted, or Failed.Published
Add TagTag experiments with color-coded labels to assist you in organizing your work. See tagging experiments.Any stateNone
CloneMake an exact, editable copy of an experiment (for example, to reproduce an experiment, but keep the original).DraftNewly Cloned Experiment is Draft
Move to ProjectMove an experiment to another project.Any stateNone
CompareCompare selected experiments (see Comparing Experiments)Any stateNone
Enterprise Feature

ClearML企业服务器提供了一种机制来定义您自己的自定义操作,这些操作将出现在上下文菜单中。通过定义点击上下文菜单操作时发出的HTTP请求来创建自定义操作。有关更多信息,请参阅自定义UI上下文菜单操作

上述图表中提到的大多数操作可以同时对多个实验进行。 选择多个实验,然后使用上下文菜单或页面底部出现的批量操作栏 对选定的实验执行操作。操作只能对符合操作标准的实验执行 (例如,只有运行中的实验可以被中止)。上下文菜单显示每个操作可以影响的实验数量。相同的信息可以在批量操作栏中找到,当悬停在操作图标上时会出现工具提示。

实验表批量操作

选择多个实验

通过点击每个相关实验左侧的复选框来选择多个实验。通过点击表格左上角的复选框清除任何现有选择。

点击表格左上角的复选框以选择当前可见的所有项目。

通过左上角复选框旁边的向下箭头,可以使用扩展的批量选择工具,从而选择超出当前屏幕上显示的项目:

  • 全部 - 选择项目中的所有实验
  • None - 清除选择
  • 已过滤 - 选择项目中所有符合当前活动过滤器的实验

比较实验

比较视图比较实验的标量和绘图结果(更深入的比较,请参见比较实验)。 当选择时,视图会展示所有选定的实验的比较。如果没有 选择任何实验,表格中前100个可见的实验将显示在比较中。

在下拉菜单中,选择查看标量图表

标量 将实验标量结果显示为时间序列折线图。

合并比较图

所有单值标量都被绘制在“摘要”标题下的一个单一簇状条形图中,其中每个簇代表一个报告的指标,簇中的每个条形代表一个实验。

单一标量比较

点击 设置齿轮 自定义要查看的指标。

点击 Tune 以访问 标量绘图工具

图表 显示了每个比较实验中每个指标/变体组合的最后报告的迭代样本。

通过将所有比较实验中的每个指标/变体重叠到一个单一的比较图中,来比较线图、散点图、箱线图和条形图。

合并比较图

其他类型的图表会为每个实验单独显示。

分离比较图

创建实验排行榜

筛选和排序任何项目的实验,以创建可以共享和存储的排行榜。此排行榜会根据实验性能和输出实时更新。

通过以下方式修改实验表以创建自定义排行榜:

  • 添加实验配置(超参数
  • 编辑和添加实验属性
  • 添加报告的指标,可以选择任何时间序列报告的指标,然后选择最后报告的值,或最小/最大报告的值。
  • 根据用户(下拉菜单和选择)或实验类型进行筛选
  • 添加特定的标签并根据它们进行过滤。

现在可以根据任何列(可能是性能指标之一)对表格进行排序。使用搜索栏选择根据实验名称进行筛选。

最终仪表板可以通过从地址栏复制URL来共享,此地址将在任何浏览器上复制完全相同的仪表板。 仪表板也可以被书签标记以供以后使用。

实验表格共享