/ / TensorBoard用の `tf.train.Supervisor`で複数のサマリーライターを使う方法 - テンソルフロー、ディープラーニング、テンソルボード

TensorBoardに `tf.train.Supervisor`を使って複数の要約作家を使う方法 - テンソルフロー、ディープラーニング、テンソルボード

私はに似たようなことをしたいのですが train_writer そして test_writer から TensorBoardのチュートリアル。しかし、 tf.train.Supervisor。しかし、これをどのように実行するのが最善かはわかりません。

擬似コード:

train_op = #...
train_summaries = # ...
test_summaries = # ...

config = tf.ConfigProto(allow_soft_placement=True)
sv = tf.train.Supervisor(
logdir              = ????,
summary_op          = ????,
summary_writer      = ????,
)
with sv.managed_session(config=config) as sess:
while not sv.should_stop():
sess.run(train_op)

だから私の質問です: 保存方法 train_summaries そして test_summaries 別のディレクトリをしますか? 例えば。 ./logdir/train そして ./logdir/test/.

回答:

回答№1は0

あなたは探している summary_computed。 docstringはカスタムサマリーライターを作成する方法を示します。スーパーバイザーに自動的に管理させることはできませんが、非常に簡単です。から https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/training/supervisor.py

# Create a Supervisor with no automatic summaries.
sv = Supervisor(logdir="/tmp/mydir", is_chief=is_chief, summary_op=None)
# As summary_op was None, managed_session() does not start the
# summary thread.
with sv.managed_session(FLAGS.master) as sess:
for step in xrange(1000000):
if sv.should_stop():
break
if is_chief and step % 100 == 0:
# Create the summary every 100 chief steps.
sv.summary_computed(sess, sess.run(my_summary_op))
else:
# Train normally
sess.run(my_train_op)