読者です 読者をやめる 読者になる 読者になる

まんぼう日記

takataka's diary

Pylearn2 の tutorial でお勉強 - 5時間目

ほぼ1ヶ月ぶりの 「研究」 ねたです.久しぶりなので経緯から…

 

 

(1)  Pylearn2 の勉強をはじめた

(2) Pylearn2 の tutorial にある convolutional net のサンプルを動かそうとしたら,CPUでは学習にすごく時間がかかりそうだった

(3) そこで,GPU使える人になって再挑戦しようとしたけど,ちゃんと動かせなかった

(4) 仕方ないので計算に時間がかかる理由を探ろうとした

 

って所で忙しくなって中断してたわけですが, GPU の方は置いといて,(2) のつづき.convolutional net のサンプルを CPU でちゃんと学習させてみました.

 

まずは,時間があいたので,Pylearn2 の更新.

$ cd pylearn2
$ git pull
   :
35 files changed, 685 insertions(+), 289 deletions(-)
   :

 

そして,時間を測りながら tutorial のサンプルを動かしてみます.convolutional neural net の tutorial はこちら:

http://nbviewer.ipython.org/github/lisa-lab/pylearn2/blob/master/pylearn2/scripts/tutorials/convolutional_network/convolutional_network.ipynb

 

今回使ったマシンは,Mac Pro Late 2013 ( CPU: 3.5 GHz 6-Core Intel Xeon E5,  メモリ: 64GB ).Time this epoch はおよそ24分,11 epoch で学習終了.time コマンドで測った経過時間はほぼ5時間.チュートリアルのページの結果(GPU 使って Time this epoch が2分ほど,33 epoch で学習終了)とは全然違います.以前も書いたように,スレッド数5,6くらいで動きはするもののCPU使用率は1コア分の100%程度にしかならへんし.

 

それから,epoch数が少ない段階で学習が止まっちゃったせいか,誤識別率も高めで,

$ ../../print_monitor.py convolutional_network_best.pkl | grep misclass
test_y_misclass : 0.0127
valid_y_misclass : 0.0141

でした(チュートリアルのページでは The test set error has dropped to 0.74%! って言ってます).

 

なんだかなぁ….Pylearn2 ではなく Theano を使うプログラムを自分で書くとか,他のライブラリに乗り換えるとか,自分で(Numpy + Python で)書くとか,ってのを検討するかな.

 

ということで次の時間はその方向の準備にかかります:Pylearn2 のお勉強 - 6時間目 - まんぼう日記