使用python从Tensorflow日志中手动读取最后一个值

时间:2019-04-01 19:37:13

标签: python tensorflow tensorboard

在python中,我使用以下命令记录tensorflow标量值:

import tensorflow as tf
...
self.writer = tf.summary.FileWriter(log_dir)
...
summary = tf.Summary(
  value=[
    tf.Summary.Value(
      tag=tag,
      simple_value=value
    )
  ]
)
self.writer.add_summary(summary, step)
self.writer.flush()

我希望能够继续上次中断的日志记录。

我现在将如何导入日志文件并读出最后一个值及其索引?

1 个答案:

答案 0 :(得分:2)

类似的方法可能有用:

def get_latest_value(log_file, tag_name):
    latest_summ = None
    latest_value = None

    for summary in tf.train.summary_iterator(log_file):
        if latest_summ is None or summary.step > latest_summ.step:
            latest_summ = summary
    for v in latest_summ.summary.value:
        if v.tag == tag_name:
            return v.simple_value

get_latest_value("./log/events.out.tfevents.1554114440.me", "train_error")