前端之家收集整理的这篇文章主要介绍了
Caffe在Ubuntu下配置,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
ubuntu16.04+cuda8.0+cudnn8.0+caffe
具体的版本由自己电脑决定
Ubuntu-16.04.1-desktop-amd64 (64位ubuntu)
cuda-repo-ubuntu1604-8-0-local_8.0.44-1_amd64.deb
cudnn-8.0-linux-x64-v5.1.tgz
caffe-master
直接GPU版本的配置
首先是安装caffe依赖包
sudo apt-get install build-essential
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install python-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
1)更新显卡的驱动
具体请参考网上教程,更新完注意重启电脑
2)安装cuda8.0
我采用的是离线.deb安装方法,按自己的电脑和软件的情况,去官网下载dbe包,大概1.8G。然后在它存放的目录打开终端,执行下面的命令安装:
sudo dpkg -i cuda-repo-<distro>_<version>_<architecture>.deb # 自己的.deb包名
sudo apt-get update
sudo apt-get install cuda
安装完成之后切记要重启电脑:sudo reboot,让显卡配置生效
3)安装cudnn8.0
将上面提到的cudnn安装包下载好解压,进入解压后的文件,在终端执行下面的指令安装:
cd cuda
sudo cp lib64/lib* /usr/local/cuda/lib64/
sudo cp include/cudnn.h /usr/local/cuda/include/
然后更新网络连接:
cd /usr/local/cuda/lib64/
sudo chmod +r libcudnn.so.5.1.3 # 自己查看.so的版本
sudo ln -sf libcudnn.so.5.1.3 libcudnn.so.5
sudo ln -sf libcudnn.so.5 libcudnn.so
sudo ldconfig
4)添加环境变量
编辑计算机文件夹下的/etc/profile,加入CUDA环境变量(下面的2,3句),保存
sudo gedit /etc/profile
PATH=/usr/local/cuda/bin:$PATH
export PATH
保存后执行下面的命令,使其生效:
souce /etc/profile
同时,进入/etc/ld.so.conf.d/文件夹,执行下面的命令,新建一个名为cuda.conf的文件
sudo gedit cuda.conf
然后在文件中写入如下内容:
/usr/local/cuda/lib64
保存后执行下面的命令,使其生效
sudo ldconfig
测试cuda安装有没有成功
进入usr/local/cuda/samples,然后build samples,命令如下:
sudo make all -j8
在执行完之后,进入samples/bin/x86_64/linux/release目录下,在终端执行查询命令:
./deviceQuery
如果返回了你电脑显卡的信息,且结尾有Result=PASS,则表示安装成功,否则,建议重启电脑之后再次尝试查询命令
6)修改配置文件
下载caffe-master包,下载之后,解压,打开Makefile文件,修改下面的两个地方:
(1)
INCLUDE_DIRS += $(BUILD_INCLUDE_DIR) ./src ./include
改成:
INCLUDE_DIRS += $(BUILD_INCLUDE_DIR) ./src ./include /usr/include/hdf5/serial
(2)
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5
改成:
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial
修改Makefile.config文件
将USE_CUDNN := 1取消注释
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include 后面打上一个空格,然后添加/usr/include/hdf5/serial如果没有这一句可能会报一个找不到hdf5.h的错误
7)正式编译
终端输入
make all -j8 or-j4
make test -j8 or-j4
make runtest -j8 or -j4
make pycaffe -j4
make distribute 生成发布安装包
make过程中又出现找不到lhdf5_hl和lhdf5的错误,
解决方案:
在计算机中搜索libhdf5_serial.so.10.1.0,找到后右键点击打开项目位置
该目录下空白处右键点击在终端打开,打开新终端输入
sudo ln libhdf5_serial.so.10.1.0 libhdf5.so
sudo ln libhdf5_serial_hl.so.10.0.2 libhdf5_hl.so
最后在终端输入sudo ldconfig使链接生效
注意每次编译不成功的话注意终端输入
make clean
清除之前编译没通过的release文件夹
8)测试python,终端输入
cd caffe/python
>>> python
>>> import caffe
如果不报错就说明编译成功了
如果ok了,请把这句话添加到~/.bashrc
`export PYTHONPATH=<YourHome>/caffe/python:$PYTHONPATH`
9)可以进行mnist测试
下载mnist数据集,终端输入
`cd /home/pawn/caffe/data/mnist/ `
`./get_mnist.sh` 获取mnist数据集
在/home/pawn/caffe/data/mnist/目录下会多出训练集图片、训练集标签、测试集图片和测试集标签等4个文件
mnist数据格式转换,终端输入
cd /home/pawn/caffe/
./examples/mnist/create_mnist.sh
必须要在第一行之后运行第二行,即必须要在caffe根目录下运行create_mnist.sh
此时在/caffe/examples/mnist/目录下生成mnist_test_lmdb和mnist_train_lmdb两个LMDB格式的训练集和测试集
LeNet-5模型描述在/caffe/examples/mnist/lenet_train_test.prototxt
Solver配置文件在/caffe/examples/mnist/lenet_solver.prototxt
训练mnist,执行文件在/caffe/examples/mnist/train_lenet.sh
终端输入
cd /home/pawn/caffe/
./examples/mnist/train_lenet.sh
测试结果如下 出现概率就对了 cafffe之旅就可以了。
原文链接:https://www.f2er.com/ubuntu/353484.html