【发布时间】:2017-11-02 23:45:28
【问题描述】:
我希望能够查看我在 TensorBoard InteractiveSession 中试验的 TensorFlow 图。
例如我想成为一个操作A然后刷新TensorBoard并在图中看到A,然后执行B并刷新并在图中看到B。然后,如果我决定要更改图表,我想执行一些操作并获得一个干净的状态,这样当我随后输入 A 和 C 时,我只会看到 A 和 C TensorBoard,而不是我目前看到的B、C 和两个版本的A。
例如,如果我
import tensorflow as tf
sess = tf.InteractiveSession()
# operation A
# operation B
writer = tf.summary.FileWriter(logdir='logdir', graph=sess.graph)
writer.flush()
然后运行
tensorboard --logdir logdir --purge_orphaned_data
我在 TensorBoard 中得到一个图表,显示 A 和 B 符合预期。
如果我稍后执行其他操作
# operation P
# operation Q
这些不会出现在 TensorBoard 中,除非我再次执行:
writer = tf.summary.FileWriter(logdir='_tflog', graph=sess.graph)
writer.flush()
这会创建一个新日志,P 和 Q 现在与 TensorBoard 中的 A 和 B 一起出现在图表中。
如果我运行上面的writer 行,则这些操作的每一次额外执行要么在 TensorBoard 中无效,要么显示为一个额外的节点。
如果我想随后删除操作(例如 A 和 P),我似乎需要完全重新启动所有操作(Session 和 FileWriter 并删除所有旧日志)。
所有这些都令人困惑且难以跟踪(我什至不确定我上面的帐户是否准确!)。
是否有某种方法可以完全重置 TensorBoard 使用的 Graph,以便我可以在 TensorBoard 中仅查看自上次此类重置以来添加的那些图形元素?
【问题讨论】: