Tensorflow - 有条件地将摘要写入tensorboard

时间:2016-10-14 21:32:18

标签: tensorflow tensorboard

我使用Tensorboard可视化Tensorflow运行,我希望有一个每个纪元只能写一次值的摘要图。

我想做这样的事情:

with graph.as_default():
    tf_ending = tf.placeholder(tf.bool)
    tf.scalar_summary('Loss', loss) # Some summaries are written every time
    if tf_ending:
        # This summary should only get written sometimes.
        tf.scalar_summary('Total for Epoch', epoch_total)

我觉得我需要做除tf.merge_all_summaries()以外的其他事情并分别管理这些摘要集,但我不确定它是如何工作的。

1 个答案:

答案 0 :(得分:1)

执行此操作的一种方法是向SummaryWriter添加自定义摘要protobuf。在每个纪元的末尾(会话/图表之外),您可以添加以下内容:

summary = tf.Summary()
summary.value.add(tag='Total for Epoch',simple_value=epoch_total)
summary_writer.add_summary(summary, train_step)

但是,这需要通过张量流图(sess.run)返回值(epoch_total)。此外,我不确定这是否是执行此类操作的最佳方式,但是您确实在TF示例中看到了这种情况,例如: herehere