Caffe在Ubuntu下配置

前端之家收集整理的这篇文章主要介绍了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环境变量(下面的23句),保存
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

如果不报错就说明编译成功了;如果报错,可能是你某些依赖python包未装,通过pip或者apt装上。
如果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

猜你在找的Ubuntu相关文章