tensorboard同时显示训练曲线和测试曲线

在做网络训练实验时,有时需要同时将训练曲线和测试曲线一起显示,便于观察网络训练效果。经过很多次踩坑后,终于解决了。
具体的方法是:设置两个writer,一个用于写训练的数据,一个用于写测试数据,并且这两个writer分别存在train和test路径中,注意测试的writer不能加sess.graph如下代码所示。

...
train_log_dir = 'logs/train/'
test_log_dir = 'logs/test/'   # 两者路径不同
megred = tf.summary.merge_all()
with tf.Session() as sess:
    writer_train = tf.summary.FileWriter(train_log_dir,sess.graph)
    writer_test = tf.summary.FileWriter(test_log_dir)    # 注意此处不需要sess.graph
    ...other code...
    writer_train.add_summary(summary_str_train,step)
    writer_test.add_summary(summary_str_test,step)

此处贴一个使用mnist测试的图片,如图所示,在左下角可以通过testtrain的选项卡选择查看哪条曲线。
tensorboard同时显示训练曲线和测试曲线_第1张图片

你可能感兴趣的:(数据处理)