Caffe 環境搭建中應注意的問題
和TensorFlow對應的是Theano,Torch;
Caffe專精於影象處理,Caffe方便,更快入門上手;
在通用的DL task上,Caffe不如Theano。
CNN(卷積神經網路)、RNN(迴圈神經網路)、DNN(深度神經網路)
開發環境搭建:
一、沒有GPU
- 1
- 2
二、ubuntu版本
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
三、gcc
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
四、安裝依賴庫
- 1
- 2
- 3
- 4
- 1
- 1
五、安裝python
六、安裝Opencv
七、安裝依賴庫
[email protected]:~$ sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
[sudo] password for learning:
Reading package lists… Done
八、下載Caffe
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
九、修改
Makefile 修改:
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs
這一塊程式碼不需要修改
修改處:
caffe/examples/cpp_classification/classification.cpp檔案
十、編譯
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
[email protected]:~/caffe$ gedit Makefile.config
[email protected]:~/caffe$ make all
出現問題:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
解決:
Makefile.config
INCLUDE_DIRS
/usr/include/hdf5/serial/
Makefile
LIBRARIES
hdf5_hl and hdf5 改為 hdf5_serial_hl ,hdf5_serial
出現問題:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
解決方法:
Makefile
修改:
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs
編譯成功:
make test
make runtest
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
十一、配置pycaffe
sudo apt-get install python-numpy python-scipy python-matplotlib python-sklearn python-skimage python-h5py python-protobuf python-leveldb python-networkx python-nose python-pandas python-gflags Cython ipython
sudo apt-get install protobuf-c-compiler protobuf-compiler
[email protected]:~/caffe$ make pycaffe
- 1
- 2
- 3
- 4
- 5
- 6
sudo gedit /etc/profile
末尾新增: export PYTHONPATH=/path/to/caffe/python:$PYTHONPATH
用完整路徑
source /etc/profile
[email protected]:~/caffe$ python
Python 2.7.10 (default, Oct 14 2015, 16:09:02)
[GCC 5.2.1 20151010] on linux2
Type “help”, “copyright”, “credits” or “license” for more information.
.>>>
出現問題:
- 1
- 2
- 3
- 4
解決方法:
sudo gedit /etc/profile
export PYTHONPATH=$PYTHONPATH:/home/learning/caffe/python
source /etc/profile
補充:baidu解釋
Python(英國發音:/ˈpaɪθən/ 美國發音:/ˈpaɪθɑːn/), 是一種面向物件、解釋型計算機程式設計語言,由Guido van Rossum於1989年發明,第一個公開發行版發行於1991年。
Python是純粹的自由軟體, 原始碼和直譯器CPython遵循 GPL(GNU General Public License)協議[1] 。
Python語法簡潔清晰,特色之一是強制用空白符(white space)作為語句縮排。
Python具有豐富和強大的庫。它常被暱稱為膠水語言,能夠把用其他語言製作的各種模組(尤其是C/C++)很輕鬆地聯結在一起。常見的一種應用情形是,使用Python快速生成程式的原型(有時甚至是程式的最終介面),然後對其中[2] 有特別要求的部分,用更合適的語言改寫,比如3D遊戲中的圖形渲染模組,效能要求特別高,就可以用C/C++重寫,而後封裝為Python可以呼叫的擴充套件類庫。需要注意的是在您使用擴充套件類庫時可能需要考慮平臺問題,某些可能不提供跨平臺的實現。