1、前言
重装系统配置caffe是进入深度学习领域必须经历的过程可能中间会遇到很多麻烦但是熟能生巧不要轻易放弃。本人目前为止重装系统重新配置caffe大概已经有个十几次啦但是每次都疏于整理结果每次重装时都要翻看大量博客非常耽误时间所以这次特此整理出来方便以后查看也期望为看到这篇博客的你带来些许的帮助。
2、配置过程
重新配置caffe之前一般要经历重装系统、安装NVIDIA显卡驱动、下载安装CUDA、安装cudnn、安装OpenCV这几个必要的过程期间每个过程都可能出现问题但是请不要急躁根据错误提示去百度或者谷歌你基本都能找到解决的办法。
谷歌翻墙小工具 链接https://pan.baidu.com/s/1vAsNx9vk0ZZyXql7hJLg3w 密码o1a6
ps:在后期实验的过程中我们可能改动了某个配置文件导致配好的环境崩溃掉在尝试了各种办法都没能解决的情况下重装系统是一个最好的选择大家不要排斥他有时候我觉得重装系统是解决问题最快的方式。如果您是新手也不必担心你只要记住只要你不对你的电脑动手随便作她一般都能挺住多试几次就会啦网上的教程很多这是我之前简单整理的教程。
3、安装NVIDIA显卡驱动
安装显卡驱动最好采用系统适配显卡驱动的方式简单方便。请参考以下博客内容。
Ubuntu16.04安装NVIDIAGeForce1080Ti显卡驱动
4、安装CUDA8.0
目前最新的是CUDA9.2版本但是如果你和我一样是初学者且不具备强烈的探索精神建议使用CUDA8.0cudnn5.1的方案因为该方案目前是最为成熟的方案出现的问题也很容易在博客中找到解决方案。
Ubuntu16.04上配置CUDA 8.0详细教程
这里我还是给出配置CUDA9.0的方案当时整理的还是比较仔细如果你按照我的方案应该不会遇到什么问题但是还是不建议配置安装CUDA9.0因为CUDA9.0相较之前的版本改动很大所以后续配置安装其他东西的时候你会遇到很多麻烦。
Ubuntu 16.04 上安装 CUDA 9.0 详细教程
5、安装 cudnn
cudnn是GPU加速计算深层神经网络的库。
Ubuntu16.04上安装cudnn5.1详细教程
6、安装 opencv3.1
Ubuntu16.04上安装 opencv3.1详细教程
7、安装caffe
a、 安装相关依赖包
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compilersudo apt-get install --no-install-recommends libboost-all-devsudo apt-get install libopenblas-dev liblapack-dev libatlas-base-devsudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-devsudo apt-get install git cmake build-essential
b、在我们要安装的路径下 clone 一般默认会安装在home文件加下文件夹名称为caffe。
git clone https://github.com/BVLC/caffe.git
进入 caffe 将 Makefile.config.example 文件复制一份并更名为 Makefile.config 也可以在 caffe 目录下直接调用以下命令完成复制操作
cd caffesudo cp Makefile.config.example Makefile.config
复制一份的原因是编译 caffe 时需要的是 Makefile.config 文件而Makefile.config.example 只是caffe 给出的配置文件例子不能用来编译 caffe。
然后修改 Makefile.config 文件在 caffe 目录下打开该文件
sudo gedit Makefile.config
修改 Makefile.config 文件内容
1应用 cudnn
将#USE_CUDNN : 1修改成 USE_CUDNN : 1
2应用 opencv 且版本是3的
将#OPENCV_VERSION : 3 修改为 OPENCV_VERSION : 3
3使用python来编写layer
将#WITH_PYTHON_LAYER : 1 修改为 WITH_PYTHON_LAYER : 1
4实现caffe对Python和Matlab接口的支持可不修改
PYTHON_LIB : /usr/libMATLAB_DIR : /usr/local/MATLAB/R2015b #注意将Matlab修改成对应的版本
5修改 python 路径重要
#Whatever else you find you need goes here. 下面的INCLUDE_DIRS: $(PYTHON_INCLUDE) /usr/local/includeLIBRARY_DIRS: $(PYTHON_LIB) /usr/local/lib /usr/lib修改为INCLUDE_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
注如果使用的是CUDA版本是8.0从CUDA 8.0开始compute capability 2.0和2.1被弃用了所以可以将-gencode archcompute_20,codesm_20 和-gencode archcompute_20,codesm_21这两行删除。如下
# For CUDA <6.0, comment the *_50 lines for compatibility.CUDA_ARCH : -gencode archcompute_30,codesm_30 \-gencode archcompute_35,codesm_35 \-gencode archcompute_50,codesm_50 \-gencode archcompute_50,codecompute_50
这里贴出我的Makefile.config文件 方便大家参考
然后修改 caffe 目录下的 Makefile 文件
将NVCCFLAGS -ccbin$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS)替换为NVCCFLAGS -D_FORCE_INLINES -ccbin$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)将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文件 方便大家参考
然后修改 /usr/local/cuda/include/host_config.h 文件 :
将#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!改为//#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!
c、接下来开始编译如果前面的配置或安装出错那么编译就会出现各种各样的问题所以前面的步骤一定要细心。
make all -j8 #-j8根据自己电脑配置决定make test -j8sudo make runtest -j8 #测试
如果运行之后出现如图所示结果说明caffe配置成功。
d、安装python接口
首先回到caffe的根目录然后执行安装代码
cd ~/caffesudo apt-get install gfortrancd ./pythonfor req in $(cat requirements.txt); do pip install $req; done
安装完成以后再次回到caffe根目录我们可以执行
cd ..sudo pip install -r python/requirements.txt
编译python接口:
make pycaffe
配置环境变量以便python调用
sudo gedit ~/.bashrc
将export PYTHONPATH/home/caffe/python:$PYTHONPATH添加到文件中
source ~/.bashrc #更新文件
编译 pycaffe 成功后验证一下是否可以在 python 中导入 caffe 包首先进入 python 环境
python
然后导入 caffe :
>>> import caffe
若不报错则表示 caffe 的 python 接口已正确编译若出现的错误请根据提示进行处理由于我安装的比较顺利这里我就不再整理啦。
8、参考博文
ubuntu16.04下caffe安装(GPU版)
Ubuntu16.04安装配置Caffe教程(GPU版)
Ubuntu16.04 Caffe 安装步骤记录超详尽
Ubuntu Caffe 安装步骤记录
Ubuntu 16.04 安装配置Caffe 图文详解
Ubuntu16.04 python3.5 Caffe 安装步骤记录
ubuntu16.04安装caffe详细教程