Caffe (a framework for convolutional neural network algorithms) 配置过程

1. 准备

首先在项目主页上下载程序包: https://github.com/BVLC/caffe

此外, 由于Caffe中的矩阵运算基于Intel MKL库, 所以还需要下载Intel MKL软件包的Linux版本。 这个软件有Non-Commercial License的版本, 需要申请, 很容易。 申请地址为: http://software.intel.com/en-us/non-commercial-software-development

申请后会给你的邮箱发一个序列号, 以及软件下载地址。

2. 配置环境

2.1 安装显卡驱动

首先需要安装NVIDIA驱动, 以及Cuda 5.5 (这里下载)。下载完成后是两个.run文件

ctrl+alt+F1 进入tty,首先关掉lightdm

sudo stop lightdm

然后用sudo sh XXX.run 安装驱动, 然后再安装cuda。一般而言cuda包含了驱动, 如果单独安装了更新版本的驱动的话, 那么在安装cuda时, 会问你是否安装驱动,选择不要安装。

装好后sudo start lightdm, 最后ctrl + alt + F7 推出tty。

2.2 安装MKL

解压后运行

sudo ./install_GUI.sh

会像windows一样弹出一个安装界面,按提示安装即可。

然后按照Caffe的说明安装需要的库

sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost1.48-dev

 

此外, 作者默认你已经配置好了OpenCV环境。可以在下述地址直接下载一个脚本来安装。但是在执行该脚本时, 记得先安装cmake

https://github.com/jayrambhia/Install-OpenCV

2.4 Google Logging Library (glog)

还需要下载一个google logging library: 下载地址

下载完后用如下命令解压并安装

tar zxvf glog-0.3.3.tar.gz
./configure
make
sudo make install

2.3 安装OpenCV

3. 安装Caffe

解压源程序, 查看makefile.config中的路径是否都正确, 然后运行如下命令

make all

 

这时候可能会出现如下错误

/usr/bin/ld: cannot find -lboost_system

嗯, 这个还有一个依赖项作者忘了提到了, 所以还需要安装libboost-dev。 用新立得安装或者下列命令都可以

sudo apt-get install libboost-all-dev

这样再次make all就没问题了。

4. 运行MNIST例子

首先进入data文件夹, 然后按照作者说明执行如下命令来下载和准备数据

cd $CAFFE_ROOT/data
./get_mnist.sh

成功下载后应该多了两个文件

CAFFE_ROOT/data/mnist-train-leveldb,

CAFFE_ROOT/data/mnist-test-leveldb.

然后训练网络

cd $CAFFE_ROOT/data
GLOG_logtostderr=1 ../examples/train_net.bin lenet_solver.prototxt

这时报了个错说找不到libmkl_rt.so。 可是确实已经装上了。于是将intel MKL的库放入共享库路径里

export LD_LIBRARY_PATH = /opt/intel/mkl/lib/intel64:$LD_LIBRARY_PATH

笔者是在 /etc/ld.so.conf.d/ 文件夹下增加了一个文件命名为intel_mkl_settings.conf。 然后在里面添加MKL库路径

/opt/intel/mkl/lib/intel64

 

此时再次执行

../examples/train_net.bin lenet_solver.prototxt

就可以成功训练啦~~

 

Logo

更多推荐