您的位置:首页 > Web前端

ubuntu 14.04上配置无GPU的Caffe(A卡机适用)

2015-03-03 03:17 1071 查看
Notice:这篇配置文档在ubuntu14.04(假设是新安装的系统),目的是在cpu上运行Caffe,所以跳过,nvidia驱动等安装过程。Caffe是可以在没有nvidia
gpu的环境下train和predict的。

1.安装build-essential,都是一些开发基本必须的软件包。

:sudo
apt-get install build-essential

2.安装数学矩阵计算包ATLAS,这里还有MKL和OpenBLAS可选,但ATLAS安装最为简便
:sudo
apt-get install libatlas-base-dev

3.安装CUDA和MATLAB
(1)复制以下链接到浏览器
   developer.download.nvidia.com/compute/cuda/6_5/rel/installers/cuda_6.5.14_linux_64.run
       下载run文件
(2)将下载得到的.run文件解压成三个文件,
分别为

CUDA安装包:
cuda-linux64-rel-6.5.14-18749181.run

NVIDIA驱动:
NVIDIA-Linux-x86_64-340.29.run

SAMPLE包:
cuda-samples-linux-6.5.14-18745345.run

(3)通过下列命令安装CUDA,
按照说明一步一步安装至完成.
        sudo
./cuda-linux64-rel-6.5.14-18749181.run
 (4)
添加环境变量
       安装完成后需要在/etc/profile中添加环境变量,
在文件最后添加:
      PATH=/usr/local/cuda-6.5/bin:$PATH
      export PATH
      保存后,
执行下列命令, 使环境变量立即生效
      source
/etc/profile
 (5)添加lib库路径
      在
/etc/ld.so.conf.d/加入文件 cuda.conf, 内容如下
      /usr/local/cuda-6.5/lib64
      执行下列命令使之立刻生效
       sudo
ldconfig

MATLAB
,自行安装,默认路径就好。

4.安装opencv
  
这个尽量不要手动安装,
Github上有人已经写好了完整的安装脚本:https://github.com/jayrambhia/Install-OpenCV
下载该脚本,进入Ubuntu/2.4
目录, 给所有shell脚本加上可执行权限
chmod
+x *.sh
然后安装最新版本
(当前为2.4.9)
sudo
./opencv2_4_9.sh
脚本会自动安装依赖项,下载安装包,编译并安装OpenCV。整个过程大概半小时左右。

注意,中途可能会报错
opencv-2.4.9/modules/gpu/src/nvidia/core/NCVPixelOperations.hpp(51):
error: a storage class is not allowed in
an explicit specialization
解决方法在此:http://code.opencv.org/issues/3814
 下载 NCVPixelOperations.hpp
替换掉opencv2.4.9内的文件, 重新build。

5.安装其他依赖包

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

确保全部安装成功,都是必须的。

6.安装python环境,即使你用matlab运行caffe,因为caffe的计算需要调用python代码。

sudo
apt-get install python-dev python-pip

7.下载并编译Caffe
http://caffe.berkeleyvision.org/installation.html  下载Caffe包,caffe-master.zip
解压到当前文件夹
unzip caffe-master.zip

进入caffe文件夹
cd ./caffe-master
通过cp生成Makefile
cp Makefile.config.example Makefile.config
修改Makefile.config
   (1)去除注释CPU_ONLY
:= 1
  
c65e
 (2)修改对应的prefix,blas,matlab_dir,python_include,cuda_dir,默认的是不用改的,
    除非你    安装的时候改了安装路径。
完成所有设置后,开始编译
make
all -j4 运行结果如下:



make test
运行结果如下:



make runtest 运行结果如下:



-j4
是开启cpu的4个线程同时编译,加快速度  

8.
安装好了测试是否可以跑demo。

主要参考官网的
Training MNIST with Caffe

下载数据集

cd
$CAFFE_ROOT/data/mnist
./get_mnist.sh
cd $CAFFE_ROOT/examples/lenet
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
./create_mnist.sh

运行完上述命令后,应该会得到两个数据集,mnist-train-leveldb/,
和 mnist-test-leveldb/.
最终的model,

切换到CPU模式

由于服务器没有安装显卡,只能使用CPU训练。切换到CPU模式非常简单,只需要在lenet_solver.prototxt中修改一行:
#
solver mode: 0 for CPU and 1 for GP
solver_mode:
0

开始训练

./train_lenet.sh

经过一段时间运行,训练完成!最终的model,会存为一个二进制的protobuf文件,lenet_iter_10000.

感谢参考文献的作者:
1.http://caffe.berkeleyvision.org/installation.html
2.http://www.cnblogs.com/platero/p/3993877.html
3.http://cn.soulmachine.me/blog/20140403/

后记:在安装过程中,因为个人电脑,系统的差异,难免出现问题。这个时候google,基本都有现成的解决方案在上面,当然基本都是英文,以github
caffe讨论区和stack overflow为主。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息