我尝试从Python中的TensorflowEvent日志中读取损失值,以将其用于我自己的日志/仪表板。
我使用的模型通过对象检测API(TF2.2)进行了训练,当我在Tensorboard中打开它们时,所有日志都会显示它们的值。但是当我尝试使用以下代码读取它们时,所有值都只显示0.0
tags = ['DetectionBoxes_Percision/mAP','DetectionBoxes_Recall/AR@1','Loss/classification_loss','Loss/localization_loss','Loss/regularization_loss','Loss/total_loss']
# eval
evalDir = os.path.join(modelOutput,'eval')
evalFile = os.listdir(evalDir).pop()
print(evalFile)
evalMeta = {}
for e in tf.compat.v1.train.summary_iterator(os.path.join(evalDir,evalFile)):
for v in e.summary.value:
print(v.tag)
if v.tag in tags:
print(v)
evalMeta[v.tag] = v.simple_value
meta['eval'] = evalMeta
输出
'eval': {'DetectionBoxes_Recall/AR@1': 0.0,'Loss/localization_loss': 0.0,'Loss/classification_loss': 0.0,'Loss/regularization_loss': 0.0,'Loss/total_loss': 0.0},'train': {'Loss/localization_loss': 0.0,'Loss/total_loss': 0.0}
抱歉,我无法将日志复制为文本
样本日志文件: https://drive.google.com/file/d/199gIes0skYK00Kir85-HR_VG4lxPYtmP/view?usp=sharing
Env: Python 3.7和TF2.2.0
我希望有人能告诉我如何从日志文件中获取真实值:)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。