一、在 layer 中为 Weights, biases 设置变化图表
with tf.name_scope(‘xxxx’)
tf.summary.histogram(layer_name + ‘/xxx’,xxxx)
def add_layer(inputs , in_size, out_size,n_layer, activation_function=None):
## add one more layer and return the output of this layer
layer_name='layer%s'%n_layer
with tf.name_scope(layer_name):
with tf.name_scope('weights'):
Weights= tf.Variable(tf.random_normal([in_size, out_size]),name='W')
tf.summary.histogram(layer_name + '/weights', Weights)
with tf.name_scope('biases'):
biases = tf.Variable(tf.zeros([1,out_size])+0.1, name='b')
tf.summary.histogram(layer_name + '/biases', biases)
with tf.name_scope('Wx_plus_b'):
Wx_plus_b = tf.add(tf.matmul(inputs,Weights), biases)
if activation_function is None:
outputs=Wx_plus_b
else:
outputs= activation_function(Wx_plus_b)
tf.summary.histogram(layer_name + '/outputs', outputs)
return outputs
二、设置loss的变化图
使用tf.scalar_summary()
with tf.name_scope('loss'):
loss= tf.reduce_mean(tf.reduce_sum(
tf.square(ys- prediction), reduction_indices=[1]))
tf.summary.scalar('loss', loss)
三、合并所有训练图
使用tf.summary.merge_all()
sess= tf.Session()
merged = tf.summary.merge_all() # tensorflow >= 0.12
writer = tf.summary.FileWriter("logs/", sess.graph)
sess.run(tf.global_variables_initializer())
四、训练数据
merged 也需要run 才能发挥作用
for i in range(1000):
sess.run(train_step, feed_dict={xs:x_data, ys:y_data})
if i%50 == 0:
rs = sess.run(merged,feed_dict={xs:x_data,ys:y_data})
writer.add_summary(rs, i)
五、在 tensorboard 中查看效果
程序运行完毕之后, 会产生logs目录 , 在logs文件夹的化桑层目录,使用命令 tensorboard –logdir=logs,浏览器中输入使用 http://localhost:6006,查看效果