Skip to main content

调优实验

调整实验并编辑实验的执行细节,然后在本地或远程机器上执行调整后的实验。

调整实验并远程执行:

  1. 定位实验。从仪表板或主项目页面打开实验的项目页面。

    • 在仪表板上,
      • 从最近的实验中点击一个实验
      • 在最近的项目中 > 点击项目卡片 > 点击实验
      • 在最近的项目中 > 点击 查看全部 > 点击项目卡片 > 点击实验
    • 在项目页面上,点击项目卡片,或点击所有项目卡片>点击实验
  2. 克隆实验。在实验表中:

    1. Click Clone, and a Clone experiment box will pop up.
    2. In the Project textbox, select or create a project. To search for another project, start typing the project name. To create a new project, type new experiment name and click Create New.
    3. Enter an optional description.
    4. Click CLONE.

    克隆实验的状态现在是草稿

  3. 编辑实验。请参阅修改实验

  4. 将实验加入队列以执行。右键点击实验 > 加入队列 > 选择一个队列 > 加入队列

    实验的状态变为Pending。当分配给队列的工作人员获取任务(实验)时,状态变为Running。现在可以跟踪实验并可视化其结果。

修改实验

状态为草稿的实验是可编辑的(参见用户属性例外)。在ClearML Web UI中,可以编辑以下任何内容

note

用户参数在任何实验中都是可编辑的,除了状态为已发布(只读)的实验。

执行详情

源代码

通过更改以下任何一项来修改代码执行:

  • 仓库、提交(通过ID、标签名选择,或选择分支中的最后一次提交)、脚本、工作目录和/或二进制文件。
  • 要安装的Python包及其版本 - 编辑包列表,或清除它以让ClearML代理不安装任何包或使用现有的requirements.txt文件。如果实验基于一次运行,其中使用的包最终与最初指定的不同,您可以轻松或重置包到最初记录的值("Original Pip")。
  • 未提交的更改 - 编辑或全部清除。

要修改源代码,请将鼠标悬停在执行选项卡中的相关部分上,以访问编辑、清除/丢弃和/或重置功能。

基础 Docker 镜像

选择一个预配置的Docker,ClearML Agent将使用它来远程执行此实验(参见构建Docker容器)。

添加、更改或删除基础Docker镜像:

  • 执行 > 代理配置 > 基础Docker镜像 > 悬停 > 编辑 > 输入基础Docker镜像。
important

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

clearml-agent daemon --queue <execution_queue_to_pull_from> --docker [optional default docker image to use]

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

输出目的地

为模型检查点(快照)和其他工件设置输出目的地。支持的示例目的地类型和指定位置的格式包括:

  • 一个共享文件夹:/mnt/share/folder
  • S3: s3://bucket/folder
  • 非AWS S3类似服务(例如MinIO):s3://host_addr:port/bucket
  • Google Cloud Storage: gs://bucket-name/folder
  • Azure 存储: azure://<account name>.blob.core.windows.net/path/to/file

要添加、更改或删除工件输出目的地:

  • 执行 > 输出 > 目的地 > 悬停 > 编辑 > 编辑 > 保存
Set Output Destination for Artifacts

同时设置代码中工件的输出目的地(参见Task.init方法的output_uri参数),以及所有实验的ClearML配置文件中的输出目的地(参见ClearML配置参考页面上的default_output_uri)。

配置

超参数

添加、更改或删除超参数,这些超参数在ClearML Web UI中按以下部分组织:

  • 参数 - 自动记录的参数解析器参数(例如 argparse, click, hydra)。

  • TF_DEFINE - TensorFlow 定义(来自代码,TF_DEFINEs 自动记录)。

  • 通用 - 参数字典(来自代码,通过调用Task.connect()连接到任务)。

  • 环境变量 - 如果变量列在CLEARML_LOG_ENVIRONMENT环境变量或clearml.conf文件的sdk.development.log_os_environments字段中,则会被跟踪(参见此FAQ)。

  • 自定义命名的参数组(请参阅Task.connect中的name参数)。

添加、更改或删除超参数:

  • 配置标签中> 超参数 > 参数组 > 悬停 > 点击编辑 > 添加、更改或删除键和/或值 > 点击保存

用户属性

用户属性允许以键值对格式存储任何描述性信息。它们在任何实验中都是可编辑的,除了状态为已发布(只读)的实验。

添加、更改或删除用户属性:

  • 配置 > 用户属性 > 属性 > 悬停 > 点击 编辑 > 添加、更改或删除键和/或值 > 点击 保存

配置对象

要添加、更改或删除任务模型配置:

  • 配置 > 配置对象 > 对象名称 > 悬停 > 编辑清除(如果配置不为空)。

工件

初始权重输入模型

编辑模型配置和标签枚举,为同一项目或任何其他项目选择不同的初始输入权重模型,或删除模型。

note

模型在MODELS标签页中可编辑,而不是在EXPERIMENTS标签页中。点击模型名称的超链接会在MODELS标签页中显示该模型。

选择不同的模型:

  1. ARTIFACTS > 输入模型 > 悬停并点击编辑
  2. 如果模型与实验相关联,请点击 Edit Pencil
  3. 选择模型对话框中,从当前项目或任何其他项目中选择一个模型。

编辑模型的配置或标签枚举:

  1. 点击模型名称的超链接。模型详细信息将显示在MODELS标签中。

  2. 编辑模型配置或标签枚举:

    • 模型配置 - 在NETWORK标签中> 悬停并点击EDIT> 点击EDITCLEAR(以移除配置)。

      用户还可以搜索配置(将鼠标悬停在配置文本框上,搜索框会出现)并将配置复制到剪贴板(悬停并点击Copy Clipboard)。

    • 标签枚举 - 在LABELS标签页> 悬停并点击EDIT> 添加、更改或删除标签枚举键值对。

从实验中移除模型:

  • 悬停并点击编辑 > 点击Trash