美文网首页ROS · 机器人笔记我爱编程
2018-04-02关于tensorboard(很好看的可视化工

2018-04-02关于tensorboard(很好看的可视化工

作者: DIO哒 | 来源:发表于2018-04-02 20:19 被阅读691次

tensorboard是tensorflow自带的很好看的一个可视化工具,未来应该会非常有用,但是用起来稍微有些麻烦,也有一些坑。
首先是运行的问题,我是在win10上使用anaconda安装的tensorflow,所以要先到ananconda的目录下找到tensorboard.exe这种东西,把anaconda里Scripts这个目录加到环境变量中tensorboard才能正常使用。
下面是一些从莫凡Python中学到的初步使用方法:

def add_layer(inputs,in_size,out_size,n_layer,activation_function=None):
    layer_name='layer%s' % n_layer
    with tf.name_scope("layer"):
        with tf.name_scope("weight"):
            Weights = tf.Variable(tf.random_normal([in_size,out_size]),name="W")#row * col
            tf.summary.histogram(layer_name+"/weights",Weights)
        with tf.name_scope("biases"):
            biases=tf.Variable(tf.zeros([1,out_size])+0.1)
            tf.summary.histogram(layer_name + "/biases", biases)
        with tf.name_scope("Wx_plus_bias"):
            Wx_plus_b=tf.matmul(inputs,Weights)+biases
        if activation_function is None:
            outputs=Wx_plus_b
        else :
            outputs=activation_function(Wx_plus_b)
        tf.summary.histogram(layer_name + "/outputs", outputs)
        return outputs

其中with tf.name_scope("名字")这种就是写出各种节点的名字在图里面

image.png
总之图很大
image.png
想要看这种图则需要添加tf.summary.histogram(layer_name + "/outputs", outputs)这种代码
想查看损失函数的值有没有随着训练下降就在下面加上这个
tf.summary.scalar('loss',loss)

然后,开始训练的准备工作则需要变成这样

sess=tf.Session()
merged=tf.summary.merge_all()
writer=tf.summary.FileWriter("D:\\logs",sess.graph)
init=tf.global_variables_initializer()
sess.run(init)#important

其中D:\logs是存放tensorboard生成的文件的地方

在terminal中输入tensorboard --logdir=D:\logs
之后就可以复制下面的网址到浏览器中查看生成的各种图表了。
如果不行的话可能是因为没有激活anaconda的环境,也可能是因为环境变量没有设置,也可能是logdir后面写的东西有问题,win10和mac也不太一样。


image.png

相关文章

网友评论

    本文标题:2018-04-02关于tensorboard(很好看的可视化工

    本文链接:https://www.haomeiwen.com/subject/pxoxhftx.html