How to write mutiple graphs in a run in tensorflow

Maybe you not need it

As it's designed possible to programming with multiple graphs in tensorflow, I wonder how to write the graphs, more than one, with tensorboard. It seems not possible or not strongly supported. This problem is not my priority for now, so I did not do further search. Maybe, you're facing the same situation.


The following is a relevant question from stackoverflow.com and an anser on it.


tensorflow summary - writing multiple graphs


I have a following code using tensorflow:

 g1 = tf.Graph()
 g2 = tf.Graph()

 with g1.as_default():
     a = tf.constant(3)
     b = tf.constant(4)
     c = tf.add(a, b)

 with g2.as_default():
     x = tf.constant(5)
     y = tf.constant(2)
     z = tf.multiply(x, y)

 writer = tf.summary.FileWriter("./graphs", g1)
 writer = tf.summary.FileWriter("./graphs", g2)
 writer.close()

And on tensorboard, I get this:

enter image description here

But it is missing the first graph. Is there a way to draw both graphs?

share improve this question
 

1 Answer

Your second call to tf.summary.FileWriter overwrites your first file.

What happens if you write to a different file, by closing the first writer before opening a second?

WARNING:tensorflow:Found more than one graph event per run, or there was a metagraph containing a graph_def, as well as one or more graph events. Overwriting the graph with the newest event.

So it seems tensorboard is not ready to handle more than one graph. Should we worry? To cite Yaroslav Bulatov,

Using more than one graph in a process is generally a terrible mistake.

EDIT

Note that a tensorflow Graph can host several, non-connected components, effectively representing several distinct graphs. For example,

import tensorflow as tf

g = tf.Graph()
with g.as_default():
     a = tf.constant(3)
     b = tf.constant(4)
     c = tf.add(a, b)

     x = tf.constant(5)
     y = tf.constant(2)
     z = tf.multiply(x, y)

writer = tf.summary.FileWriter("./graphs", g)
writer.close()

results in the following

enter image description here

This is one of the reasons why using several Graphs is usually not needed.


reference:

tensorboard - tensorflow summary - writing multiple graphs - Stack Overflow
https://stackoverflow.com/questions/44871237/tensorflow-summary-writing-multiple-graphs


posted on 2017-10-28 22:44  yusisc  阅读(26)  评论(0编辑  收藏  举报

导航