深度学习工具caffe具体安装指南
caffe安装指南—吐血整理
前言:
在一台系统环境较好的linux机器上能够非常easy的安装caffe,可是假设系统本身非常旧,又没有GPU的话。安装就太麻烦了,全部都得从头做起,本文档旨在尽可能覆盖安装所要採的坑。
步骤:
一、caffe是主要是C/C++和python编写的。
首先,得须要将gcc,g++安装好,通过yum安装就能够。
二、cuda的安装,假设机器上配置了NVIDIA系列GPU,则须要安装该驱动,推荐安装该驱动至7.0版本号。推荐同一时候安装cuDNN。
安装能够參考http://blog.csdn.net/xuanyuansen/article/details/43152311。centos系统下类似。
三、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文件中的步骤安装就可以。
四、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
五、安装openblas
从openblas官网下下载安装安装包。安装README文件安装就好。make&&make install。可能须要sudo权限。
六、yum依赖安装
參加官方文档http://caffe.berkeleyvision.org/install_yum.html,须要安装上述全部依赖,首先须要安装和系统对应的最新的repository文件,然后运行sudo yum install epel-release,更新网站从而安装最最新的依赖。
七、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
八、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可以找到caffe的依赖。
进入python,import caffe。假设成功则说明一切ok,否则检查路径从头再来,甚至须要又一次编译python。
PS:
出问题可一直google,bless。。!
深度学习工具caffe具体安装指南的更多相关文章
- 深度学习框架caffe/CNTK/Tensorflow/Theano/Torch的对比
在单GPU下,所有这些工具集都调用cuDNN,因此只要外层的计算或者内存分配差异不大其性能表现都差不多. Caffe: 1)主流工业级深度学习工具,具有出色的卷积神经网络实现.在计算机视觉领域Caff ...
- 基于OpenCL的深度学习工具:AMD MLP及其使用详解
基于OpenCL的深度学习工具:AMD MLP及其使用详解 http://www.csdn.net/article/2015-08-05/2825390 发表于2015-08-05 16:33| 59 ...
- 常用深度学习框——Caffe/ TensorFlow / Keras/ PyTorch/MXNet
常用深度学习框--Caffe/ TensorFlow / Keras/ PyTorch/MXNet 一.概述 近几年来,深度学习的研究和应用的热潮持续高涨,各种开源深度学习框架层出不穷,包括Tenso ...
- 深度学习框架Caffe的编译安装
深度学习框架caffe特点,富有表达性.快速.模块化.下面介绍caffe如何在Ubuntu上编译安装. 1. 前提条件 安装依赖的软件包: CUDA 用来使用GPU模式计算. 建议使用 7.0 以上最 ...
- 深度学习框架-caffe安装-环境[Mac OSX 10.12]
深度学习框架-caffe安装 [Mac OSX 10.12] [参考资源] 1.英文原文:(使用GPU) [http://hoondy.com/2015/04/03/how-to-install-ca ...
- 深度学习框架-caffe安装-Mac OSX 10.12
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 } p.p2 ...
- [深度学习工具]·极简安装Dlib人脸识别库
[深度学习工具]·极简安装Dlib人脸识别库 Dlib介绍 Dlib是一个现代化的C ++工具箱,其中包含用于在C ++中创建复杂软件以解决实际问题的机器学习算法和工具.它广泛应用于工业界和学术界,包 ...
- deep learning...深入学习深度学习 --工具篇
Caffe( http://caffe.berkeleyvision.org/ )是一个清晰而高效的深度学习框架,其作者是博士毕业于UC Berkeley的贾扬清( http://daggerfs.c ...
- Windows10 利用 Docker 配置 TensofFlow 深度学习工具
TensorFlow 这个不用多介绍了吧,大家都知道,Google的开源深度学习软件库,官网点这里:https://www.tensorflow.org/ 当然这个工具官方支持装在 Ubuntu 和 ...
随机推荐
- QFN和QFP的区别
QFN(quad flat non-leaded package)四侧无引脚扁平封装.多称为LCC. 陶瓷QFN :基本上都是LCC 标记. 塑料QFN 也称为塑料LCC.PCLC.P-LCC 等. ...
- 简单RTP发送类c++实现
我之前编译了jrtplib 3.9.1,并且在项目中使用,结果发现在用这个库时,程序体积有增加了300多K,感觉实在是有点笨重,我无法就是用来发送rtp包而已.想想还是自己重新实现一个简单的类用用拉倒 ...
- egret-android-support-gradle版
从3.1.3开始,Egret已经实现了Gradle构建!所以下文你爱看不看! 迟钝的Egret从3.1.3版本才开始支持Gradle,而笔者早在1.6.x版本就已经支持了,说明什么?说明Egret在某 ...
- get the first and last collection item in Magento
$product_collection->getFirstItem() $product_collection->getLastItem()
- UIScrollview不全屏,解决方案
self.edgesForExtendedLayout = UIRectEdgeNone;
- Ignatius and the Princess II(全排列)
Ignatius and the Princess II Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K ( ...
- oracle实例名,数据库名,服务名等概念差别与联系
数据库名.实例名.数据库域名.全局数据库名.服务名 这是几个令非常多刚開始学习的人easy混淆的概念.相信非常多刚開始学习的人都与我一样被标题上这些个概念搞得一头雾水.我们如今就来把它们弄个明确. 一 ...
- 《Qt编程的艺术》——8.2 显示目录层次
现在我们准备通过创建一个小程序来获得关于InterView的实践经验,使用QDirModel和拿来就用的view,来在四个不同的view中显示主目录,如图8.5所示.在代码里,除了例行公事先实例化一个 ...
- 六行代码获取本地IP
uses IdIPWatch; function GetNativeIP: String; var IdIPWatch: TIdIPWatch; begin IdIPWatch := TIdIPWat ...
- DevExpress.XtraCharts.chartControl
private Dictionary<string, double> chartPieDataDic = new Dictionary<string, double>(); p ...