最近在使用MxNet,但是MxNet原生并没有提供一个类似于TensorBoard的可视化工具,所以之前一直matplotlib来画学习图。最近看到了MxNet出了一个MxBorad的工具,可以让MxNet可视化,真神器。下面介绍一个如何使用
安装
安装很简单分两步
- 第一步需要首先安装mxboard pip install mxboard
- 第二步需要安装 pip install tensorflow tensorboard
其实还是需要安装tensorflow和tensorboard,因为界面是直接使用tensorboard。mxborad只是用来写入log数据,tensorboard会读取那些那个数据并以web的方式展示。
计算过程中写入log数据
这是非常重要的一环因为最终是对这些写入的log数据进行可视化的
有下面这些那个数据可以被写入:
- add_graph 写入计算图
- add_scalar 写入标量数据,例如 acc或者loss或者梯度
- add_histogram 写入模型参数这样就可以看到模型参数随着运行的变迁
- add_image 写入用来训练的图片,可选
再调用上述方法之前首先要创建SummaryWriter
with SummaryWriter(logdir='./logs', flush_secs=5) as sw:
显示web界面
mxboard和计算过程是两个不同的进程,如果想要显示web的话需要另外运行命令
tensorboard --logdir=./logs --host=127.0.0.1 --port=8888
这里面最重要的参数是logdir,它是用来指定要加载log文件的位置。只有正确的加载了log文件才能正确地进行可视化
运行上述命令以后就可以在本地浏览器打开网页