首頁 > 軟體

Ubuntu 14.04搭建Caffe(僅CPU)

2020-06-16 17:24:07

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

首先吐槽一下本屌的筆電,我現在的筆電還是大一時候買的Dell INSPIRON 4010,沒有Nvidia,沒有Nvidia,沒有Nvidia,沒有Nvidia,重要的事情說四遍,呵呵。

作業系統: Ubuntu 14.04
是否使用Python API: 是, 目標是安裝後CAFFE能作為PYTHON MODULE來使用
硬體: 低端筆電, 只使用CPU模式

1.安裝依賴

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上找程式碼,所以就直接去下載的原始碼。

下載完成後,會在家目錄下的下載裡找到caffe-master.zip,用unzip命令解壓到家目錄下,然後重新命名為caffe.

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

cp Makefile.config.example Makefile.config

(2)修改組態檔Makefile.config

  • 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)編譯 Caffe

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

4.編譯Python介面
Caffe擁有pythonC++shell介面,在Caffe使用python特別方便,在範例中都有介面的說明。

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

在caffe根目錄的python資料夾下,有一個requirements.txt的清單檔案,上面列出了需要的依賴庫,按照這個清單安裝就可以了。

在安裝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.最後,我的文章是基於各位前輩大神們的文章,雖然按他們的過程走我都報錯了,但是最終還是幫助我安裝成功。為了表示對別人成果的尊重,這裡留下大神們的參考連結:

Caffe 深度學習入門教學  http://www.linuxidc.com/Linux/2016-11/136774.htm

Ubuntu 16.04 安裝設定Caffe 圖文詳解 http://www.linuxidc.com/Linux/2016-12/138870.htm

Ubuntu 16.04下Matlab2014a+Anaconda2+OpenCV3.1+Caffe安裝 http://www.linuxidc.com/Linux/2016-07/132860.htm

Ubuntu 16.04系統下CUDA7.5設定Caffe教學 http://www.linuxidc.com/Linux/2016-07/132859.htm

Caffe在Ubuntu 14.04 64bit 下的安裝 http://www.linuxidc.com/Linux/2015-07/120449.htm

深度學習框架Caffe在Ubuntu下編譯安裝  http://www.linuxidc.com/Linux/2016-07/133225.htm

Caffe + Ubuntu 14.04 64bit + CUDA 6.5 設定說明  http://www.linuxidc.com/Linux/2015-04/116444.htm

Ubuntu 16.04上安裝Caffe http://www.linuxidc.com/Linux/2016-08/134585.htm

Caffe設定簡明教學 ( Ubuntu 14.04 / CUDA 7.5 / cuDNN 5.1 / OpenCV 3.1 )  http://www.linuxidc.com/Linux/2016-09/135016.htm

Ubuntu 16.04上安裝Caffe(CPU only)  http://www.linuxidc.com/Linux/2016-09/135034.htm

本文永久更新連結地址http://www.linuxidc.com/Linux/2017-01/139236.htm


IT145.com E-mail:sddin#qq.com