Mugichoko's blog

Mugichoko’s blog

プログラミングを中心としたメモ書き.

Caffe 1.0 (GPU) on Windows 10

目標

Caffe (GPU) をインストールして,サンプルプログラムを実行することで動作確認を行う.前回GPUを積んでいないノートPCにインストールしたのでCaffe (CPU) をインストールしていた.これをベースにGPU版を別のPCにインストールする.

mugichoko.hatenablog.com

経緯

正直,デファクトスタンダードになりつつあるTensorFlowを使いたいのだが,使っているCPUが古くて,どうも上手くインストールできないのだ...

開発環境

OSは別にして,以下の組み合わせでないと基本的に動かない様子.Caffeが最早アップデートされていないので,基本的にこの組み合わせが最新でベストチョイスの様子.

インストール方法

前回とほぼ同じなので,そちらを参考のこと.ただし,ステップ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

無事に動作したので,目標達成だ!