开始使用 Aim

本节展示一个简单的端到端Aim设置流程。从安装开始,演示如何运行Aim界面并探索结果。 将此作为入门指南,在快速上手的同时熟悉Aim的基础功能。

安装Aim

Aim 是一个适用于 Linux 和 MacOS 的 Python 包,支持 Python 3.6 及以上版本。使用 pip3 安装 Aim:

pip3 install aim

验证aim是否已正确安装

aim version

您应该能看到显示新安装Aim版本的行。例如:

Aim v3.5.1

安装的软件包包含用于跟踪训练运行的Python SDK、用于浏览结果的用户界面以及用于管理界面和结果的命令行工具。

夜间发布版本

Aim还提供每日开发包,包含主要次要版本之间开发的功能。

pip3 install --pre aim

请注意,如果aim的依赖项尚未安装,此命令将尝试同时安装这些包的开发版本。

可以使用以下命令安装之前的每日开发包:

pip3 install aim==3.x.0.devyyyymmdd

发布历史

初始化Aim仓库

Aim仓库是记录所有训练运行的空间。

要在当前工作目录初始化 aim 仓库,请运行:

aim init

您应该在命令行中看到类似这样的内容:

Initialized a new Aim repository at /home/user/aim

您的工作区现已准备就绪,可以使用Aim跟踪训练运行。

使用Aim SDK追踪数据

要开始跟踪,首先创建一个aim.Run对象:

from aim import Run
run = Run()

Run类提供了一个类似字典的接口,用于存储训练超参数和其他类似字典的元数据:

hparams_dict = {
    'learning_rate': 0.001,
    'batch_size': 32,
}
run['hparams'] = hparams_dict

这些参数稍后可在用户界面上用于查询运行记录、指标和图像。 要使用aimstack跟踪指标,请使用Run.track方法:

run.track(3.0, name='loss')

支持的完整输入列表可在章节“Track media and objects”中查看

以下是一个完整示例,演示上述步骤:

# aim_test.py
from aim import Run

run = Run()

# set training hyperparameters
run['hparams'] = {
    'learning_rate': 0.001,
    'batch_size': 32,
}

# log metric
for i in range(10):
    run.track(i, name='numbers')

运行上面的脚本

python3 aim_test.py

恭喜!您使用Aim的首次运行已完成! 现在是时候通过Aim UI探索结果了。

使用Aim UI浏览结果

上述脚本运行完成后,您可以打开Aim UI查看结果:

aim up

您应该会看到以下输出,表示Aim UI已启动并运行:

Running Aim UI on repo `<Repo#-5930451821203570655 path=/.aim read_only=None>`
Open http://127.0.0.1:43800
Press Ctrl+C to exit

打开浏览器并访问 http://127.0.0.1:43800 您应该能看到Aim UI的首页:

点击指标资源管理器图标

在搜索栏中选择“numbers”指标并点击“搜索”。 您应该能看到跟踪指标的折线图:

在笔记本中运行Aim UI

在笔记本中运行以下命令以启动Aim UI界面:

  1. 加载Aim扩展以支持笔记本环境:

%load_ext aim
  1. 运行 %aim up 在笔记本中打开 Aim UI:

%aim up

查看与Jupyter Notebook的集成指南获取更多详情。

在Docker容器内运行Aim UI和跟踪服务器

Aim Docker images 可用于运行 Aim UI 和 Aim Remote 跟踪服务器。Aim Docker 镜像的默认命令是 aim up。要通过端口映射启动包含 Aim UI 的 Docker 容器:

docker run --publish 43800:43800 aimstack/aim

运行带有Aim Remote跟踪服务器的容器:

docker run --publish 53800:53800 aimstack/aim server