作为小码农的我,昨天就在装这个东东了,主要參考第一篇博文,可是过程发现非常多问题。经过反重复复,千锤百炼。最终柳暗花明。我把这个caffe给搞定了,是故,我公布出来。后之来者,欲将有感于斯文~
第一部分:nVidia驱动和CUDA Toolkit的安装和调试
这里以CUDA 7.0为例。一、CUDA Repository
获取CUDA安装包,安装包请自行去NVidia官网下载。
二、CUDA Toolkit
三、Environment Variables
第二部分 Python安装和调试
1. 安装IDE执行环境
选择一个适合你的IDE执行环境,我是用的是Spyder。由于它内置了 iPython 环境,Caffe有不少的程序是基于 iPython 环境完毕的。安装方法非常easy,直接在Ubuntu软件中心搜索“spyder”就可以安装。
2. iPython NoteBook 安装
另外一个比較推荐的方法是使用iPyhthon NoteBook(基于浏览器的Python IDE),特别是适合须要用Python做教程的老师们。能够直接导出.py, .ipynb, html格式,安装过程例如以下:
启动(自己主动打开浏览器):
$ ipython notebook
一个简单的使用iPython NoteBook生成的html的样例:examples_notebook.html example_notebook.ipynb
3. 配置和编译pycaffe
第三部分 Matlab安装和调试
1. 降级安装gcc/g++版本号为4.7.x
(1). 下载gcc/g++ 4.7.x
(2). 链接gcc/g++实现降级
2. 暴力引用新版本号GLIBCXX_3.4.20
通过命令“strings /usr/local/MATLAB/R2014a/sys/os/glnxa64/libstdc++.so.6 | grep GLIBCXX_” 能够看一下。是否已经成功包括了GLIBCXX_3.4.20。假设已经存在,基本上就成功了。
6.编译Matlab用到的caffe文件(见第五部分)
第四部分 Caffe的安装和測试
在caffe的github上下载安装包,解压得到caffe-master目录。
一、安装BLAS
这里能够选择(ATLAS,MKL或者OpenBLAS)。这里使用MKL。
二、MKL与CUDA的环境设置
1. 新建intel_mkl.conf, 并编辑之:
/opt/intel/lib/intel64
/opt/intel/mkl/lib/intel64
2. 新建cuda.conf,并编辑之:
/usr/local/cuda/lib64
/lib
3. 完毕lib文件的链接操作。运行:
-
Create a temporary directory, which we denote as <cmake_binary_dir>, where you want to put the generated Makefiles, project files as well the object files and output binaries.
-
Enter the <cmake_binary_dir> and type
For example
-
Enter the created temporary directory (<cmake_binary_dir>) and proceed with:
-
配置openCV參数设置
sudo gedit /etc/ld.so.conf.d/opencv.conf
sudo ldconfig
sudo gedit /etc/bash.bashrc 增加:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
至此。OpenCV安装配置完成
四、安装其它依赖项
1. Google Logging Library(glog)。下载地址:https://code.google.com/p/google-glog/,然后解压安装:
假设没有权限就chmod a+x glog-0.3.3 -R , 或者索性 chmod 777 glog-0.3.3 -R , 装完之后,这个目录就能够kill了。
2. 其它依赖项。确保都成功
五、安装Caffe并測试
1. 安装pycaffe必须的一些依赖项:
2. 安装配置nVidia cuDNN 加速Caffe模型运算
a. 安装cuDNN
该改版本号caffe-master默认支持cudnn-6.5-linux-x64-v2,安装前请去先官网下载最新的cuDNN。建议安装v3版本号,把一下对应6.5改成7.0就可以。方法一样。
b. 链接cuDNN的库文件
3. 从github上下载caffe,为Caffe-master的目录。cd进去,生成Makefile.config配置文件。运行:
4. 配置Makefile.config文件(仅列出改动部分)
sudo gedit Makefile.config
a. 启用CUDNN,去掉"#"(眼下caffe-master仍然仅仅支持R1版本号)
USE_CUDNN := 1
b. 启用GPU,加入凝视"#"
# CPU_ONLY := 1
c. 配置一些引用文件(添加部分主要是解决新版本号下,HDF5的路径问题)
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/lib/x86_64-linux-gnu/hdf5/serial/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu/hdf5/serial
温馨提示:ctr+f搜索在后面加入多余的内容
d. 启用Intel Parallel Studio XE 2015 Professional Edition for C++ Linux
BLAS := mkl
e. 配置路径,实现caffe对Python和Matlab接口的支持
PYTHON_LIB := /usr/local/lib
MATLAB_DIR := /usr/local/MATLAB/R2014a
f. 启用python_layer
WITH_PYTHON_LAYER :=1
5. 配置Makefile文件(实现对OpenCV 3.x的支持)
sudo gedit Makefile
查找“Derive include and lib directories”一节,改动“LIBRARIES +=”的最后一行,添加opencv_imgcodecs
opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs
6. 编译caffe-master!!!
一定要重新启动电脑,重新启动电脑。由于显卡驱动装完须要重新启动才干生效,本人在这里搞了两次。后来才发现问题的本质,哎。"-j8"是使用CPU的多核进行编译。能够极大地加速编译的速度,建议使用。
编译Python和Matlab用到的caffe文件
六、使用MNIST数据集进行測试
cd进入caffe-master文件夹下
1. 数据预处理
2. 重建lmdb文件。Caffe支持三种数据格式输入网络。包含Image(.jpg, .png等),leveldb。lmdb,依据自己须要选择不同输入吧。
生成mnist-train-lmdb 和 mnist-train-lmdb目录。这里包括了lmdb格式的数据集
3. 训练mnist
至此,Caffe安装的全部步骤完结,以下是一组简单的数据对照,实验来源于MNIST数据集,主要是考察一下不同系统下CPU和GPU的性能。能够看到明显的区别了。
本人在配置caffe环境的过程中,參考了下面博客,特此说明:
【1】http://ouxinyu.github.io/Blogs/20140723001.htmlCaffe + Ubuntu 15.04 + CUDA 7.0 新手安装配置指南
【2】http://blog.csdn.net/yaoxingfu72/article/details/45363097caffe+cuda7.0+opencv3.0.0+mkl ubuntu14.04配置
【3】http://docs.opencv.org/doc/tutorials/introduction/linux_install/linux_install.html#linux-installation