TF1.0以后的版本:
合并汇总
合并指定的汇总:
tf.summary.merge(inputs, collections=None, name=None)
合并所有汇总:
merged_summaries = tf.summaries.merge_all(key='summaries')
注意:merged_summaries只是一个节点,必须先传入session.run()运行才能获得真正的汇总。
将汇总结果写入事件文件
Summary.FileWriter
## 将计算图汇总
writer = tf.summary.FileWriter(logdir='logs/sim_convnet/', graph=tf.get_default_graph())
writer.close()
FileWriter类:
把Summary protocol buffers写入到events files中
FileWriter提供一个机制,能够在指定的目录下面创建event文件,然后将缓存中的summaries写入到event文件中。该类可以异步的更新events文件中的内容。这个异步机制能够让程序在训练循环过程中调用add方法直接往文件中添加数据而不用阻塞循环训练过程导致训练速度减慢。
使用注意:
- 如果使用
filewriter.add_summary(summary, global_step)
时没有传入global_step
参数,会使scarlar_summary变成一条直线 - 只要是在计算图上的Summary op,都会被merge_all捕捉到,不需要考虑变量生存空间问题
- 如果执行一次,disk上没有保存Summary数据的话,可以尝试下
filewriter.flush()
强制刷新缓存区,让缓存区的数据写入硬盘中
。