VisualDL可视化训练指标

在使用PaddleX训练模型过程中,各个训练指标和评估指标会直接输出到标准输出流,同时也可通过VisualDL对训练过程中的指标进行可视化,只需在调用train函数时,将use_vdl参数设为True即可,如下代码所示,

model = paddlex.cls.ResNet50(num_classes=1000)
model.train(num_epochs=120, train_dataset=train_dataset,
            train_batch_size=32, eval_dataset=eval_dataset,
            log_interval_steps=10, save_interval_epochs=10,
            save_dir='./output', use_vdl=True)

模型在训练过程中,会在save_dir下生成vdl_log目录,通过在命令行终端执行以下命令,启动VisualDL。

visualdl --logdir=output/vdl_log --port=8008

在浏览器打开http://0.0.0.0:8008便可直接查看随训练迭代动态变化的各个指标(0.0.0.0表示启动VisualDL所在服务器的IP,本机使用0.0.0.0即可)。

在训练分类模型过程中,使用VisualDL进行可视化的示例图如下所示。

训练过程中每个Step的Loss和相应Top1准确率变化趋势: ../_images/vdl1.jpg
训练过程中每个Step的学习率lr和相应Top5准确率变化趋势: ../_images/vdl2.jpg
训练过程中,每次保存模型时,模型在验证数据集上的Top1准确率Top5准确率../_images/vdl3.jpg