TensorBoardでsummaryやグラフを見る

tensorflow

TensorflowのRNN(LSTM)のチュートリアルのコードを読む - sambaiz-net

で読んだコードをTensorboardでみてみる。

8888がJupyter、6006がTensorboard。

$ docker run -it -p 8888:8888 -p 6006:6006 gcr.io/tensorflow/tensorflow

コードをuploadするかJupyterからterminalを開いてcloneしてくる。

# apt-get update
# apt-get install -y git wget
# git clone https://github.com/tensorflow/models.git
# cd models/tutorials/rnn/ptb && wget http://www.fit.vutbr.cz/~imikolov/rnnlm/simple-examples.tgz && tar xvf simple-examples.tgz 

logdirを指定して実行し、Tensorboardを起動。

flags.DEFINE_string("save_path", ".", "Model output directory.")
sv = tf.train.Supervisor(logdir=FLAGS.save_path)

追記(2018-11-14): Supervisorはdeprecatedなので以下の記事でやっているようにMonitoredTrainingSessionを使うとよい。

Deep LearningのBatch Normalizationの効果をTensorFlowで確認する - sambaiz-net

# tensorboard --logdir=models/tutorials/rnn/ptb

tf.summary.scalar(“Training Loss”, m.cost) による値がリアルタイムに表示される。

summaryの推移

グラフのつながりや、各Operationの入出力やそのshapeを確認できる。 name_scopeで分けておくと見やすい。

グラフ全体

Operationの入出力