2017-09-02 8 views
0

私はEstimatorを使用してネットをトレーニングしています。私はTensorboardで監視したい。以下のような見積もり請求物事のためのブログ:Tensorflow EstimatorフレームワークにTensorboardロギングがありません

"The training will output information like the global step, loss, 
and accuracy over time on the terminal output. Besides this, the 
Experiment and Estimator framework will log certain statistics to 
be visualized by TensorBoard." 

https://medium.com/onfido-tech/higher-level-apis-in-tensorflow-67bfb602e6c0

私のプロセスが実際とイベントファイルを作成しないが、その中には何もありません。

These tags are in checkpoints/1504359209.469093: 
audio - 
histograms - 
images - 
scalars - 
tensor - 

Estimatorが書き込むスカラーなど、およびそれらの書き込み頻度はどのように制御されますか?

答えて

1

まず、この点についての文書はあまり明確ではありません。 チュートリアルを書くのを避けるため、参考にしておきたい点がいくつかありますが、コードが現在どのように設定されているかははっきりしていないと言います。

  • FileWriterを作成する予定はありません。むしろ、tf.summary.scalarアノテーションとtf.name_scopeアノテーションをmodel_fnに追加するだけです。
  • sess.runから戻って何も返すことはありません。それは私の最初の推測でした。私は、あなたが見積もり者を維持し、再構成する必要がないことを確認できます。
  • 見積もりを作成する行を見ているは​​ずです(estimator.Estimator(model_fn = ...))。この行では、model_dirを指定します。これはテンソルボードのlogdirパラメータを指定します。 Estimatorは自動的にmodel_dirにログを記録しますが、FileWriterは必要ありません。イベントの出力を見ることができるので、すでにこれを知っているかもしれませんが、私たちがやっていることの間に何らかの不一致がある場合に備えて言及します。
  • あなたの見積もりに渡すRunConfigも見てください。 Myにはsave_summary_stepsというキーが含まれています。書き込みの頻度を制御すると思います。
0

ありがとう。それはとても役に立ちます。

私はすでにデフォルトのスカラーを使って作業していますが、あなたの提案は新しいものを追加することを可能にします。

私の場合、問題はデータ入力にありました。 DataSetを使用する既存のコードをコピーしました。ここに私のコードです

 # Build dataset iterator 
     dataset = tf.contrib.data.Dataset.from_tensor_slices(
     # dataset = tf.contrib.data.Dataset.from_tensors(
      (fingerprints_placeholder, labels_placeholder)) 
     #dataset = dataset.repeat(None) # Infinite iterations 
     #dataset = dataset.shuffle(buffer_size=10000) 
     dataset = dataset.batch(batch_size) 
     iterator = dataset.make_initializable_iterator() 

コメントアウトされた行に注目してください。何らかの理由で、コードを出力せずに永久に実行させます。それらを削除すると、広告されたようにすべてが動作するようになりました。

関連する問題