TensorFlowを使ってみた(2)

前回インストールしたTensorFlowを使ってみようと,下記のようにMNISTのサンプルで実行してみたところ,ファイルそのものが見つからない模様.

$ python tensorflow/tensorflow/g3doc/tutorials/mnist/fully_connected_feed.py                       
-bash: /home/XXXXX/tensorflow/bin/python: そのようなファイルやディレクトリはありません

$ ls tensorflow/tensorflow/g3doc/tutorials/mnist/
beginners  download  pros  tf


2015年11月時点の記事を参考にしてもディレクトリ配置が変わってしまったようなので,この辺りの対応も含めて記す.
検索をかけると,どうやらfully_connected_feed.pyは
/tensorflow/g3doc/tutorials/mnist/

でなく
tensorflow/examples/tutorials/mnist/

に入っている模様.

fully_connected_feed.py を見つけて実行してみると下記のエラーが出た

$ python tensorflow/examples/tutorials/mnist/fully_connected_feed.py 
Traceback (most recent call last):
  File "tensorflow/examples/tutorials/mnist/fully_connected_feed.py", line 30, in 
    from tensorflow.examples.tutorials.mnist import input_data
ImportError: No module named examples.tutorials.mnist


fully_connected_feed.py の30行目近辺を書き換え


from tensorflow.examples.tutorials.mnist import input_data
from tensorflow.examples.tutorials.mnist import mnist
↓
import input_data
import mnist

下記のようなメッセージが出てきたら成功
$ python tensorflow/examples/tutorials/mnist/fully_connected_feed.py                    
Successfully downloaded train-images-idx3-ubyte.gz 9912422 bytes.
Extracting data/train-images-idx3-ubyte.gz
Successfully downloaded train-labels-idx1-ubyte.gz 28881 bytes.
Extracting data/train-labels-idx1-ubyte.gz
Successfully downloaded t10k-images-idx3-ubyte.gz 1648877 bytes.
Extracting data/t10k-images-idx3-ubyte.gz
Successfully downloaded t10k-labels-idx1-ubyte.gz 4542 bytes.
Extracting data/t10k-labels-idx1-ubyte.gz
I tensorflow/core/common_runtime/local_device.cc:25] Local device intra op parallelism threads: 1
I tensorflow/core/common_runtime/local_session.cc:45] Local session inter op parallelism threads: 1
Step 0: loss = 2.31 (0.131 sec)
Step 100: loss = 2.18 (0.006 sec)
Step 200: loss = 1.97 (0.006 sec)
Step 300: loss = 1.71 (0.006 sec)
Step 400: loss = 1.34 (0.006 sec)
Step 500: loss = 0.97 (0.006 sec)
Step 600: loss = 0.77 (0.006 sec)
Step 700: loss = 0.65 (0.006 sec)
Step 800: loss = 0.69 (0.007 sec)
Step 900: loss = 0.54 (0.007 sec)
Training Data Eval:
  Num examples: 55000  Num correct: 47410  Precision @ 1: 0.8620
Validation Data Eval:
  Num examples: 5000  Num correct: 4340  Precision @ 1: 0.8680
Test Data Eval:
  Num examples: 10000  Num correct: 8681  Precision @ 1: 0.8681
Step 1000: loss = 0.74 (0.021 sec)
Step 1100: loss = 0.45 (0.250 sec)
Step 1200: loss = 0.41 (0.006 sec)
Step 1300: loss = 0.44 (0.006 sec)
Step 1400: loss = 0.49 (0.006 sec)
Step 1500: loss = 0.41 (0.006 sec)
Step 1600: loss = 0.54 (0.006 sec)
Step 1700: loss = 0.34 (0.006 sec)
Step 1800: loss = 0.29 (0.006 sec)
Step 1900: loss = 0.40 (0.006 sec)
Training Data Eval:
  Num examples: 55000  Num correct: 49130  Precision @ 1: 0.8933
Validation Data Eval:
  Num examples: 5000  Num correct: 4497  Precision @ 1: 0.8994
Test Data Eval:
  Num examples: 10000  Num correct: 8959  Precision @ 1: 0.8959


成功したら結果をチャートで確かめる.
TensorBoardを使えばブラウザ上で学習状況がみれるのでこれを試す.
下記のコマンドを実行.

tensorboard --logdir=/home/XXXXX/tensorflow/data


するとwebサーバーが立ち上がるので,ブラウザから
http://localhost:6006/ 


に接続するとチャートが確認できる.
tensorboard.jpg





縦軸の学習誤差が次第に下がっているのが見て取れる.

コメント(0)

コメントを投稿する