AI(人工知能)が持つ能力の中でも「画像認識」は我々の社会の中で活用できる場面も多く、今もなお開発と研究がおこなわれている注目の分野です。昨今では画像認識のためのディープラーニングに使用する無償のデータセットや、画像認識用のライブラリといった便利なものも無償で手に入れることができます。
この「画像認識」に特化したライブラリのなかでも、非常に有名なのが「Caffe」と呼ばれるものです。高速な動作と豊富な機能により画像認識をより効率化してくれることから、現在、注目を集めています。
今回は、そんなディープラーニングにて、特に「画像認識」に特化して活用できる機械学習ライブラリ「Caffe」について解説しましょう。使い方や導入のメリット、環境構築の方法などについて詳しく見ていきます。
Caffeとは
CaffeはYangqing Jia氏がカリフォルニア大学バークレー校に在籍中、開発がスタートしました。彼だけでなく、カリフォルニア大学バークレー校の「コンピュータビジョンおよび機械学習に関する研究センター」が中心となって、Caffeの開発に携わっています。
それだけにとどまらず、2014年6月からは日本でも非常になじみの深い大手企業Yahoo Japanが、同センターのスポンサーとなり支援を行っています。そのディープラーニングへの有用性に、多くの人が注目しているのです。
Caffe | Deep Learning Framework
Caffeを使うメリット
資料やサンプルが少ないとそれだけでも導入を躊躇してしまうものですが、ある程度の指針が用意されているという部分は、利用する側としてもハードルが低く、活用しやすいです。
Caffeを使うために必要なもの
Caffeは開発当初はLinuxというOSでのみ動作していたのですが、最近では開発も進んだ結果、Windows、MacそれぞれのOSに対応したものが配布されています。このためCaffeを導入するためのPCを用意するのが大前提です。
現在、Web上には様々な機械学習用のデータセットが配布されていますので、Caffeと合わせて用意しておきましょう。
Caffeの環境構築方法
CaffeはWindows、Macのそれぞれで動作するため、環境構築方法についても詳細な部分では異なってきます。ですが、大まかな流れは以下のような手順となります。
brew install python
↓
brew install --fresh -vd snappy leveldb gflags glog szip lmdb
brew tap homebrew/science
brew install hdf5 opencv
↓
brew install --build-from-source --with-python --fresh -vd protobuf
brew install --build-from-source --fresh -vd boost boost-python
↓
git clone https://github.com/BVLC/caffe.git
cd caffe
cp Makefile.config.example Makefile.config
↓
BLAS_INCLUDE ?= /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/Headers/
CPU_ONLY
(これによりCPUモードとなる)
↓
PYTHON_INCLUDE := /usr/include/python2.7/usr/local/lib/python2.7/site-packages/numpy/core/include/
PYTHON_LIB := /usr/local/Cellar/python/{python version}/Frameworks/Python.framework/Versions/2.7/lib/
ここまでで、CaffeをBuildする準備は完了です。
make clean
make all -j4
make test -j4
make runtest
また、今回の例で導入している「PyCaffe」についても動作環境を設定しておきます。
for li in $(cat requirements.txt); do sudo pip install $li; done
↓
cd ../
make pycaffe
make distribute
ここまでで、PyCaffeも含めたCaffeの実行環境が整いました。
Caffeで画像認識を行う方法
環境構築まで完了したら、いよいよCaffeを用いた画像認識へと進んでいきましょう。ここではあらかじめ用意した学習用のデータセットを用い、以下の手順で機械学習を行っていきます。
↓
(Caffeに同梱されているconvert_mnist_data.exeなどを利用)
↓
(GitHubに雛形があるため、こちらを流用し作成)
↓
↓
また、機械学習用の「.prototxt」ファイルについては、Caffeが動作する上でのpath情報などが記載されていますので、こちらも動作する環境に適した設定を記す必要があります。
Caffeを使う注意点
画像認識を行う上で非常に便利なCaffeですが、使用する上での注意点も存在します。
AI(人工知能)の能力の中でも、画像から情報を読み取り判断する画像認識は、今後も様々な場面で活用されていくでしょう。精度によっては、時には人間が気付けなかった部分を素早く見つけ、より正確な答えを導き出すことができるのも、AI(人工知能)だからこそ可能な点です。
その中で、手軽に使うことができ、かつ高速な動作を実現できるCaffeは、今もなお多くの方から注目を集める画像認識フレームワークとなっています。初心者の方にとっても導入しやすく、コミュニティが活発という点も、今後、まだまだ進化を続けていく可能性を感じますよね。
機械学習、ディープラーニングに興味のある方は、Pythonなどのプログラミング言語を学習すると共に、Caffeを導入・活用することで、モデルの作成から画像認識を行うまでの工程を学習、体験することができます。AI(人工知能)の世界をより深く知るために、Caffeに触れてみましょう。
【お知らせ】
当メディア(AIZINE)を運営しているAI(人工知能)/DX(デジタルトランスフォーメーション)開発会社お多福ラボでは「福をふりまく」をミッションに、スピード、提案内容、価格、全てにおいて期待を上回り、徹底的な顧客志向で小規模から大規模ソリューションまで幅広く対応しています。
御社の悩みを強みに変える仕組みづくりのお手伝いを致しますので、ぜひご相談ください。