一、TensorBoard的简介与安装
TensorBoard是Tensorflow中强大的可视化工具,支持标量、图像、文本、音频和 Embedding 等多种数据可视化。可以在模型的训练过程中绘制loss曲线,监控模型的训练效果,也可以对模型的参数分布,数据分布,图像、音频等各种数据的可视化。下面是TensorBoard的一个界面:
TensorBoard是如何显示这个界面的呢?下面来看一下TensorBoard的运行机制
从上图中可看出先从python脚本中记录需要可视化的数据,然后生成eventfile文件存储到硬盘中,从终端运行TensorBoard打开web界面,读取存储在eventfile中的数据在web页面进行可视化。
下面通过代码来了解一下这个流程:
import numpy as np
from torch.utils.tensorboard import SummaryWriter
writer = SummaryWriter(comment='test_tensorboard')
for x in range(100):
writer.add_scalar('y=2x', x * 2, x)
writer.add_scalar('y=pow(2, x)', 2 ** x, x)
writer.add_scalars('data/scalar_group', {
"xsinx": x * np.sin(x),
"xcosx": x * np.cos(x),
"arctanx": np.arctan(x)}, x)
writer.close()
从torch.utils.tensorboard中导入SummaryWriter类,通过这个类创建一个writer,记录需要可视化的数据。直接运行上述代码,可能会报错,【ModuleNotFoundError: No module named ‘tensorboard’ 】和【ModuleNotFoundError: No module named ‘past’】需要安装tensorboard和past,安装命令是:
pip install tensorboard
pip install future
安装完成之后,运行代码会生成一个runs文件夹
在终端输入tensorboard --logdir=./runs,点击生成的链接,即可看到如下的界面
二、TensorBoard的使用
Tensorbord的基本使用包括准确率和损失函数的可视化,参数的数据分布以及梯度的分布,图像数据的可视化等。