深度学习工具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 和 ...
随机推荐
- MFC 双缓冲加载背景
首先定义DCmemDc和Bitmap CDC DCmemDc: CBitmap memBitmap; CBitmap *oldBitmap; 然后创建一个适应当前内存的DCmemDc CDC * dc ...
- 快学Scala习题解答—第一章 基础
1 简介 近期对Scala比较感兴趣,买了本<快学Scala>,感觉不错.比<Programming Scala:Tackle Multi-Core Complexity on th ...
- uvalive 6657 GCD XOR
//感觉太长时间没做题 好多基本的能力都丧失了(>_<) 首先大概是这样的,因为gcd(a,b)=c,所以a,b都是c的倍数,所以我们依次枚举a的值为2c 3c 4c......,a xo ...
- linux中ctrl+z、ctrl+d和ctrl+c的区别
ctrl+c和ctrl+z都是中断命令,但是他们的作用却不一样.ctrl+c是强制中断程序的执行,而ctrl+z的是将任务中断,但是此任务并没有结束,他仍然在进程中他只是维持挂起的状态,用户可以使用f ...
- Android 捕捉HOME键
@Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_HO ...
- #include <string.h>
1 _memccpy 2 _memicmp 3 _strlwr 4 _strrev 5 _strset 6 _strupr 7 memccpy 8 memchr 9 memcpy 10 memicmp ...
- Debug, Release区别
Debug, Release区别 Debug附加了很多调试信息,主要用于调试,所以文件大 Release就是经过优化的版本,去除了调试信息,进行了代码优化,所以文件较小,同时速度要快于Debug De ...
- SQL Server 获取服务器信息
最近做了一个小工具,里面涉及到一些取SQL Server 服务器信息的一些东西,找了好久,找到一个不错的,贴出来分享. 系统函数 SERVERPROPERTY ( propertyname ) 包含要 ...
- 取得正在运行的Activity
在main.xml中: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns: ...
- BZOJ 2186 SDOI2008 沙拉公主的困惑 数论
题目大意:给定询问组数T和取模数P,每次询问给定两个整数n和m,求1~(n!)的数中与m!互质的数个个数模P (m<=n) 首先T<=1W,暴力肯定过不去,我们须要预处理一些东西 首先我们 ...