Ubuntu16.04+CUDA8.0+cudnn7.5+Caffe安装过程

前端之家收集整理的这篇文章主要介绍了Ubuntu16.04+CUDA8.0+cudnn7.5+Caffe安装过程前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Ubuntu16.04+CUDA8.0+cudnn7.5+Caffe安装过程

一般这样标题博客第一段都会有一段吐苦水的话,哈哈...我在此就按住不表了,总结起来就是:在污邦兔下面安装深度学习的平台光有经验有时候是不够的,还要有好人品Orz...

友情提示:如果出现不存在该文件或找不到文件的情况,很可能是因为终端定位的目录错误了,这是新手经常会遇到的问题。

1. 主要用到的软件列表:

注:具体版本由自己电脑决定,官网下载超链接
Ubuntu-16.04.1-desktop-amd64(64位ubuntu)
cudnn-7.5-linux-x64-v5.1.tgz(需要注册才能下载,现在审核时间很短,填个问卷就能下载了)
caffe-master (也可以在线下载 )

2. cpu版Caffe

直入正题,因为先前只需要安装cpu版的caffe,所以实现起来不是很难,参照这篇博客,基本能够实现,至于他最后训练手写字体mnist数据库失败的原因是因为没有修改example/mnist文件夹中的运行配置文件,即将默认的GPU运行模式改成cpu


3. GPU版本安装及配置

3.1 安装一些基本依赖库

  1. sudoapt-getinstallbuild-essential
  2. sudoapt-getinstalllibprotobuf-devlibleveldb-devlibsnappy-devlibopencv-devlibboost-all-devlibhdf5-serial-devlibgflags-devlibgoogle-glog-devliblmdb-devprotobuf-compiler

3.2 更新gcc和g++

因为我用的都是比较新的软件版本,为避免与编译器版本不兼容问题(我安装过程中确实因为出现这个问题走了一些弯路),我将ubuntu自带的gcc/g++-4.9升级到了gcc/g++-5,具体步骤如下:

下载安装gcc/g++-5
  1. sudoadd-apt-repositoryppa:ubuntu-toolchain-r/test
  2. sudoapt-getupdate
  3. sudoapt-getinstallgcc-5
  4. sudoapt-getinstallg++-5

改变系统默认的gcc/g++编译器版本,换成gcc/g++-5
  1. sudosu
  2. cd../../usr/bin
  3. ln-s/usr/bin/g++-5/usr/bin/g++-f
  4. ln-s/usr/bin/gcc-5/usr/bin/gcc-f
这样,gcc就默认成gcc-5,g++也默认成g++-5了。

3.3 安装CUDA8.0

我采用的是离线.deb安装方法,按自己的电脑和软件的情况,去官网下载dbe包,大概1.8G。然后在它存放的目录打开终端,执行下面的命令安装:
  1. sudodpkg-icuda-repo-<distro>_<version>_<architecture>.deb#自己的.deb包名
  2. sudoapt-getupdate
  3. sudoapt-getinstallcuda
安装完成之后切记要重启电脑:sudo reboot,让显卡配置生效。

3.4 安装cudnn7.5

将上面提到的cudnn安装包下载好解压,进入解压后的文件,在终端执行下面的指令安装:
  1. cdcuda
  2. sudocplib64/lib*/usr/local/cuda/lib64/
  3. sudocpinclude/cudnn.h/usr/local/cuda/include/

然后更新网络连接:
  1. cd/usr/local/cuda/lib64/
  2. sudochmod+rlibcudnn.so.5.1.3#自己查看.so的版本
  3. sudoln-sflibcudnn.so.5.1.3libcudnn.so.5
  4. sudoln-sflibcudnn.so.5libcudnn.so
  5. sudoldconfig

3.5 添加环境变量

编辑计算机文件夹下的/etc/profile,加入CUDA环境变量(下面的2,3句),保存。
  1. sudogedit/etc/profile
  2. PATH=/usr/local/cuda/bin:$PATH
  3. exportPATH
保存后执行下面的命令,使其生效:
  1. source/etc/profile
同时,进入/etc/ld.so.conf.d/文件夹,执行下面的命令,新建一个名为cuda.conf的文件
  1. sudogeditcuda.conf
然后在文件中写入如下内容
  1. /usr/local/cuda/lib64
保存后执行下面的命令,使其生效。
  1. sudoldconfig

3.6 Build CUDA Sample

进入usr/local/cuda/samples,然后build samples,命令如下:
  1. sudomakeall-j8
在执行完之后,进入samples/bin/x86_64/linux/release目录下,在终端执行查询命令:
  1. ./deviceQuery
如果返回了你电脑显卡的信息,且结尾有Result=PASS,则表示安装成功,否则,建议重启电脑之后再次尝试查询命令。

4 安装Atlas

安装命令如下:
  1. sudoapt-getinstalllibatlas-base-dev


5 安装Opencv

做机器视觉会比较多地用到Opencv这个强大的工具,下载Opencv安装包,解压后进入目录Install-OpenCv/Ubuntu/2.4,然后执行安装文件
  1. shsudo./opencv2_4_10.sh
这个可能要花点时间,耐心等待吧。

6 配置Python环境

下载caffe-master包,第1节有gitbub下载链接,下载之后,解压,打开Makefile文件修改下面的两个地方:
  1. INCLUDE_DIRS+=$(BUILD_INCLUDE_DIR)./src./include
改成:
  1. INCLUDE_DIRS+=$(BUILD_INCLUDE_DIR)./src./include/usr/include/hdf5/serial

  1. LIBRARIES+=gloggflagsprotobufboost_systemboost_filesystemmhdf5_hlhdf5
改成:
  1. LIBRARIES+=gloggflagsprotobufboost_systemboost_filesystemmhdf5_serial_hlhdf5_serial

保存之后,进入caffe-master/python文件,在终端执行下面的命令:
  1. sudoapt-getinstallpython-pippython-devbuild-essential
  2. sudopipinstall--upgradepip
  3. sudopipinstall-rpython/requirements.txt


7 安装ipython notebook

notebook是很方便的python编译和运行工具,值得拥有 ,随便在哪个终端执行下面命令。
  1. sudoapt-getinstallipython-notebookpython-sympy
  2. sudopipinstalljupyter
  3. mkdirnotebook
  4. cdnotebook
  5. ipythonnotebook
如果有一个notebook网页跳出就说明ok了,至于不会用notebook的同学,建议学一下。不过这里只是一个辅助的工具啦,并不是本文主讲内容,因为还用不到。

8 编译Caffe

进入caffe-master文件夹,复制配置文件,留一个备份:
  1. cpMakefile.config.exampleMakefile.config

然后打开Makefile.config文件,将里面的一些配置修改一下,把注释去掉,后面数字修改一下:
  1. USE_CUDNN:=1
  2. USE_OPENCV:=1
  3. USE_LMDB:=1
  4. WITH_PYTHON_LAYER:=1
  5. CUSTOM_CXX:=g++

这是为了运行下面mnist例子做准备的,不同的例子,配置文件修改内容可能不一样,这也是留一个备份的原因。

然后编译下面4个命令:
  1. makeall-j8
  2. makepycaffe-j8
  3. maketest-j8
  4. makeruntest-j8

如果没有报错,那基本上就安装成功啦!

9 mnist手写字体识别例子实现

进入caffe-master文件夹,打开终端,下载数据:
  1. ./data/mnist/get_mnist.sh
将数据转化成要求格式:
  1. ./examples/mnist/create_mnist.sh
训练:
  1. ./examples/mnist/train_lenet.sh

如果成功了,那就O了。

我自己在安装的过程中借鉴了很多别人的经验,觉得这就是博客的魅力所在,感谢他们的无私分享,也希望自己的分享能够给其他人带来帮助,有任何疑问都可以交流哈。

10 References

1.http://blog.csdn.net/letian0805/article/details/52845285
2.http://blog.csdn.net/ubunfans/article/details/47724341
原文链接:https://www.f2er.com/ubuntu/355003.html

猜你在找的Ubuntu相关文章