我已经训练了很长时间的模型(200 000次迭代)。在每次迭代中,我通过tf.summary.FileWriter()
类保存了大量数据,例如损失,准确度,权重等。是的,我知道:那是愚蠢的。结果,我生成了一个大约50 GB的巨大摘要。现在我想删除大部分信息并保持每50个一行。这样我就可以节省大量硬盘空间并加快张量板可视化速度,同时不会对摘要质量产生重大影响。是否可以这样做?
答案 0 :(得分:4)
允许您读取事件文件(存储摘要的位置)的函数是tf.train.summary_iterator
。你可以尝试这样的事情:
import tensorflow as tf
tfevents_filepath = path_to_existing_event_file
tfevents_folder_new = path_to_new_event_file_folder
writer = tf.summary.FileWriter(tfevents_folder_new)
for e in tf.train.summary_iterator(tfevents_filepath):
if e.step == 0 or e.step % 50 == 0: # or any other criterion but make sure
# you keep events from step 0
writer.add_event(e)
writer.close()