Ubuntu14.04搭建Caffe(僅CPU)

一直以來都沒有寫博客的習慣,後來發現之前作的工做若是不注意及時整理和記錄每每丟失的很快。對我而言這是一篇具備重要意義的文章,好的習慣要鍥而不捨,之後的日子我會常駐博客園!因爲本人水平有限,智商略低,歡迎大神前來拍磚。廢話結束,下面是乾貨:html

首先吐槽一下本屌的筆記本,我如今的筆記本仍是大一時候買的Dell INSPIRON 4010,沒有Nvidia,沒有Nvidia,沒有Nvidia,沒有Nvidia,重要的事情說四遍,呵呵。python

操做系統:  Ubuntu 14.04
是否使用PYTHON API: 是, 目標是安裝後CAFFE能做爲PYTHON MODULE來使用
硬件: 低端筆記本, 只使用CPU模式

1.安裝依賴linux

1 sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
2 sudo apt-get install --no-install-recommends libboost-all-dev
3 sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
4 sudo apt-get install libatlas-base-dev
PYTHON須要2.7版本,這是操做系統自己已經安裝好的. 輸入python2.7 --version 會顯示具體的版本號說明安裝了.
可是還須要sudo apt-get install python-dev

2.下載Caffe
使用Git直接下載Caffe很是簡單,或者去https://github.com/BVLC/caffe下載。因爲我習慣去github上找代碼,因此就直接去下載的源碼。git

下載完成後,會在家目錄下的下載裏找到caffe-master.zip,用unzip命令解壓到家目錄下,而後重命名爲caffe.github

3.編譯Caffe
(1)切換到Caffe所在目錄shell

cp Makefile.config.example Makefile.config

(2)修改配置文件Makefile.configapp

  • CPU_ONLY := 1
  • 配置一些引用文件(增長部分主要是解決新版本下,HDF5的路徑問題)
INCLUDE_DIRS := $(PYTHON_INCLUDE)  /usr/local/include  /usr/include/hdf5/serial
LIBRARY_DIRS := $(PYTHON_LIB)  /usr/local/lib   /usr/lib /usr/lib/x86_64-linux-gnu/hdf5/serial
BLAS := atlas
計算能力 mkl > openlas >atlas

(3)編譯 Caffepython2.7

make all -j8
make test -j8
make runtest -j8
另外, 這個make默認是用CPU單核運算,若是想要快一點, 好比我想使用四核, 在make後面加上-j4標籤。
若是上面4行某一行報錯以後想要重試,建議先make clean再從新開始。

4.編譯Python接口
Caffe擁有python\C++\shell接口,在Caffe使用python特別方便,在實例中都有接口的說明。ui

  • 確保pip已經安裝
sudo apt-get install python-pip
  • 執行安裝依賴

在caffe根目錄的python文件夾下,有一個requirements.txt的清單文件,上面列出了須要的依賴庫,按照這個清單安裝就能夠了。google

在安裝scipy庫的時候,須要fortran編譯器(gfortran),若是沒有這個編譯器就會報錯,所以,咱們能夠先安裝一下。

首先回到caffe的根目錄,而後執行安裝代碼:

cd ~/caffe
sudo apt-get install gfortran
cd ./python
for req in $(cat requirements.txt); do pip install $req; done

安裝完成之後,再次回到caffe根目錄咱們能夠執行:

sudo pip install -r python/requirements.txt

就會看到,安裝成功的,都會顯示Requirement already satisfied, 沒有安裝成功的,會繼續安裝。

  • 編譯python接口
make pycaffe -j8

--結果顯示ALL TESTS PASSED就安裝好了!

  • 運行python結構
$ python2.7
Python 2.7.12 (default, Jul  1 2016, 15:12:24) 
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import caffe
>>> 

若是沒有報錯,說明caffe安裝所有完成(注意:要進入caffe/python再執行python命令,不然import caffe會提示找不到caffe)!

5.在Mnist運行Lenet

  • 獲取數據源
./data/mnist/get_mnist.sh
./examples/mnist/create_mnist.sh
  • 由於是CPU運行,因此修改在examples文件下的Mnist下的lenet_solver.prototxt中的solver_mode:CPU
solver_mode: CPU
  • 訓練模型
./examples/mnist/train_lenet.sh

整個訓練時間會持續好久,這是由於本屌的筆記本仍是i3處理器,且沒有啓用GPU,而且默認是單核,因此本屌足足等了3個小時 =。= ..... 自動腦補我內心的萬馬奔騰吧

6.最後,個人文章是基於各位前輩大神們的文章,雖然按他們的過程走我都報錯了,可是最終仍是幫助我安裝成功。爲了表示對別人成果的尊重,這裏留下大神們的參考連接:

http://www.linuxidc.com/Linux/2016-09/135034.htm

http://blog.csdn.net/u010402483/article/details/51506616

http://www.cnblogs.com/denny402/p/5679037.html

相關文章
相關標籤/搜索