在复杂的问题中,网络往往都是很复杂的。为了方便调试参数以及调整网络结构,我们需要将计算图可视化出来,以便能够更好的进行下一步的决策。Tensorflow提供了一个TensorBoard工具,可以满足上面的需求。
TensorBoard是一个可视化工具,能够有效地展示Tensorflow在运行过程中的计算图、各种指标随着时间的变化趋势以及训练中使用到的数据信息。可以查看TensorBoard Github ReadMe 详细阅读适应方法。
在Ubuntu系统中,使用一个小例子运行TensorBoard:
先使用Vim编辑器创建一个文件eg_board.py,并输入以下代码,这些代码是对一个线性方程图的简单的创建:
import tensorflow as tf
W = tf.Variable(2.0, dtype = tf.float32, name = "Weight")
b = tf.Variable(1.0, dtype = tf.float32, name = "Bias")
x = tf.placeholder(dtype = tf.float32, name = "Input")
with tf.name_scope("Output"):
y = W * x + b
path = "./log"
init = tf.global_variables_initializer()
with tf.Session() as sess:
sess.run(init)
writer = tf.summary.FileWriter(path, sess.graph)
result = sess.run(y, {x: 3.0})
print("y = %s" % result)
使用TensorFlow保存图的信息到日志中,用以下命令,这一命令在py文件中加入:
tf.summary.FileWriter("日志保存路劲", sess.graph)
另外可以使用命名空间name_scope,方便TensorBoard中的展示。
文件创建好之后,我们使用TensorBoard读取并且展示日志,命令如下:
tensorboard –logdir=日志所在路径
TensorFlow安装好之后,TensorBoard会自动安装好,在命令行中输入tensorb..,按下tab会自动补全,则说明TensorBoard组件正常使用。
在输入上面的读取日志展示日志命令后,命令行会如下输出:
可以看到在6006端口开设了TensorBoard可视化的入口,这个时候,直接ctrl+单机地址,就可以访问到TensorBoard了。
在TensorBoard中有很多强大的可视化功能,有一些符号的含义需要知道:
其他的操作,这里不多介绍,在以后的博客中,有机会会做更详细地介绍。