我们完成深度学习的训练后,通常要查看实际的训练效果,一般都是看损失函数的变化情况和准确率的变化情况,而为了可以很直观的看到训练效果,一般有两种方式。
一是采用matplotlib的库函数,将变化情况绘制出来
还有一种就是采用TensorBoard库的方式。
本篇博客主要介绍第二种方式。
一、训练前调用回调函数
使用使用tensorboard监控训练过程,需要指定回调函数,添加tensorboard观察。
添加回调
这里是引用
# 回调函数
# 其中的参数就指定在当前文件夹下创建一个名为graph的文件夹,然后将训练的日志以及相关参数写入。
tensorboard = tf.keras.callbacks.TensorBoard(log_dir="./graph")
开始训练
history = model.fit(x_train,y_train,epochs=4,validation_data=(x_test,y_test),batch_size=128,verbose=1,callbacks=[tensorboard])
在fit函数中主要要添加callbacks
参数。
训练完成之后,在当前的文件夹下就可以看多多出一个graph
的文件夹。
进入这个文件夹后发现存有训练和验证两个集合的日志
然后通过anaconda prompt命令行进入相应的虚拟环境后,然后输入命令,开启以下操作:
- 进入目标文件夹
cd: C:\Users\87047\AnacondaTest\graph
- 在命令行中启动 TensorBoard 服务器:
tensorboard --logdir="./"
这会在当前目录下启动一个 TensorBoard 服务器。
然后就可以看到提示打开一个本地的网址,赋值这个网址
在浏览器中打开即可。
你可以在浏览器中查看 TensorBoard 的可视化结果。
在浏览器中,你将看到 TensorBoard 的界面。该界面分为几个标签页,包括 Scalars、Graphs、Histograms、Projector 等。你可以根据需要选择不同的标签页来查看不同类型的可视化结果。
Scalars
标签页用于显示训练过程中的标量指标,如损失函数、准确率等的变化情况。Graphs
标签页用于显示模型的计算图(Graph),包括神经网络的结构和层之间的连接关系。Histograms
标签页用于显示变量的直方图分布,可以用于观察权重和偏置的变化情况。Projector
标签页用于显示降维后的数据点在二维空间中的分布,可以用于观察数据的聚类情况。- 在选择标签页后,你可以根据页面上的指导进行进一步的操作和查看。
通过以上步骤,可以在 TensorBoard 中查看到训练过程中的各种可视化结果,帮助你更好地理解模型的训练过程并进行优化调整。
二、退出
要正确退出 TensorBoard,你可以在启动 TensorBoard 的命令行界面中按下 Ctrl + C 组合键。这将会停止 TensorBoard 服务器的运行,并回到命令行提示符。
在 Windows 系统中,你也可以关闭命令行窗口来退出 TensorBoard。