使用张量板绘制单独的学习曲线

Plot separate learning curves with tensorboard

运行 一个带有张量流的神经网络模型,我想绘制训练集和测试集上的准确度分数。然而,张量板显示的图表看起来很奇怪:那里只有一个 'accuracy' 选项卡,它在同一个数字上绘制了两个分数。所以基本上,x 轴上的每一步都有两个连接在一起的点。如何在该图上分别绘制两条线(训练准确度和测试准确度)?

这是我的代码片段:

loss_summary = tf.summary.scalar('loss', loss) acc_summary = tf.summary.scalar('accuracy', accuracy)

summary_loss, summary_acc_train = sess.run([loss_summary, acc_summary], feed_dict={X: X_train, y: y_train}) summary_acc_test = sess.run([acc_summary], feed_dict={X: X_test, y: y_test})

summary_writer.add_summary(summary_loss, epoch) summary_writer.add_summary(summary_acc_train, epoch) summary_writer.add_summary(summary_acc_test, epoch)

您需要创建两个不同的摘要作者:

train_summary_writer = tf.summary.FileWriter(os.path.join(SUMMARIES_DIR, "train"), sess.graph)
validation_summary_writer = tf.summary.FileWriter(os.path.join(SUMMARIES_DIR, "validation"), sess.graph)

 ...

train_summary_writer.add_summary(summary_loss, epoch)
train_summary_writer.add_summary(summary_acc_train, epoch)
validation_summary_writer.add_summary(summary_acc_test, epoch)