tensorboardX|tensorboard 读取事件文件

Part 01 起因

看到记录的图片和我实际运行的不一致,在官方github上查询到可以导出事件文件中的全部内容
tensorboardX|tensorboard 读取事件文件_第1张图片

tf.compat.v1.train.summary_iterator

点进去后是tensorflow v1的内容
tensorboardX|tensorboard 读取事件文件_第2张图片

tensorflow v1 运行结果

由于tensorflow升级,目前v1的内容已经被抛弃了,运行可以看到下文的结果,这个函数目前依旧可以查看里面的tag及value,不过还是推荐后面的方式
tensorboardX|tensorboard 读取事件文件_第3张图片
而且返回内容给出的函数并不是读取事件文件的,好像是用来读取数据的。

Part 02 解决方案

后续搜索在stack overflow上的相关页面中找到对应函数 问题页面
tensorboardX|tensorboard 读取事件文件_第4张图片

summary_iterator

tensorboardX|tensorboard 读取事件文件_第5张图片

from tensorflow.python.summary.summary_iterator import summary_iterator
for e in summary_iterator(path):
    for v in e.summary.value:
        print("v:{}|v.tag:{}|v.value:{}".format(v,v.tag,v.simple_value))

另外一种解决方案

参考
tensorboardX|tensorboard 读取事件文件_第6张图片


from tensorboard.backend.event_processing import event_accumulator        # 导入tensorboard的事件解析器
 
ea=event_accumulator.EventAccumulator(path)     # 初始化EventAccumulator对象
ea.Reload()    # 这一步是必须的,将事件的内容都导进去
print(ea.scalars.Keys())    # 我们知道tensorboard可以保存Image scalars等对象,我们主要关注scalars
train_loss = ea.scalars.Items(keys)    # 读取keys对应的内容

你可能感兴趣的:(Pytorch,数据挖掘,python,selenium)