今回はTensorFlowのライブラリに付属しているTensorBoardなるものを使って色々可視化してみたいと思います。
参考にさせていただいたのはこちらです。
TensorBoard
TensorFlowにはTensorBoardという付属のツールがあって、こいつを使えるのがTensorFlowの結構大きなポイントだったりします。
TensorBoardではTensorFlowでの実行時に発生するデータを可視化・表現できます。 可視化できるものとして代表的なものはこんな感じらしいです。
使い方
TensorBoardでは、可視化したいデータや形式をプログラム中に明示的に指定することで、 TensorBoardが表示するための情報を裏で取得してくれるみたいです。
手順
そもそも動くTensorFlowを使用したコードがある状態から考えると、手順としてはこんな感じでしょうか。
- プログラム中に可視化用のコードを追加
- 普通にプログラムを実行
- TensorBoardを起動
- ブラウザからTensorBoardを開く
具体例
今回は試しにこの前使用したコードを使用してやってみます。
1. プログラム中に可視化用のコードを追加
使うためには、上のコードにちょびっと追加します。
# TensorBoardで追跡する変数を定義 with tf.name_scope('summary'): tf.summary.scalar('loss', cross_entropy) merged = tf.summary.merge_all() writer = tf.summary.FileWriter('./logs', sess.graph)
2. 普通にプログラムを実行
特に何も考えずに普通に実行してください。
python3 main.py
普通に実行します。 すると、カレントディレクトリにlogというディレクトリができているかと思います。 これができていれば、とりあえず問題なく動いていそうです。
3. TensorBoardを起動
実行が完了したら、TensorFlowを起動します。 TensorBoardは次のコマンドで起動します。
tensorboard --logdir=./logs
4. ブラウザからTensorBoardを開く
コンソールに出ているURLをブラウザに放り込めばTensorBoardを確認する事ができます。 きちんとTensorFlowが起動できていれば下のurlをで可視化結果が開きます。
http://localhost:6006/