我是 Tensorflow 新手,正在运行一个基本的 CNN。作为可视化训练过程的一种方式,我构建了一个包含损失和准确性的摘要,以便稍后在 Tensorboard 中查看,如下所示:
tf.summary.scalar("loss", cost)
tf.summary.scalar("accuracy", accuracy)
我初始化摘要如下。 (get_logdir_string() 返回由给定参数和当前日期时间组成的唯一字符串)
merged_summary_op = tf.summary.merge_all()
summary_writer = tf.summary.FileWriter(get_logdir_string('CIFAR10'),
graph=tf.get_default_graph())
然后对于每个小批量迭代,我都会这样做:
_, summary = sess.run([optimizer, merged_summary_op], feed_dict={x: batch_x,
y_true: batch_y,
keep_prob: dropout})
summary_writer.add_summary(summary, step * batch_size)
然后我运行 Tensorboard 并看到类似以下内容的内容,其中只有每个变量的第一个(没有后缀)包含数据: Screenshot
有人遇到过这种情况吗?谢谢!
最佳答案
我找到了罪魁祸首,并想将其发布在这里以供将来引用。
事实证明,我需要在每次运行之前调用tf.reset_default_graph()
。
关于python - Tensorboard 中重复的所有变量是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41353451/