19

最適化のために視覚化したいかなり複雑な Tensorflow グラフがあります。変数に注釈を付ける必要なく、Tensorboard で表示するためにグラフを保存するだけの呼び出し可能な関数はありますか?

私はこれを試しました:

merged = tf.merge_all_summaries()
writer = tf.train.SummaryWriter("/Users/Name/Desktop/tf_logs", session.graph_def)

しかし、出力は生成されませんでした。これは0.6のホイールを使用しています。

これは関連しているようです: グラフの視覚化が seq2seq モデルのテンソルボードに表示されない

4

5 に答える 5

17

グラフを GraphDef protobuf としてダンプし、TensorBoard に直接ロードすることもできます。これは、セッションを開始したり、モデルを実行したりしなくても実行できます。

## ... create graph ...
>>> graph_def = tf.get_default_graph().as_graph_def()
>>> graphpb_txt = str(graph_def)
>>> with open('graphpb.txt', 'w') as f: f.write(graphpb_txt)

これにより、モデルの詳細に応じて、次のようなファイルが出力されます。

node {
  name: "W"
  op: "Const"
  attr {
    key: "dtype"
    value {
      type: DT_FLOAT
    }
  }
...
version 1

TensorBoard では、「アップロード」ボタンを使用してディスクからロードできます。

于 2015-12-23T16:52:13.693 に答える
4

わかりやすくするために、これが私がこの方法を使用し.flush()て問題を解決した方法です。

ライターを次のように初期化します。

writer = tf.train.SummaryWriter("/home/rob/Dropbox/ConvNets/tf/log_tb", sess.graph_def)

ライターを次のように使用します。

writer.add_summary(summary_str, i)
    writer.flush()
于 2016-03-23T12:49:38.927 に答える