【新手小白】在tensorflow中使用tensorboard的方法

用tensorboard实现scalars(图表)可视化。


1.初始化日志文件

首先需要引入下面的代码,这些代码的位置在main.py里面。
其中,logdir是存放日志文件的目录。

	import tensorflow as tf
    logdir = './tensorboard/test1/'
    summary_writer = tf.summary.create_file_writer(logdir)

项目结构如下:
在这里插入图片描述

2.构造图表

然后需要在训练的地方加上下述代码。
在这里,我是把loss给记录下来。step表示步长,是tensorboard折线图中的横坐标,一般用当前的epoch来表示。此处纵坐标就是loss值了。

        with summary_writer.as_default():
            tf.summary.scalar('d_loss', d_loss, step=epoch)
            tf.summary.scalar('g_loss', g_loss, step=epoch)

3.运行命令,成功打开tensorboard

此时需要点击屏幕下方的“terminal”按钮
在这里插入图片描述
点击这个小小的倒三角之后,再点击“command prompt”。
在这里插入图片描述
进入日志文件所在的文件夹。(我这里是进入tensorboard文件夹)
在这里插入图片描述
现在到了最后一步,需要运行下面的命令。

tensorboard --logdir=test1 --port=6007

logdir指明了日志文件夹是哪个,我这里的日志文件夹是test1。
port指明了程序运行的端口号。我使用的端口号是6007。
运行成功后,出现如下内容。点击链接,就可以跳转到tensorboard啦!
在这里插入图片描述
tensorboard将训练过程可视化,可以实时地看到当前的训练状态。
在这里插入图片描述

PS:出现错误:No dashboards are active for the current data set

当然我在第一次使用的时候,并没有成功跳转到上述界面,而是跳转到如下界面。
在这里插入图片描述
原因1:可能此时程序还没有运行,日志文件里面还没有数据,所以自然无法呈现出图表。
解决方案:启动程序,开始运行,直到日志文件中有数据了之后,再刷新界面试试看。

原因2:日志文件的路径写错了,tensorboard找不到文件。

logdir = './tensorboard/test1/'

解决方案:更正日志文件的路径。

原因3:原来设定的端口6007正在被其他进程占用。

tensorboard --logdir=test1 --port=6007

解决方案:更换端口为其他数字(6006,6008,6009等等)。

猜你喜欢

转载自blog.csdn.net/rellvera/article/details/129778636