TensorFlowの実行結果の学習の可視化ツールであるTensorBoardを利用してみます。
前回のままではlogが記録されませんので、SummaryWriterでlogを記録するように修正する必要があります。 しかし、公式gitには実装済みのチュートリアルデータがあるため、こちらを実行することにします。
git clone https://github.com/tensorflow/tensorflow
cd tensorflow/tensorflow/g3doc/tutorials/mnist
そして以下を実行
Succesfully downloaded train-images-idx3-ubyte.gz 9912422 bytes. Extracting data/train-images-idx3-ubyte.gz Succesfully downloaded train-labels-idx1-ubyte.gz 28881 bytes. Extracting data/train-labels-idx1-ubyte.gz Succesfully downloaded t10k-images-idx3-ubyte.gz 1648877 bytes. Extracting data/t10k-images-idx3-ubyte.gz Succesfully downloaded t10k-labels-idx1-ubyte.gz 4542 bytes. Extracting data/t10k-labels-idx1-ubyte.gz can't determine number of CPU cores: assuming 4 I tensorflow/core/common_runtime/local_device.cc:25] Local device intra op parallelism threads: 4 can't determine number of CPU cores: assuming 4 I tensorflow/core/common_runtime/local_session.cc:45] Local session inter op parallelism threads: 4 Step 0: loss = 2.30 (0.025 sec) Step 100: loss = 2.15 (0.008 sec) Step 200: loss = 1.90 (0.006 sec) Step 300: loss = 1.52 (0.044 sec) Step 400: loss = 1.27 (0.006 sec) Step 500: loss = 0.87 (0.006 sec) Step 600: loss = 0.72 (0.006 sec) Step 700: loss = 0.71 (0.005 sec) Step 800: loss = 0.57 (0.006 sec) Step 900: loss = 0.41 (0.006 sec) Training Data Eval: Num examples: 55000 Num correct: 47730 Precision @ 1: 0.8678 Validation Data Eval: Num examples: 5000 Num correct: 4373 Precision @ 1: 0.8746 Test Data Eval: Num examples: 10000 Num correct: 8765 Precision @ 1: 0.8765 Step 1000: loss = 0.48 (0.022 sec) Step 1100: loss = 0.45 (0.126 sec) Step 1200: loss = 0.30 (0.005 sec) Step 1300: loss = 0.48 (0.005 sec) Step 1400: loss = 0.46 (0.010 sec) Step 1500: loss = 0.37 (0.023 sec) Step 1600: loss = 0.40 (0.006 sec) Step 1700: loss = 0.41 (0.005 sec) Step 1800: loss = 0.45 (0.006 sec) Step 1900: loss = 0.44 (0.006 sec) Training Data Eval: Num examples: 55000 Num correct: 49471 Precision @ 1: 0.8995 Validation Data Eval: Num examples: 5000 Num correct: 4517 Precision @ 1: 0.9034 Test Data Eval: Num examples: 10000 Num correct: 9031 Precision @ 1: 0.9031
できました。 テストデータセットでの識別率0.9031
するとdataというフォルダができています。 以下のコマンドを実行してtensorboardを起動してしまいましょう。 {PATH}にはそこまでの絶対パスを入力してください。
tensorboard --logdir=/{PATH}/tensorflow/tensorflow/g3doc/tutorials/mnist/data --port 6007
Starting TensorBoard on port 6007 (You can navigate to http://localhost:6007)
サーバが立ち上がりますので、ブラウザでアクセスできます。
エントロピーが減少していくのが分かります。
なにやら、ニューラルネットワークの図も見れるようですね。 拡大したり、クリックして詳細をみたりと面白いです。
お試しください。