統計コンサルの議事メモ

統計や機械学習の話題を中心に、思うがままに

Caffeその①

ディープラーニング、特に画像認識で大変メジャーなライブラリであるCaffeを使用してみましたので、その際の手順をメモしておきます。今回はインストール。

環境

VirtualBoxを使用し、VMとしてubuntuを入れてそこにCaffeをインストールしました。実は最初はMac Book Airに直接インストールしようと頑張っていたのですが、コンパイラの指定などが面倒な様子だったのでVMを入れることにしています。またVMにはVirtual MachineにはVMwareではなくVirtualBoxを使用しましたが、これはVMwareMacだと有料なためです。

手順
  1. 外部ライブラリのインストール
  2. Caffeのダウンロード
  3. Makeファイルの作成
  4. Caffeのコンパイル

手順としては以上のような流れで、一般的なプログラムをソースからビルドする際の工程と同じです。一つずつ見ていきましょう。


1.外部ライブラリのインストール
まずは必要なライブラリをインストールします。apt-getでサクッと取ってきましょう。ubuntuではgccコンパイルできないようなので、コンパイラとしてg++-4.6もとってきます。

$ sudo apt-get install libatlas-base-dev libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler git g++-4.6


2.Caffeのダウンロード
続いてCaffeのダウンロードです。Githubからcloneしてきます。

$ git clone https://github.com/BVLC/Caffe.git


3.Makeファイルの作成
Makeファイルの設定を変更します。Makefile.config.exampleというサンプルプログラムがあるので、これをコピーして適宜修正します。もちろん使うのはMakefile.configなので、exampleの方を修正してしまわないように注意しましょう。

$ cd Caffe/
$ cp Makefile.config.example Makefile.config

修正箇所は二箇所です。Makefile.configをviなどのお好きなエディタで開き、以下の箇所を修正します。

コンパイラの指定

CUSTOM_CXX := g++

となっているところを、以下のように変更します

CUSTOM_CXX := g++-4.6


②CPUのみ使用するように指定
今回はVM上のubuntuで実行するので、GPUを使用しません。そこでCPUを使用するように設定を変更します。

# CPU_ONLY := 1

これを

CPU_ONLY := 1

とアンコメントします。


4.Caffeのコンパイル
以上の手順ののち、下記の通りコンパイルを実行します。途中でエラーが生じた際は、対応したのちにmake cleanでキレイにしてから再度実行します。

$ make all
$ make test
$ make runtest

コンパイルが全て通れば実行結果として[PASSED]が返ってきます。これで準備完了です。

Caffeの実行についてはその②で紹介します。