Caffe + Ubuntu 14.04 64bit + 无CUDA(linux下安装caffe(无cuda)以及python接口)

时间:2024-09-12 08:35:14

安装Caffe指导书

环境: Linux 64位

显卡为Intel + AMD,非英伟达显卡

无GPU

一. 安装准备工作

1. 以管理员身份登录

在左上角点击图标,搜索terminal(即终端),以super 管理员身份登录:

命令:sudo su

输入password即可

2. 安装Boost

命令:sudo apt-get install libboost-all-dev

3. 安装BLASIntel MKL

(1)  下载 Intel MKL库,解压后安装

下载地址: https://software.intel.com/en-us/intel-mkl/  以学校邮箱/科研单位地址进行申请使用免费软件,邮箱里会收到序列号以及下载软件的地址。

进入/tmp,进行解压缩

命令:tar –zxvf l_mkl_11.3.0.109.tgz

(2)  安装MKL

命令:sudo sh install.sh

4. dependent library

命令:

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

5. Glog

命令:

wget https://google­-glog.googlecode.com/files/glog-0.3.3.tar.gz

tar zxvf glog­-0.3.3.tar.gz

cd glog-­0.3.3

sudo sh ./configure

sudo make && sudo make install

6. Lib Path

(1)打开/建立 mkl.conf 文件

命令:sudo gedit /etc/ld.so.conf.d/mkl.conf

输入内容

/opt/intel/lib/intel64

/opt/intel/mkl/lib/intel64

(2)打开/建立 cuda.conf 文件

命令:sudo gedit /etc/ld.so.conf.d/cuda.conf

输入内容:

/usr/local/cuda/lib64

/usr/local/cuda/lib

(3)立即生效

命令:sudo ldconfig

7. 安装protoc-c

命令:sudo apt-get install protobuf-c-compiler protobuf-compiler

8. 安装gflags

命令:wget https://github.com/schuhschuh/gflags/archive/master.zip
unzip master.zip
cd gflags-master
mkdir build && cd build
export CXXFLAGS="-fPIC" && cmake .. && make VERBOSE=1
make 
sudo make install

9. 安装lmdb

方法一:(截止目前,这个下载正在维护,所以本人采用第二种方式)

命令:git clone git://gitorious.org/mdb/mdb.git
cd mdb/libraries/liblmdb
make
sudo make install

方法二:

(1)下载lmdb

下载地址:https://github.com/LMDB/lmdb   点击右侧的download,下载下来的是zip格式

(2)解压缩

命令:cd tmp

unzip lmdb_mdb.master.zip

cd lmdb_mdb.master/libraries/liblmdb

make

sudo make install

10. 安装caffe

(1)  下载caffe

命令:git clone
git://github.com/BVLC/caffe.git

(2)  安装caffe

命令:cd caffe
cp Makefile.config.example Makefile.config

二. 编译:

1. 修改Makefile.config三处

CPU_ONLY:= 1的注释(#)去掉

USE_CUDNN:=0

BLAS选择mkl

命令:vi Makefile.config

在需要修改的光标处,先按插入(Insert)键,进行修改(如果写错,不要按左右箭头,先按Esc键,再进行修改),按Esc退出编辑。

如果修改成功,保存命令:   :wq  ,不保存命令:   :q!

2. 编译

命令:make all

make test

make runtest

三. 在mnist运行lenet

1.首先获取mnist数据

命令:cd caffe

./data/mnist/get_mnist.sh

 

2.创建lenet

命令:./examples/mnist/create_mnist.sh

注意一定要在caffe的根目录下运行以下命令,否则会报“ build/examples/mnist/convert_mnist_data.bin:
not found”的错误。

3.训练cnn

(1)修改

没有GPU的话要记得把caffe/examples/mnist/lenet_solver.prototxt中的solver_mode设置成solver_mode: CPU。

(2)训练cnn,在根目录下执行:

命令:./examples/mnist/train_lenet.sh

准确率可以达到0.9912

四. 安装python接口

由于自己linux系统下python是2.7.6,就没重新安装。如果版本太旧,建议重新安装。参考:http://blog.****.net/pan_tian/article/details/7684409

1.安装pip

sudo apt-get install python-pip
python-dev build-essential

2. 配置路径,编辑Makefile.config

PYTHON_INCLUDE := /usr/include/python2.7 \
                                    /usr/lib/python2.7/dist-packages/numpy/core/include
PYTHON_LIB := /usr/local/lib

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib

3.运行以下代码安装必要的依赖项:

sudo pip install -r
./python/requirements.txt

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

4. 在caffe的根目录下运行:

make pycaffe

5.
如果python路径添加失败,可以考虑以下方法:(小编使用此方法解决啦)

用super 权限登录,设置环境变量

命令: sudo gedit /etc/profile

在文档的最下面输入:(提示:在PYTHONPATH=之后输入的路径是Linux下自己安装的caffe路径)

PYTHONPATH=caffe/python:$PYTHONPATH

export PYTHONPATH

命令: source /etc/profile

python

import caffe

6.
test:

命令:python draw_net.py <protext> <outfile>

e.g.   
./python/draw_net.py ./examples/mnist/lenet_train_test.prototxt lenet.png

注意:首先要安装了graphviz和pydot

命令: sudo apt-get
install graphviz graphviz-doc

sudo pip install pydot

参考帖子:

1.
http://www.cnblogs.com/sunshineatnoon/p/4535329.html

2.
http://blog.****.net/wingfox117/article/details/46278001

3. yuanyuan的分享