Overview
在训练神经网络时,我们希望能更直观地了解训练情况,包括损失曲线、输入图片、输出图片、卷积核的参数分布等信息。这些信息能帮助我们更好地监督网络的训练过程,并为参数优化提供方向和依据。最简单的办法就是打印输出,但其只能打印数值信息,不够直观,同时无法查看分布、图片、声音等。接下来,将介绍两个深度学习中常用的可视化工具之一:Tensorboard。
Installment
tensorboard 的安装主要分为几步:
1 安装TensorFlow
如果电脑中已经安装完TensorFlow可以跳过这一步,如果电脑中尚未安装,建议安装CPU-Only的版本,具体安装教程参见TensorFlow官网。
2 安装tensorboard
pip install tensorboard
3 安装tensorboardX
pip install tensorboardX
tensorboardX 的使用非常简单。首先用如下命令,在终端启动tensorboard:
tensorboard --logdir <your/running/dir> --port <your_bind_port>
Example
下面举例说明tensorboardX的使用。
首先,导入tensorboardX;
其次,实例化一个SummaryWriter(log_dir=‘path_to’);其中,__inti__(self, log_dir=None, comment=",**kwargs),log_dir 为生成的文件所放的目录。
再次,往log_dir 添加数据。支持scalar,image figure, histogram, audio, text, graph, onnx_graph, embedding,pr_curve,video。
最后,终端是使用命令:
tensorboardX --logdir path_to
一个关于 scalar 的例子
更多例子,关于text、history、image等可参考 我是官网例子。
显示网络结构可参考 我是网络结构。
训练过程损失函数loss可视化可参考 我是loss可视化。
Other
使用过程可能遇到的问题,可参考另一篇文章:tensorboardX 问题记录
Reference
[1] tensorflow
[2] tensorboardX
[3] 文中全部代码