【mxnet】安装mxboard报错:Compiling summary protocol buffers failed.

官方说明:

深度神经网络自出现以来就一直饱受争议。从实践角度来讲,设计并训练出一个可用的模型非常困难,需要涉及大量的调参、修改网络结构、尝试各种优化算法等等;从理论角度来看,深度神经网络的数学理论证明并不完备,从而造成人们对其基本原理缺乏清晰的认识。而数据可视化带来的直观效果可以很大程度上弥补上述的不足。比如,模型训练时如果能实时画出梯度数据分布,可以很快发现并纠正梯度消失或者梯度爆炸的现象。再比如,词嵌入(word embedding)的可视化表明文字根据语义在低维空间聚合成不同的流形(manifold),这也从数学上解释了,为什么增加词向量的维度可以更好地区分不同语义的聚类(低维空间缠绕的流形在高维可以分开)。优秀可视化工具对深度学习的份量可见一斑。
TensorBoard 的横空出世给 TensorFlow 的使用者带来了可视化的福音。我们曾听到过很多用户(包括企业用户)介绍,选择TensorFlow 是因为可以用 TensorBoard。这么好的东西能否给各大深度学习框架共享呢?多亏了TeamHG-Memex 这个组织,将 TensorFlow 中写数据到事件文件 (event files)的算法提取出来。自此,开发者们只需要将这个算法嵌入到深度学习的框架中,就可以使用 TensorBoard 来可视化框架特有的数据结构了。
正是基于这样的基础,我们开发了一个记录 MXNet 数据类型的库,称作 MXBoard,记录结果得以用 TensorBoard 来呈现

mxboard是一个用于神经网络可视化的工具。

安装

1.安装mxboard需要首先安装tensorboard

pip install tensorflow tensorboard

2.使用以下命令确认tensorboard是否安装正确,如果不报错,则表示tensorboard安装成功

tensorboard --help

3.安装protobuf3
4.安装six
5.安装Pillow
6.从源码安装mxboard

注意,我在这一步出现了错误:

ERROR: Compiling summary protocol buffers failed. You will not be able to use the logging APIs for visualizing MXNet data in TensorBoard. Please make sure that you have installed protobuf3 compiler and runtime correctly.

于是去论坛求助,大神回答是因为只安装了protobuf,而没有安装protobuf3 compiler
因此,去下载Protocol Compiler 并解压,重新安装mxboard就可以了。


尝试使用mxboard

from mxboard import *
sw = SummaryWriter(logdir='./logs')  #日志文件存储在当前文件夹下的logs文件夹内
import mxnet as mx
for i in range(10):
    # create a normal distribution with fixed mean and decreasing std
    data = mx.nd.random.normal(loc=0, scale=10.0/(i+1), shape=(10, 3, 8, 8))
    sw.add_histogram(tag='norml_dist', values=data, bins=200, global_step=i)
sw.close()

打开命令行窗口,进入当前文件夹,键入如下命令以打开 TensorBoard:

tensorboard --logdir=./logs --host=127.0.0.1 --port=8888

打开浏览器,在地址栏输入 127.0.0.1:8888 就可以看到如下效果图:
这里写图片描述
搞定!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值