深度学习工具caffe详细安装指南

在一台系统环境较好的linux机器上可以很容易的安装caffe,但是如果系统本身很旧,又没有GPU的话,安装就太麻烦了,所有都得从头做起,本文档旨在尽可能覆盖安装所要采的坑

步骤

01

caffe是主要是C/C++和python编写的。首先,得需要将gcc,g++安装好,通过yum安装就可以。

02

cuda的安装,如果机器上配置了NVIDIA系列GPU,则需要安装该驱动,推荐安装该驱动至7.0版本,推荐同时安装cuDNN。安装可以参考http://blog.csdn.net/xuanyuansen/article/details/43152311,centos系统下类似。

03

caffe的layer开发以google的protobuf为格式,需要安装该依赖,推荐安装2.6.1版本(gcc版本推荐4.4.7),下载地址为https://github.com/google/protobuf/releases/download/v2.6.1/protobuf-2.6.1.tar.gz,按照README文件里的步骤安装即可。

04

python安装,caffe提供了python的接口,可以用python进行相关开发,而且可以在ipython-notebook里面画出网络结构,非常方便。为了使用这些功能,推荐在目标机器上编译安装python2.7.10,源码下载地址见python官网,为了多用户环境考虑,强烈建议安装目标用户自己的python,可以在自己用户的home下建立usr文件夹,解压源码后加如下配置命令:

./configure --enable-shared \

--prefix=${HOME}/usr/local \

LDFLAGS=“-Wl,—rpath=${HOME}/usr/local/lib”

make && make install

即需要python的lib文件可以被其他程序共享,rpath后面就是自已的路径。

安装好后需要配置目标用户下的bashrc文件,加入如下行:

PATH=/home/lianhua/usr/local/bin:$PATH

然后source bashrc文件,如果进入python版本正确则安装成功,否则检查路径重新编译。

python安装好后需要安装pip,在官网上下载get-pip.py执行即可,然后安装相应版本的protobuf,同时安装caffe的官方说明安装其他的依赖:

for req in $(cat requirements.txt); do pip install $req; done

05

安装openblas

从openblas官网下下载安装安装包,安装README文件安装就好,make&&make install,可能需要sudo权限。

06

yum依赖安装

参加官方文档http://caffe.berkeleyvision.org/install_yum.html,需要安装上述所有依赖,首先需要安装和系统相应的最新的repository文件,然后执行sudo yum install epel-release,更新站点从而安装最最新的依赖。

07

opencv安装

前置需要安装较新版本的cmake,去官网下载安装即可。

opencv安装有两种方式:

1、下载源码包安装,请参考

http://www.javieriparraguirre.net/installing-opencv-debian/(依赖的安装,centos类似)

http://www.jianshu.com/p/a41da779f763(opencv安装)

2、利用自动脚本安装

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

08

caffe安装配置

到此处终于可以进入正题,进行caffe的安装,如果上述安装过程顺利的话,caffe的安装也就没有太大问题了。关键在于正确配置Makefile.config文件,需要修改如下配置至相应的路径(参照配置文件的注释,疑惑的地方google即可):

1、CUDA_DIR

2、BLAS := open,BLAS_INCLUDE :=,BLAS_LIB :

3、PYTHON_INCLUDE :=

注意此处需要添加python下numpy的路径

4、PYTHON_LIB :=

5、WITH_PYTHON_LAYER := 1

注意此处需要将python的hdf5安装路径添加到:

INCLUDE_DIRS := $(PYTHON_INCLUDE)和LIBRARY_DIRS := $(PYTHON_LIB)

上述配置文件修改好后,回到caffe的根目录,执行make all -j4,注意此处进程不要过多,否则会出现诡异的错误;

make test -j4

make runtest -j4

至此caffe主程序编译完毕。

下面编译pycaffe,至执行

make pycaffe

make distribute

执行完后修改bashrc文件,添加

PYTHONPATH=${HOME}/caffe/distribute/python:$PYTHONPATH

LD_LIBRARY_PATH=${HOME}/caffe/build/lib:$LD_LIBRARY_PATH

进入python,import caffe,如果成功则说明一切ok,否则检查路径从头再来,甚至需要重新编译python。

原文发布于微信公众号 - 人工智能LeadAI(atleadai)

原文发表时间:2017-09-20

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏三木的博客

内核源码编译

编译内核的目的在于把纷繁复杂的内核源码编译成一个可执行的镜像文件。当然,内核功能复杂,并不是所有的 功能都需要用到,所以,我们在使用make对其编译前,要做一件...

1727
来自专栏吴伟祥

Linux软件包管理(四) 原

包全名:操作的包是没有安装的软件包时, 使用包全名。而且要注意路径      安装 升级 包名:操作已经安装的软件包时,使用包名。 是搜索/var/lib/r...

682
来自专栏Flutter入门到实战

Flutter从配置安装到填坑指南详解

在 Google I/O ’17 上,Google 向我们介绍了 Flutter —— 一款新的用于创建移动应用的开源库。

1554
来自专栏FreeBuf

利用白文件打造超级渗透测试后门程序的思路分享

计算机中的后门程序,品种多样。有Telnet、IFEO 、WebShell、注册表、Radmin等。大部分后门都会在一段时间内被AV检测到,并清除。通过修改木马...

751
来自专栏吴伟祥

eclipse项目导入 原

  File--> New -->Project from Existing Sources。。。(!)

856
来自专栏Ryan Miao

Ubuntu安装Java8和Java9

前言 系统:Ubuntu 16.04 软件: Java8, Java9 Tips: Java 9 的代码由于提供了新特性,所以有些代码并不支持向后兼容。也就...

3188
来自专栏IT可乐

Linux系列教程(十)——Linux文本编辑器vim

  通过前面几篇博客我们终于结束了Linux常用命令的介绍,Linux常用命令主要包括以下:   ①、Linux文件和目录处理命令   ②、Linux链接命令和...

1878
来自专栏程序员的SOD蜜

Vue.js 入门指南之“前传”(含sublime text 3 配置) 1,下载安装Node.js2,配置Vue环境3,Vue初探4,配置sublime Text

题记:关注Vue.js 很久了,但就是没有动手写过一行代码,今天准备入手,却发现自己比菜鸟还菜,于是四方寻找大牛指点,才终于找到了入门的“入门”,就算是“入门指...

2949
来自专栏张伟博客

百度分享工具不支持htts的解决方法

867
来自专栏生信技能树

生信菜鸟团博客2周年精选文章集(2)wordpress的代码高亮

能做到代码高亮的插件实在是太多了,我这里随便选择一个。首先在wordpress的插件里面查找SyntaxHighlighter Evolved这个插件。 ? 下...

2517

扫描关注云+社区