撰写时间:2017.5.17
网上关于这方面的教程很多,不过都偏向与如何整理图,就是通过增加命名域使得图变得好看.下面主要讲解如何搭建起来tensorboard.
系统环境:ubuntu14.04,python2.7,tensorflow-0.11
创建summary op
1.需要在图中创建summary的操作.常用的summary操作有tf.summary.scalar和tf.summary.histogram.
注:图中必须存在summary节点.不然会报错,如下图报错
merge合并操作
2.调用tf.summary.merge_all(),原因如下.
在TensorFlow中,所有的操作只有当你执行,或者另一个操作依赖于它的输出时才会运行。我们刚才创建的这些节点(summary nodes)都围绕着你的图像:没有任何操作依赖于它们的结果。因此,为了生成汇总信息,我们需要运行所有这些节点。这样的手动工作是很乏味的,因此可以使用tf.summaries.merge_all\来将他们合并为一个操作。
然后你可以执行合并命令,它会依据特点步骤将所有数据生成一个序列化的Summary protobuf对象。最后,为了将汇总数据写入磁盘,需要将汇总的protobuf对象传递给tf.train.Summarywriter。
创建writer对象
summary_writer = tf.summary.FileWriter('/tmp/mnist_logs',sess.graph)
运行
和正常运行训练过程是一样的.对于placeholder的图要带上feed参数.
summary_str = sess.run(merged_summary_op,feed_dict={x: batch[0], y_: batch[1]});
summary_writer.add_summary(summary_str, i);
最后帖上我的代码
#coding:utf-8
#######softmax
import tensorflow as tf
import numpy as np
from tensorflow.examples.tutorials.mnist import input_data
######prepare data
mnist = input_data.read_data_sets('MNIST_data/',one_hot = True);
#######create the graph
x