http://deeplearning.net/tutorial/gettingstarted.html
に記載されている MNIST Dataset
http://deeplearning.net/data/mnist/mnist.pkl.gz
のデータ構造は次のようになっている。
[mnist.pkl] = [[train_set], [valid_set], [test_set]]
[*_set] = [[*_setの入力], [*_setの正解]]
[*_setの入力] = [[784個の浮動小数点の配列], ... ]
[*_setの正解] = [[0〜9の整数], ... ]
ここで、[784個の浮動小数点の配列]は28x28の手書き数字画像、
*_setはtrain_set、valid_set、test_setのいずれかである。
読み込んで端末に表示してみるコード(load.py)は次の通り。
import cPickle, gzip, numpy, sys if len(sys.argv) != 2: quit() data_index=int(sys.argv[1]) f=gzip.open('../data/mnist.pkl.gz','rb') train_set, valid_set, test_set=cPickle.load(f) train_set_x, train_set_y=train_set # setの中身が for i in range(data_index,data_index+1): for y in range(0,28): for x in range(0,28): if train_set_x[i][y*28+x]<0.5: sys.stdout.write(" ") elif train_set_x[i][y*28+x]<0.8: sys.stdout.write("+") else: sys.stdout.write("*") sys.stdout.write("\n") print "correct =",train_set_y[i] print "--------------------------------"
8番目のデータを表示する実行例は次の通り。
$ python load.py 7 ******+ +**********+ +************ ***+++++**** ***+ ***+ +*** *****+ +++***** *********+ ********** +** ** ** *** +* **** ***++++++***+ ***********+ +*******+ **+ correct = 3 --------------------------------データを読めていることが確認できる。
0 件のコメント :
コメントを投稿