当前,计算机视觉研究如火如荼,Deep Learning更是被捧上神坛,要靠自己完全实现DNN是一个很困难的过程,一个好的框架显得至关重要。BVLC发布的caffe就是一个很好用的DeepLearning框架。关于caffe的安装教程网上有很多,本文主要根据自己的安装经历讲讲如何快速的安装caffe。
- OS:Ubuntu 14.04 LTS/ 15.04 / 16.04 LTS
- cuda version :7.5/8.0
- cudnn 7.0 v3/ v5
- Matlab R2015b 密码: rrc3
驱动安装
- 显卡驱动推荐用ubuntu自带的软件库安装(推荐使用该方法)
$ sudo apt-get install nvidia-xxx
其中,’xxx’是驱动版本号,一般都兼容。 - 采用nvidia官方提供的显卡驱动文件进行安装
在图形界面切换到tty1(即ctrl + alt +F1)并登陆
$ sudo service lightdm stop #关闭图像界面
$ sudo ./NVIDIA-Linux-x86_64-xxx.run #安装显卡驱动
$ sudo reboot #安装成功后重启
cuda,cudnn,nccl,caffe下载
cuda下载
- 从NVIDIA官网下载cuda Toolkit 。下载deb文件,方便安装。(推荐该方法)
- 下载.run文件进行安装.
cudnn下载
用户可以去NVIDIA官网下载cudnn 。
nccl下载
nccl是NVIDIA提供的用于多gpu并行计算的库。该库只针对多GPU用户,单卡的童鞋可以忽略。用户可以从这里下载。
caffe下载
下载caffe,可用git命令从github下直接copy下来:
$ cd ~
$ git clone https://github.com/BVLC/caffe.git caffe
也可以访问github主页,下载zip文件。建议存放在当前用户目录下,即/home/username/caffe,下文用caffe_root替代。
依赖安装1
Terminal下执行:
$ sudo apt-get install build-essential libprotobuf-dev libopencv-dev \
libboost1.58-all-dev libatlas-dev libgoogle-glog-dev \
liblmdb-dev libhdf5-serial-dev protobuf-compiler \
libsnappy libatlas-base-dev
#推荐安装lib包,方便不易出错
$ cd caffe_root/python/ #caffe_root是caffe文件的根目录
$ for req in $(cat requirements.txt); do pip install $req; done #安装python所需依赖
cuda安装2
Terminal下执行:
$ sudo dpkg -i cuda-repo-ubuntuxxxx-x-x-local_x.x-xx_amd64.deb
其中,’x’为下载的版本号,与自己下载的文件一致即可。或者双击下载的文件即可开始安装。
Toolkit安装玩之后,在Terminal下执行:
$ sudo apt-get install cuda
该命令执行完,即可添加环境变量。
- 用runfile文件安装(方法二):
$ sudo ./cuda_x.x.x_linux.run #xxx为版本号
$ 按住space跳过license说明.
$ 由于前一步已经装好显卡驱动,所以用此方法要跳过开头的驱动安装选项.其余选项按照默认即可.
设置环境变量:
Terminal下执行:
$ sudo gedit /etc/profile
在文件末端添加如下命令:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/your/cuda/lib64
export PATH=$PATH:/path/to/you/cuda/bin
其中,/path/to/your/cuda/是安装cuda的根目录,用本文介绍的方法安装默认实在/usr/local/cuda-7.5/。为什么不是cuda而是cuda-7.5呢,主要时cuda目录里只是一些链接。改完之后保存并关闭,在Terminal下执行:
$ source /etc/profile
$ nvcc -V #检测是否安装成功
``
nvcc: NVIDIA (R) cuda compiler driver
Copyright (c) 2005-2015 NVIDIA Corporation
Built on Tue_Aug_11_14:27:32_CDT_2015
cuda compilation tools, release 7.5, V7.5.17
``
出现类似上面的信息即为安装成功,进一步测试可以运行如下命令:
$ cuda-install-samples-7.5.sh <dir> #<dir>是要存放例子的目录
然后进入相关例子的目录,make编译下,即可运行。
cudnn的安装是很简单的,然后解压文件,把对应目录下的文件copy到前面安装的cuda的对应目录下即可。
$ tar cudnn-7.0-linux-x64-v3.0-rc.tgz #最新版cudnn是v5
$ cd cuda
$ cp include/* /usr/local/cuda-7.5/include/
$ cp lib64/* /usr/local/cuda-7.5/lib64/
到此,cuda安装完成。
NCCL安装
nccl安装很简单,进入到github克隆下来的目录中,然后在终端运行如下命令:
$ make all -jx
编译完成则安装成功。
Python和Matlab安装
Python
在ubuntu下Python是已经安装好的,需要的依赖也在前面的步骤中完成,所以无需再安装。
如果make过程遇到python库找不到,可以通过把PYTHONPATH写进/etc/profile来解决。
$ sudo gedit /etc/profile #打开配置文件
export PYTHONPATH=$PYTHONPATH:/path/to/your/python/ #在配置文件末端添加
Matlab
Matlab的安装文件点击文章最开头的链接即可下载。Matlab的安装很简单,只需3步:
1.用sudo权限运行R2015b里面的install文件,选择输入激活码,激活码在readme文件里面,选择第一个,选择下一步,开始安装。
2.安装完成后,把Matlab Crack里面的文件拷到对应的安装目录下。把license_standalone.lic拷贝到Matlab安装目录下。
3.用sudo权限运行matlab,选择离线激活,license选择刚才复制到安装目录下的那个文件。激活完成,Matlab安装完成。
之后只需把Matlab加入到环境变量中:
$ sudo gedit /etc/profile
PATH="/usr/local/MATLAB/R2015b/bin:$PATH"
$ source /etc/profile
caffe安装
一切就绪,现在就可以开始进入主题啦:
第一步,更改Makefile文件
$ cd caffe
$ cp Makefile.config.example Makefile.config
$ gedit Makefile.config
在Makefile.config文件中,做如下更改:
- #USE_CUDNN :=1
+ USE_CUDNN :=1
- # MATLAB_DIR := /usr/local
+ MATLAB_DIR := /usr/local/MATLAB/R2015b/
- CUDA_DIR :=/usr/local/cuda
+ CUDA_DIR :=/usr/local/cuda-7.5
#如果装了hdf5依赖库,又找不到它,可以按照下面修改Makefile.config
- INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/lib/x86_64-linux-gnu/hdf5/serial/include
+ INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/lib/x86_64-linux-gnu/hdf5/serial/
- # USE_NCCL:=1
+ USE_NCCL:=1
-:删除该行
+:添加该行
至此,编译caffe的准备就结束了。
第二步,在Terminal下执行:
$ cd caffe_root #进入caffe根目录
$ make all test runtest -jx #x为cpu核心数,例如8核,-j8,此举为了加快编译速度。
若编译过程无错误提示,则caffe安装完成。
第三步,添加环境变量:
$ sudo gedit /etc/profile
export PATH=$PATH:caffe_root/.build_release/tools/
$ source /etc/profile #生效环境变量,如果无效就logout或者重启
$ make pycaffe matcaffe -jx #编译python和matlab的caffe接口
添加caffe/python环境变量,这样全局都可以使用pycaffe
$ sudo gedit /etc/profile
+:export PYTHONPATH=$PYTHONPATH:/path/to/your/caffe/python
工具整好了,各种模型可以跑起来了!
如果安装过程有遇到问题,欢迎留言交流。
致谢
感谢BVLC提供如此方便的框架。
2017-5-11 更新