写在前面
MXBoard与Pytorch的可视化工具TensorBoardX一样,得益于TeamHG-Memx组织奖TensorFlow中写数据到事件文件(event files)的提取出来的算法,开发者们只需要将这个算法嵌入到深度学习的框架中,就可以使用TensorBoard来可视化框架特有的数据结构。
快速上手
MXBoard API 的设计参考了TensorBoardX,所有的记录 API 都定义在一个叫 SummaryWriter
的类当中,这个类含有诸如记录的文件地址、写文件的频率、写文件的队列大小等等信息,用户可以根据需求设置。当需要把当前数据记录成 TensorBoard 中某种数据类型时,用户只要调用相应的 API 即可。
正态分布图
用MXNet画一个正态分布标准差逐渐减小的数据分布图
1 | from mxnet import nd |
可视化tensorboard --logdir=./logs --host=127.0.0.1 --port=8888
训练可视化
注意:HybridSequential才能可视化网络图
1 | import mxnet as mx |
可视化卷积层的filters以及feature maps
将卷积层的filters和feature maps当成图片可视化有两个意义:
1.特征平滑规律地filters是模型训练良好的标志之一,未收敛或过拟合模型的卷积层filters会出现很多noise。
2.观察filters和feature maps的图片,特别是第一层卷积的图片可以总结出该层所关注的图片特征,这有助于我们理解卷积神经网络的工作原理。
这里根据LeNet第一个卷积层进行可视化:
1 | from mxnet.gluon import nn, data as gdata |
图片embedding
展示的时候有些问题,代码运行没问题,估计是不同tensorflow版本的问题,目前试了1.13.r1, 1.15.1, 2.0.0都不成功
1 | from mxnet.gluon import nn, data as gdata |
- 1.MXNet Blog ↩
- 1.TensorBoardX ↩
- 2.MXBoard ↩