2017-02-02 3 views
2

私は、監督者を使ってTensorBoardを追跡したいと思っているものがあります。collectionsです。スーパーバイザ初期化子では、私は効果TensorFlow:複数の「コレクション」をマージするにはどうすればよいですか?

summary_op = tf.summary.merge_all(['test', 'valid']) 

に何かをしたいと思います。しかしkeyは、文字列(see documentation)でなければならないので、私は、エラーTypeError: unhashable type: 'list'を取得します。



編集

これはどちらか動作しません:

summary_op = [tf.summary.merge_all('train'), tf.summary.merge_all('valid')] 

答えて

2

は、例えば、tf.summary.merge()をお試しくださいそのよう:

summary_op = tf.summary.merge([ 
     tf.summary.merge_all('test'), 
     tf.summary.merge_all('train')], 
    collections='merged') 

これはtesttrainコレクションからすべての要約をマージなり、新しいmergedコレクションに追加します。私は(手動で!)誤ったトレーニング中に検証要約を格納ここ

Same summaries, same time step

同じ要約は同じタイムステップの間に複数回使用されている場合、これは奇妙な効果をもたらすことに注意してください実行してからをもう一度の別の検証を実行します。

また、これが最も効率的な方法であるかどうかはわかりませんが、確かにうまくいきます。

関連する問題