红联Linux门户
Linux帮助

深度学习caffe+Linux环境搭建

发布时间:2016-06-21 15:07:37来源:linux网站作者:甘春生

1.安装ubuntu16.04(64位)

略。网上资料很多。


2.安装cuda-8.0
(1)卸载已有得显卡驱动
sudo apt-get --purge remove nvidia-*
(2)安装新cuda和驱动
sudo dpkg -i cuda-repo-ubuntu1604-8-0-rc_8.0.27-1_amd64.deb
(3)安装更新
sudo apt-get update
(4)安装cuda Toolkit
sudo apt-get install cuda
(5)重启
reboot

到此就完成了cuda和驱动的安装,这是最新得安装方法,非常简单,网上的复杂方法都已经过时。


3.安装cuDNN-8.0库
(1)解压

tar zxvf cudnn-8.0-linux-x64-v5.0-ga.tgz

得到cuda文件夹里面含有lib64和include两个文件夹

(2)拷贝到系统目录

sudo ap cuda/cudnn.h /usr/local/cuda/include/

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

如果报错,可能是文件权限问题,修改权限具体方法百度一下。


4.安装caffe

(1)安装必要的依赖库(已经包含opencv2)

sudo apt-get install build-essential
sudo apt-get install libatlas-base-dev 
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev 

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

(2)在https://github.com/BVLC/caffe上下载caffe并解压得到源码包

unzip caffe-master.zip

(3)修改配置文件Make.config

cd caffe-master

cp Makefile.config.example Makefile.config

vi Makefile.config

将# USE_CUDNN := 1前得#注释去掉,表示使用cuDNN,如果不是使用GPU,可以将# CPU_ONLY := 1前得注释去掉。这里我们使用cuDNN来加速。

(4)编译caffe

方法1:

mkdir build

cd build

cmake ..

make all -j8

这种方法一般不会出现问题。

方法2:

make all -j8

提示错误:src/caffe/net.cpp:8:18: fatal error: hdf5.h: No such file or directory

解决方法:https://github.com/NVIDIA/DIGITS/issues/156

cd /usr/lib/x86_64-linux-gnu

sudo ln -s libhdf5_serial.so.10.1.0 libhdf5_serial.so

sudo ln -s libhdf5_serial_hl.so.10.0.2 libhdf5_serial_hl.so

修改Makefile.config

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/

即可。

(5)安装Python接口

make pycaffe

(6)测试

make test

make runtest

(7)测试caffe自带用例

sh data/mnist/get_mnist.sh

sh examples/mnist/create_mnist.sh

sh examples/mnist/train_lenet.sh


至此,caffe+linux环境搭建完成。至于MKL和opencv3可以选择自由选择安装,目前已经可以进行deeplearning学习与测试。


本文永久更新地址:http://www.linuxdiyf.com/linux/21717.html