1、什么是tensorboard?
Tensorboard是Tensorflow的一个可视化工具,目的是为了更好地管理、调试和优化神经网络的训练过程。Tensorboard可以有效地展示Tensorflow在运行过程中的计算图、各种指标随着时间的变化趋势以及训练中使用到的图像等信息。
2、需要注意的地方
重点:
1、使用Tensorboard,首先要定义变量的命名空间name_scope,只有定义了name_scope,我们在tensorboard中的Graph才会看起来井然有序。name_scope对神经网络的训练过程是没有影响的。
2、在定义好命名空间之后,我们需要将我们网络中的数据流保存到文件中:tf.summary.FileWriter('logs/',sess.graph)
3、参数名、op都可以定义新的名称,如例子中的A、B、C
4、执行代码后启动tensorboard:tensorboard --logdir=G:\Code\basic\1\logs
5、用Google浏览器打开生成的http地址
3、一个简单的例子
import tensorflow as tf
#定义命名空间 with tf.name_scope('input'):
#fetch:就是同时运行多个op的意思
input1 = tf.constant(3.0,name='A') # 定义名称,会在tensorboard中代替显示
input2 = tf.constant(4.0,name='B')
input3 = tf.constant(5.0,name='C')
with tf.name_scope('op'):
#加法
add = tf.add(input2,input3)
#乘法
mul = tf.multiply(input1,add)
with tf.Session() as sess:
#默认在当前py目录下的logs文件夹,没有会自己创建
wirter = tf.summary.FileWriter('logs/',sess.graph)
result = sess.run([mul,add])
print(result)
4、结果查看
执行代码后,找到py文件目录下找logs目录:
可以看到有一个:events.out.tfevents.前缀的文件;
执行命令tensorboard --logdir=G:\Code\basic\1\logs,
然后就可以根据它提示的网址去访问结果,这里使用的是Google浏览器:
可以看到图中的输入就变成了定义好的名称:
可以看GRAPH选项下面保存了我们的整个网络的流图。
这里这是一个最基本的小例子,更多的信息欢迎大家可以自己去探索~下篇继续