目標
Caffe (GPU) をインストールして,サンプルプログラムを実行することで動作確認を行う.前回はGPUを積んでいないノートPCにインストールしたのでCaffe (CPU) をインストールしていた.これをベースにGPU版を別のPCにインストールする.
経緯
正直,デファクトスタンダードになりつつあるTensorFlowを使いたいのだが,使っているCPUが古くて,どうも上手くインストールできないのだ...
開発環境
OSは別にして,以下の組み合わせでないと基本的に動かない様子.Caffeが最早アップデートされていないので,基本的にこの組み合わせが最新でベストチョイスの様子.
- 開発環境
- Windows 10 Home (64-bit)
- Visual Studio 2015
- Python 3.5 (Anaconda)
- CUDA 8.0
- Caffe 1.0
- PCのスペック
インストール方法
前回とほぼ同じなので,そちらを参考のこと.ただし,ステップ4だけ異なるのでそこだけ書く.
CAFFE_ROOT\scripts\build_win.cmdファイルをCPUで実行する仕様に変更
* 70行目辺りから始まる箇所
* WITH_NINJA=0
* PYTHON_VERSION=3
MNISTの例
実行方法
こちらも前回とほぼ同じなので,そちらを参考のこと.ただし,ステップ6は不要.
実行結果
前回の記事を確認すると,CPU版では数十分かかったが,GPU版では1分程度で終わった.
コマンドプロンプトに出力された結果の内,最後の10行を以下に示す.この結果から,最終的な学習結果を用いたテストデータの認識精度が99.05%だったことが分かる.
I0530 11:44:58.499452 6088 solver.cpp:447] Snapshotting to binary proto file examples/mnist/lenet_iter_10000.caffemodel I0530 11:44:58.515451 6088 sgd_solver.cpp:273] Snapshotting solver state to binary proto file examples/mnist/lenet_iter_10000.solverstate I0530 11:44:58.523452 6088 solver.cpp:310] Iteration 10000, loss = 0.00244166 I0530 11:44:58.523452 6088 solver.cpp:330] Iteration 10000, Testing net (#0) I0530 11:44:58.707450 20436 data_layer.cpp:73] Restarting data prefetching from start. I0530 11:44:58.713449 6088 solver.cpp:397] Test net output #0: accuracy = 0.9905 I0530 11:44:58.713449 6088 solver.cpp:397] Test net output #1: loss = 0.0304673 (* 1 = 0.0304673 loss) I0530 11:44:58.713449 6088 solver.cpp:315] Optimization Done. I0530 11:44:58.713449 6088 caffe.cpp:260] Optimization Done. Press enter to exit
無事に動作したので,目標達成だ!