tensorboard简单使用

时间:2023-11-10 11:46:26

代码写的再好,没有图别人也不知道好在哪。

我们在使用tensorflow的时候,使用tensorboard可以直观的看到我们的网络结构,甚至它可以计算卷积和池化的维度(我不知道是不是因为我已经运行了一遍,所以维度显示出来了)

首先是开启tensorboard的代码:

tensorboard --ogdir="F:\workspaces\pycharm\face_diagnose\TencentTensorFlow\CNN\tmp\mnist_logs"

因为我用pip下载了tensorborad,所以可以直接用这个命令。也建议这样做,因为每次都到tensorborard下非常麻烦。

然后我们在我们的代码中启用tensorboard就可以了:

  # tensorboard上进行数据可视化
tf.summary.scalar("loss", loss)
tf.summary.scalar("accuracy", accuracy)
merged_summary_op = tf.summary.merge_all()
summary_writer = tf.summary.FileWriter('./tmp/mnist_logs')

这里我添加了两个scalar,分别是loss和accuracy.然后添加一个op:tf.summary.merge_all()

接着新建一个 tf.summary.FileWriter(路径) 这里的路径就是上面我启动tensorboard里,--logdir的路径

我们在开启session之后,首先将对应的网络结构保存下来:

summary_writer.add_graph(sess.graph)

然后我们在Session中run这个我们的op就可以了:

s = sess.run(merged_summary_op,feed_dict={x: batch[0], y_real: batch[1], keep_prob: 1.0})
summary_writer.add_summary(s, i)

要注意的是,每次run之后,要用writer增加一个记录。传入两个参数(1,2).参数1是run之后的返回值。注意,如果没有添加scalar或其他的东西,是没有返回值的。

因为我这里不能截图,所以效果图暂时不放了,等之后条件允许了在补充。