caffe在ubuntu16.04下的配置

首先给出CAFFE官网安装指南页面,但在一般安装过程中会出现很多问题,这是官方安装文档中没有涉及到的。好的,下面介绍一下我的详细配置过程。
http://caffe.berkeleyvision.org/installation.html#compilation

第一步:安装dependencies

caffe的的编译需要很多的lib文件和支持模块,照着下面的语句一句一句的输入就可以了

$ 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
$ sudo apt-get install libatlas-base-dev
$ sudo apt-get install libhdf5-serial-dev
$ sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
$ sudo apt-get install python-numpy
$ sudo apt-get install python-dev

第二步:安装anncoda

使用caffe的python接口接口当然少不了anaconda,下面给出了anaconda的官方网站,找到对于的python版本,下载对应Linux版本的文件
https://www.continuum.io/downloads
下载完成后在其路径下输入bash指令,完成安装

$ bash Anaconda2-4.3.0-Linux-x86_64.sh

第三步:安装opencv

实际上ubuntu内建了2版本的opencv,因此不进行这一步也没有关系,但在caffe的使用过程中,不可避免的要使用opencv的python接口来对图像进行操作,一般推荐用源码安装, 但在这里有了anacoda就不用担心源码安装编译的问题啦。直接轻松安装3版本的opencv

conda install opencv

第四步:安装nvidia显卡驱动,cuda,cudnn

当然必须是N卡才可以显卡加速,当然显存大于4G加速才有意义,别怪我没提前告诉你哦!

4.1安装显卡驱动

安装显卡驱动的方法有很多
打开命令终端,加入官方ppa源(ppa简介)。

$ sudo  add-apt-repository ppa:graphics-drivers/ppa

需要输入密码并按enter键确认。之后刷新软件库并安装最新驱动。

$ sudo apt-get update
$ sudo apt-get install nvidia-367
$ sudo apt-get install nvidia-settings nvidia-prime 
$ sudo apt-get install mesa-common-dev
$ sudo apt-get install freeglut3-dev

安装完成后通过下面命令查看是否安装成功。

$ nvidia-settings

如果出现以下画面说明安装成功

caffe在ubuntu16.04下的配置_第1张图片

还有个方法检测安装是否成功,安装完成之后输入以下指令进行验证,若列出了GPU的信息列表则表示驱动安装成功。如下图:

$ sudo nvidia-smi

caffe在ubuntu16.04下的配置_第2张图片

4.2安装CUDA

CUDA(Compute Unified Device Architecture),是显卡厂商NVIDIA推出的运算平台,是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。首先查看自己的GPU能不能进行计算,算力如何,网址如下:https://developer.nvidia.com/cuda-gpus。

caffe在ubuntu16.04下的配置_第3张图片

如果可以计算,那么下载cuda,官网如下,按下图选择安装包并根据提示下载安装,这里有三种安装方法,推荐使用deb安装方法,如下图选择并安装。
https://developer.nvidia.com/cuda-downloads

caffe在ubuntu16.04下的配置_第4张图片

安装完之后检查nvcc,即在终端中输入nvcc应出现相应选项
环境变量配置

安装完毕后,再声明一下环境变量,并将其写入到 ~/.bashrc 的尾部

$ export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
$ export LD_LIBRARY_PATH=/usr/local/cuda8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

4.3安装cudnn

cudnn为优化GPU加速计算的程序,首先从官网上下载cudnn的安装包。这里一定要注意,安装对应自己cuda版本的的cudnn!!!
https://developer.nvidia.com/cuDNN

caffe在ubuntu16.04下的配置_第5张图片

将安装包解压,将此安装包放在home路径下即可,并在当前路径下进行解压,解压后的文件夹名为cuda。
在home路径下打开终端:

$ cd cuda/include (进入home/cuda/include文件夹)
$ sudo cp *.h /usr/local/cuda/include/  (注意这里是你自己的cuda的安装地址,复制*.h文件)

关闭终端并重新打开(也可以返回最开始的目录)

$ cd cuda/lib64
$ sudo cp libcudnn* /usr/local/cuda/lib64/

终端运行:

$ sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

第五步:准备caffe

在下载caffe源码前,先安装两个小工具,一个是pip,python的包管理器,另一个是git,用了下载github上的源码

$ sudo apt install python-pip
$ sudo apt-get install git-core

下面将caffe的源码clone下来

$ git clone https://github.com/BVLC/caffe.git

下载完成之后,进入CAFFE文件夹, 进入里面的PYTHON文件夹,然后输入

for req in $(cat requirements.txt); do pip install $req; done

好的,那么下面就准备编译了,准备编译之前,跟新一下anaconda的gcc库,caffe在python接口下使用时只支持libgcc5版本,因此需要跟新

conda update libgcc

第六步:安装caffe

到CAFFE文件夹, 使用模板写个Makefile.config. 具体就是先复制一下模板, 再改一些内容

$ cp Makefile.config.example Makefile.config

如果是CPU MODE, 所以在CPU_ONLY := 1前面的#要去掉。
如果是GPU MODE,并且使用cudnn加速, 所以在USE_CUDNN := 1前面的#要去掉.

两个路径要改成这样:(添加后面的两个hdf5的路径, 否则编译时报hdf5错误)

# Whatever else you find you need goes here.
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

准备好了.

$ make pycaffe -j8
$ make all -j8
$ make test -j8
$ make runtest -j8

结果显示ALL TESTS PASSED就安装好了, 另外, 这个make默认是用CPU单核运算,如果想要快一点, 比如我想使用四核, 在make后面加上-j4标签。如果上面4行某一行报错之后想要重试,建议先make clean再重新开始.

第七步:调试Python接口

去到CAFFE文件夹里面的python文件夹, 把当前路径记录下来(pwd). 然后输入以下命令(把记下的路径放在相应地方)
按Ctrl+h,在Home目录下可以查看隐藏文件,打开.bashrc文件,编辑环境变量,添加如下语句在末尾

export PYTHONPATH=/path/to/caffe/python:$PYTHONPATH

添加完之后记得激活环境变量哦

source /etc/environment

这时候应该可以了,试验一下:

$ 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,深度学习)