博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
深度学习caffe:Ubuntu16.04安装指南(3)
阅读量:7006 次
发布时间:2019-06-28

本文共 5639 字,大约阅读时间需要 18 分钟。

caffe [完全版] 2017-01-19

配置如下: + [GPU加速[只支持N卡]] + + + python2.7 + boost58 , 主要参考了caffe官方教程

开始前,请先阅读:

 正式开始安装前,你需要一台已经安装好了Ubuntu16.04系统的电脑,然后/home分区最好有尽可能大的空间[最好>=20G],因为后面的实验需要的存储空间一般都比较大.

1. 软件源

操作命令

# 在修改source.list前,最好先备份一份sudo cp /etc/apt/sources.list /etc/apt/sources.list.old# 执行命令打开source.list文件,清空内容,输入清华的软件源sudo gedit /etc/apt/sources.list# 开始更新sudo apt-get update

清华大学

# deb cdrom:[Ubuntu 16.04 LTS _Xenial Xerus_ - Release amd64 (20160420.1)]/ xenial main restricteddeb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricteddeb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricteddeb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial universedeb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates universedeb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial multiversedeb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates multiversedeb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiversedeb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricteddeb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security universedeb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security multiverse

2. caffe依赖

 caffe的编译/运行时需要依赖一些其它的程序和各种库

sudo apt-get updatesudo apt-get install -y build-essential cmake git pkg-configsudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libhdf5-serial-dev protobuf-compilersudo apt-get install -y libatlas-base-dev sudo apt-get install -y --no-install-recommends libboost-all-devsudo apt-get install -y libgflags-dev libgoogle-glog-dev liblmdb-devsudo apt-get install -y python-pip

 建议:

 安装过程最好一条命令一条命令的执行,出现了错误方便及时发现.

 安装过程出现了安装失败的情况,不用担心,一般是因为网络原因,重新执行命令,一般多试几次就会好啦~

3. cuda8.0

下载

官网下载:

直接下载: 

安装

sudo dpkg -i cuda-repo-ubuntu1604-8-0-local_8.0.44-1_amd64.debsudo apt-get updatesudo apt-get install cuda

4. cudnn5.1

一个深度神经网络 库,用来给GPU加速,被广泛的用在各种深度学习框架中,如, , , .

下载[需要简单注册一下之后才可以下载]

官网下载: 

直接下载:

安装

解压/拷贝

# 解压tar -zxvf cudnn-8.0-linux-x64-v5.1.tgz# 解压后在当前目录下产生一个cuda目录cd cuda/include/sudo cp cudnn.h /usr/local/cuda/include/  #复制头文件cd ../lib64 #打开lib64目录sudo cp lib*  /usr/local/cuda/lib64/  #复制库文件# 给所有用户增加这些文件的读权限 sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

更新软链接,终端输入

cd /usr/local/cuda/lib64/sudo rm -rf libcudnn.so libcudnn.so.5sudo ln -s libcudnn.so.5.1.5 libcudnn.so.5sudo ln -s libcudnn.so.5 libcudnn.so

设置环境变量,终端输入 

sudo gedit /etc/profile# 在末尾加入PATH=/usr/local/cuda/bin:$PATHexport PATH

 保存后,sudo source /etc/profile 立刻生效

sudo vim /etc/ld.so.conf.d/cuda.conf# 按a进入插入模式,增加下面一行/usr/local/cuda/lib64

按esc退出插入模式,按:wq保存退出

最后在终端输入sudo ldconfig使配置生效

测试:

测试cuda和cudnn安装配置是否成功:

 

5. opencv3.1

下载

项目地址:

直接下载:

 

依赖项安装

sudo apt-get install --assume-yes build-essential cmake gitsudo apt-get install --assume-yes build-essential pkg-config unzip ffmpeg qtbase5-dev python-dev python3-dev python-numpy python3-numpysudo apt-get install --assume-yes libopencv-dev libgtk-3-dev libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-devsudo apt-get install --assume-yes libavcodec-dev libavformat-dev libswscale-dev libxine2-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-devsudo apt-get install --assume-yes libv4l-dev libtbb-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-devsudo apt-get install --assume-yes libvorbis-dev libxvidcore-dev v4l-utils

 解压,进入opencv-master目录 ,开始编译

# 解压进入源码目录unzip opencv-master.zipcd opencv-master# 创建build目录,用于编译mkdir buildcd build/cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D WITH_V4L=ON -D WITH_QT=ON -D WITH_OPENGL=ON -D WITH_CUBLAS=ON -DCUDA_NVCC_FLAGS="-D_FORCE_INLINES" ..   make -j $(($(nproc) + 1))

 安装

# 当前在build目录下sudo make installsudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'sudo ldconfigsudo apt-get update

 测试:

到了这一步,如果没有报错,说明已经安装成功了,为了确认一下,可以用一个例子实际跑一下.

具体可以参考我的这一篇博文:

 

6. hdf5配置

直接执行下列命令即可,否则在下一步caffe编译执行"make all"时 会报hdf5相关错误

find . -type f -exec sed -i -e 's^"hdf5.h"^"hdf5/serial/hdf5.h"^g' -e 's^"hdf5_hl.h"^"hdf5/serial/hdf5_hl.h"^g' '{}' \; cd /usr/lib/x86_64-linux-gnu sudo ln -s libhdf5_serial.so.10.1.0 libhdf5.so sudo ln -s libhdf5_serial_hl.so.10.0.2 libhdf5_hl.so   

 

7. caffe

下载

项目地址:  

直接下载:

注: 通过git命令直接clone项目(git clone https://github.com/BVLC/caffe.git ),但是速度一般都特别慢,建议直接下载

python库支持

解压caffe-master.zip之后,进入caffe-master/python,安装python需求库

unzip caffe-master.zipcd caffe-master# 第一步,安装python需求库cd pythonfor req in $(cat requirements.txt); do pip install $req; done

配置文件修改: Makefile和Makefile.config[当前目录caffe-master]

Makefile

gedit ./Makefile# 替换NVCCFLAGS += -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)# 为NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)

 Makefile.config

cp Makefile.config.example Makefile.configgedit ./Makefile.config

修改配置项如下

# 取消注释USE_CUDNN := 1OPENCV_VERSION := 3 # 包含和库路径保持同下面一致CUDA_DIR := /usr/local/cuda-8.0INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serialLIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial /usr/local/share/OpenCV/3rdparty/lib/

编译运行

# 多核并行,加快执行速度: -j $(($(nproc) + 1))make all -j $(($(nproc) + 1))make test -j $(($(nproc) + 1))make runtest -j $(($(nproc) + 1))make pycaffe  -j $(($(nproc) + 1))make distribute -j $(($(nproc) + 1))

 注: 编译运行过程若是报错提示缺少某个软件或是库,一般直接安装就可以解决. 重新编译命令为 make clean

 给当前用户bash添加python环境变量

gedit ~/.bashrc# 最后一行添加export PYTHONPATH=/path/to/caffe-master/python:$PYTHONPATH# 立即生效source ~/.bashrc

 

8. mnist和cifar10实验

实验部分链接:

 

转载于:https://www.cnblogs.com/AbcFly/p/6308599.html

你可能感兴趣的文章