介绍
这篇文章将为大家详细讲解有关如何在Tensorflow中使用Tensorboard实现可视化,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
<强> Tensorboard: 强>
如何更直观的观察数据在神经网络中的变化,或是已经构建的神经网络的结构。上一篇文章说到,可以使用matplotlib第三方可视化,来进行一定程度上的可视化。然而Tensorflow也自带了可视化模块Tensorboard,并且能更直观的看见整个神经网络的结构。
上面的结构图甚至可以展开,变成:
<强>使用:强>
结构图:
with tensorflow .name_scope (layer_name):
直接使用以上代码生成一个带可展开符号的一个域,并且支持嵌套操作:
with tf.name_scope (layer_name):, with 才能;tf.name_scope(& # 39;重量# 39;):
节点一般是变量或常量,需要加一个“name=& # 39;”参数,才会展示和命的名,如:
with tf.name_scope(& # 39;重量# 39;):, Weights 才能=,tf.Variable (tf.random_normal ([in_size out_size]))
结构图符号及意义:
<强>变量:强>
变量则可使用Tensorflow.histogram_summary()方法:
tf.histogram_summary (layer_name +“/weights"权重),#名命的名,权重赋值
<强>常量:强>
常量则可使用Tensorflow.scalar_summary()方法:
tf.scalar_summary(& # 39;损失# 39;,损失),#命名和赋值
<强>展示:强>
最后需要整合和存储SummaryWriter:
#合并到总结中, 时间=merged tf.merge_all_summaries (), #选定可视化存储目录, writer =, tf.train.SummaryWriter(“/目录“,sess.graph)
合并也是需要运行的,因此还需要:
result =, sess.run(合并),#合并也是需要运行的, writer.add_summary才能(因此,i)
执行:
运行后,会在相应的目录里生成一个文件,执行:
tensorboard ——logdir=?目录“
会给出一段网址:
浏览器中打开这个网址即可,因为有兼容问题,firefox并不能很好的兼容,建议使用铬。
常量在事件中,结构图在图中,变量在最后两个标记中。
<强>附项目代码:强>
项目承接自上一篇文章(已更新至最新Tensorflow版本API r1.2):
import tensorflow as tf , import numpy  as np , ,, def add_layer(输入、in_size out_size、n_layer activation_function=None):, # activation_function=没有线性函数,, layer_name才能=安? s", %, n_layer , with 才能tf.name_scope (layer_name):,, ,,,with tf.name_scope(& # 39;重量# 39;):,, ,,,,,Weights =, tf.Variable (tf.random_normal ([in_size out_size])), #重量中都是随机变量,, ,,,,,tf.summary.histogram (layer_name +“/weights"权重),#可视化观看变量,, ,,,with tf.name_scope(& # 39;偏见# 39;):,, ,,,,,biases =, tf.Variable (tf.zeros ([1, out_size]) + 0.1), #偏见推荐初始值不为0,, ,,,,,tf.summary.histogram (layer_name +“/biases"偏见),#可视化观看变量,, ,,,with tf.name_scope (& # 39; Wx_plus_b& # 39;):,, ,,,,,Wx_plus_b =, tf.matmul(输入、重量)+ biases 输入* # + biases 重量, ,,,,,tf.summary.histogram (layer_name +“/Wx_plus_b" Wx_plus_b), #可视化观看变量,, ,,,if activation_function is 没有:,, ,,,,,outputs =, Wx_plus_b , 其他,,,,,, ,,,,,outputs =, activation_function (Wx_plus_b),, ,,,tf.summary.histogram (layer_name +“/outputs",输出),#可视化观看变量,, ,,,return outputs , ,, #创建数据x_data y_data ,, 时间=x_data np.linspace (1300) (:, np.newaxis), #[1]区间,300个单位,np.newaxis增加维度,, 时间=noise np.random.normal (0、0.05、x_data.shape), #噪点,, 时间=y_data np.square (x_data) -0.5 + noise , ,, null null null null null null null null null null null null null null null null null null null null null null null null null null null null null如何在Tensorflow中使用Tensorboard实现可视化