初学tensorflow-tensorboard使用

在线性回归基础上,利用tensorboard进行可视化。

1、显示网络框架

with tf.name_scope('inputs'):
   xs = tf.placeholder(tf.float32, [None, 1], name='x_input')
   ys = tf.placeholder(tf.float32, [None, 1], name='y_input')
  • 例子如上:可视化1线性回归的输入层。通过with tf.name_scope(xxx):命令可以可视化网络的任意结构。

2、显示权重、偏置数据

Weights = tf.Variable(tf.random_normal([in_size, out_size]), name='W')
tf.summary.histogram(layer_name + '/weights', Weights)
  • 例子如上:可视化权重数据。通过tf.summary.histogram(xxx,xxx)可视化数据信息。

3、显示损失数据

loss = tf.reduce_mean(tf.reduce_sum(tf.square(ys - prediction),
                                        reduction_indices=[1]))
tf.summary.scalar('loss', loss)
  • 例子如上:可视化损失数据。通过tf.summary.scalar(xxx, loss)可视化损失信息。

4、(1,2,3)步需要以下命令相配合

sess = tf.Session()
writer = tf.summary.FileWriter("logs/", sess.graph)
merged = tf.summary.merge_all()
  • 含义:建立文件,存储融合数据。
  • 注意:此时没有数据,显示的是网络结构与数据框图。

result = sess.run(merged,
                          feed_dict={xs: x_data, ys: y_data})
writer.add_summary(result, i)
  • 含义:将数据丢入模型(此处丢入的是merged,不是train!!),得到一批数据,将数据加入到数据融合文件,系统会自动将数据显示在数据框图中。

5、可视化截图

  • tensorboard启动:在存储数据文件目录下,输入tensorboard --logdir==“logs\”,在浏览器输入localhost:6006即可。

1、网络结构

2、权重及偏置

3、损失


6、代码已上传本人github,其主要根据莫烦代码修改而成。

注意:计算机名需要设置为英文,中文情况下生成的tensorboard文件乱码

参考文献:

1、莫烦tensorflow教程

打赏
  • 版权声明: 本博客所有文章除特别声明外,均采用 Apache License 2.0 许可协议。转载请注明出处!
  • © 2015-2021 高腾腾
  • Powered by Hexo Theme Ayer
  • PV: UV:

谢谢大爷

支付宝
微信