可视化训练日志#

XTuner 支持通过 MMEngine 使用 TensorBoardWeights & Biases (WandB) 实验管理工具,你可以很方便地跟踪和可视化损失、显存占用等指标。

只需修改一行 config 文件即可配置上述实验管理工具。

TensorBoard#

设置 config 中的 visualizer 字段,并将 vis_backends 设置为 TensorboardVisBackend

+ from mmengine.visualization import Visualizer, TensorboardVisBackend
# set visualizer
- visualizer = None
+ visualizer = dict(type=Visualizer, vis_backends=[dict(type=TensorboardVisBackend)])

启动实验后,tensorboard 产生的相关文件会存在 vis_data 中,通过 tensorboard 命令可以启动进行实时可视化:

image1

tensorboard --logdir=$PATH_TO_VIS_DATA

WandB#

使用 WandB 前需安装依赖库 wandb 并登录至 wandb。

pip install wandb
wandb login

设置 config 中的 visualizer 字段,并将 vis_backends 设置为 WandbVisBackend

+ from mmengine.visualization import Visualizer, WandbVisBackend
# set visualizer
- visualizer = None
+ visualizer = dict(type=Visualizer, vis_backends=[dict(type=WandbVisBackend)])

启动实验后,可在 wandb 网页端 https://wandb.ai 上查看可视化结果:

image2

可以点击 WandbVisBackend API 查看 WandbVisBackend 可配置的参数。例如 init_kwargs,该参数会传给 wandb.init 方法。

+ from mmengine.visualization import Visualizer, WandbVisBackend

# set visualizer

- visualizer = None

+ visualizer = dict(

+   type=Visualizer,

+   vis_backends=[

+       dict(type=WandbVisBackend, init_kwargs=dict(project='toy-example'))])