テンソルボードのデータを収集するかどうかは、実行方法に応じて1つのスクリプトを作成したいと考えています。私はフラグを渡してスクリプトをどのように実行させたいのかを伝えることができます。私はスクリプト内でそれを厳密にコード化して、手動でスクリプトを変更することさえできる。TensorBoardの統計情報を収集したくない場合に、単一のスクリプトファイルを作成するにはどうすればよいですか?
どちらの解決策でもより大きな問題があります。私は、サマリー・ライターの操作を実行するかどうかを自分のスクリプト上のどこでもif文で記述しなければならないことが分かりました。これは私には本当に愚かなようだ
if tb_sys_arg = 'tensorboard':
merged = tf.merge_all_summaries()
else:
train_writer = tf.train.SummaryWriter(tensorboard_data_dump_train, sess.graph)
:のように、要約を実行するかどうか
if tb_sys_arg = 'tensorboard':
merged = tf.merge_all_summaries()
、その後tb_sys_arg
の値に応じて:たとえば、私は、私のような何かをしなければならないことを見つけます。私はむしろそれをする必要はありません。これはこれを行う正しい方法ですか?私はメインスクリプトを実行するたびに統計情報を収集したくないだけですが、2つの別々のスクリプトも必要としません。 anecdotical話として
、数ヶ月前、私はTensorBoardを使用して開始し、私が次のように私のメインのファイルを実行してきたようだ。
python main.py —logdir=/tmp/mdl_logs
それはtensorboardデータを収集するように。しかし、私はテンソルボードのデータを収集するために最後のフラグが必要ではないと思っています。私は実際にそれが必要かどうか私は忘れているので、それは長すぎました。私はドキュメンテーションとチュートリアルを読んできましたが、最後のフラグは不要です(tensorboard --logdir=path/to/log-directory
のようにWebアプリケーションを実行する必要があります)。これは間違っていましたか?
あなたは「要約」サービスなしでスーパーバイザーを起動することができますがしたがって、サマリーノードは実行されません。https://github.com/tensorflow/tensorflow/blob/master/tensorflow/g3doc/api_docs/python/functions_and_classes/shard6/tf.train.Supervisor.md#launching-fewer -services –
使用するフラグは厳密には必要ではありませんが、TensorBoardのログを保存する場所を指定できるため、トレーニング時に使用できます。そうでなければ名前を付けることもできます。 –
@YaroslavBulatovあなたのリンクと意味のあるコードを使って回答を投稿する方法について教えてください( 'sv = Supervisor(logdir = '/ tmp/mydir'、summary_op = None)')。あなたはスポットにいます。 –