1. 程式人生 > >Ubuntu14.04 64位配置Caffe 教程(基於CUDA7.5)

Ubuntu14.04 64位配置Caffe 教程(基於CUDA7.5)

  深度學習是研究計算機視覺的重要工具,尤其在影象分類與識別等領域有著劃時代的意義。現在有很多深度學習框架,Caffe是比較常用的一個。本文講述了Ubuntu 14.04(64位)系統下配置Caffe的基本步驟,參考了Caffe的官方網站   http://caffe.berkeleyvision.org/

一、系統環境配置

1.1 首先安裝一般會用到的一些依賴項。開啟Ubuntu系統的終端,輸入以下命令: 

  sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler

  sudo apt-get install --no-install-recommends libboost-all-dev

1.2 下載並安裝CUDA

  選擇合適的版本,下載下來即可。按照圖中的設定,下載到的是cuda_7.5.18_linux.run,預設下載路徑是~/Downloads,在終端中輸入: 

  cd ~/Downloads

  sudo sh cuda_7.5.18_linux.run 

  執行後會有一大段文字要讓你瀏覽,終端左下角有進度顯示,當前應為0%,沒必要看,直接按Ctrl+C 跳過,之後要輸入“accept”。在下邊就是要你選擇裝各個元件。第一個顯示卡驅動不要裝,剩下的可以都裝上。注意,也不要自己另外裝NVIDIA顯示卡的官方驅動,可能會產生系統啟動迴圈登入不進去的情況。我當時就是因為裝了最新版官方驅動,導致迴圈登入不進去,嘗試了網路上各路大神給出的方法,均不奏效。最後放棄了,還是使用自帶的開源顯示卡驅動好了。 

--------------------------------------------------------------------

  但是即使這樣可能會出現一些特殊情況。比如使用了自帶的開源驅動,在編譯完成caffe後,執行使用GPU的測試,會提示Error: CUDA driver version is insufficient for CUDA runtime version 。這表示顯示卡驅動沒裝對。這時只能不使用GPU,僅僅使用CPU了。當然如果非要使用GPU,只能安裝合適的顯示卡驅動。正如前文所說,安裝了最新的NVIDIA顯示卡驅動反而造成Ubuntu登入出現問題,那麼應該裝哪個驅動呢?

  開啟System Settings ——> Software & Updates——> Additional Drivers

  我的顯示卡是GTX 760,列表中顯示驅動中較新的是352.63版本。於是,我們可以從NVIDIA官網下載這個版本的顯示卡驅動。根據自己的顯示卡和系統來下載對應的驅動,我的下載後是NVIDIA-Linux-x86_64-352.63.run。 (一種更簡單的方法是直接選中列表中的驅動版本,點選右下角的“Apply Changes”)

  安裝方法:

  (1)先關閉桌面系統,終端輸入:

   sudo service lightdm stop

  (2)然後按Ctrl + Alt +F1進入控制檯,輸入帳號和密碼。cd到顯示卡驅動所在目錄,然後執行:

   sudo  sh NVIDIA-Linux-x86_64-352.63.run

  按照指令一步步安裝完即可。

  (3)中間可能會要求禁用自帶開源驅動並重啟計算機。重啟後需要重複之前的步驟,然後一路確認就可以了。安裝完成後,輸入命令:

   sudo service lightdm start

  即可返回桌面系統。

--------------------------------------------------------------------

  安裝完CUDA後,需要在使用者環境變數中加入兩個路徑。在終端中輸入

  gedit  ~/.bashrc

  在開啟的檔案末尾新增下面兩行:

  export PATH=/usr/local/cuda-7.5/bin:$PATH
  export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64:$LD_LIBRARY_PATH

  然後儲存並退出。

1.3 安裝BLAS

  終端中輸入以下命令: 

  sudo apt-get install libatlas-base-dev

1.4 安裝Python(可選的)

  如果需要使用內建的Python,就需要執行下面的命令,這樣在生成pycaffe介面時候才能有Python標頭檔案:

  sudo apt-get install the python-dev 

1.5 剩下的一些依賴 

  sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

二、Caffe的安裝和編譯

2.1安裝Caffe

  我們使用git來獲取Caffe,如果之前沒有安裝git,需要手動安裝

  sudo apt-get install git 

2.2 配置Caffe

  進入caffe的根目錄。我的caffe下載後在主目錄下,所以在終端輸入:

  cd ~/caffe

  然後建立一個配置檔案。由於下載後的caffe目錄中自帶一個Makefile.config.example檔案,所以只需要將該檔案複製一份,並且命名為Makefile.config即可。所以可以使用下面的命令:  

  cp Makefile.config.example Makefile.config

  關於Makefile.config的一些說明如下:

  (1)使用CPU&GPU加速的Caffe,不需要修改現有配置;

  (2)使用NVIDIA的cuDNN軟體加速的Caffe,則需要取消 “USE_CUDNN := 1”之前的註釋符號。需要指出的是,cuDNN並不是一定會比Caffe的GPU加速快。

  (3)僅使用CPU的Caffe,取消 “CPU_ONLY := 1”前面的註釋。

2.3 編譯Caffe

  我們使用CMake來編譯Caffe,如果之前沒有安裝CMake,需要手動安裝 

  sudo apt-get install cmake

  然後一次執行以下命令(如果遇到執行許可權問題,在命令前加上 sudo) 

  mkdir build

  cd build

  cmake ..

  make all

  make install

  sudo make runtest

  至此,已經成功安裝了Caffe。可以在一些資料集上進行一些測試了。

三、使用Caffe

3.1 準備MNIST 資料集

  首先準備資料集。我們需要從MNIST網站上下載資料並轉換格式。為了簡單,可以直接執行下面的命令: 

  cd  ~/caffe

  ./data/mnist/get_mnist.sh

  ./examples/mnist/create_mnist.sh

  執行後,在caffe/examples/mnist下會生成mnist_train_lmdb和 mnist_test_lmdb兩個資料夾。

3.2 執行結果

  終端輸入以下命令(當前工作目錄仍然是~/caffe): 

  ./examples/mnist/train_lenet.sh

  執行這句命令,最後訓練成功結果如圖。