专栏首页机器学习、深度学习Caffe在Ubuntu 14.04 64bit 下的安装------pycaffe 配置

Caffe在Ubuntu 14.04 64bit 下的安装------pycaffe 配置

这里我主要参考 pycaffe 的 安装配置

http://www.linuxidc.com/Linux/2015-07/120449.htm

最近因为各种原因,装过不少次Caffe,安装过程很多坑,为节省新手的时间,特此总结整个安装流程。

关于Ubuntu 版本的选择,建议用14.04这个比较稳定的版本,但是千万不要用麒麟版!!!比原版体验要差很多!!!

Caffe的安装过程,基本采纳 这篇文章 然后稍作改动,跳过大坑。

Caffe + Ubuntu 14.04 64bit + CUDA 6.5 配置说明 http://www.linuxidc.com/Linux/2015-04/116444.htm 1. 安装开发依赖包

sudo apt-get install build-essential sudo apt-get install vim cmake git 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

  1. 安装CUDA

一般电脑都有双显卡:Intel 的集成显卡 + Nvidia 的独立显卡。要想两个显卡同时运行,需要关闭 lightdm 服务。

2.1 到 这里 下载安装包,选Linux x86 下的 Ubuntu 14.04, Local Package Installer,下载下来的文件为

  cuda-repo-ubuntu1404-7-0-local_7.0-28_amd64.deb

2.2 在BIOS设置里选择用Intel显卡来显示或作为主要显示设备

2.3 进入Ubuntu, 按 ctrl+alt+F1 ,登入自己的账号,然后输入以下命令

sudo service lightdm stop

2.4 安装 CUDA,cd 到安装包目录,输入以下命令:

sudo dpkg -i cuda-repo-ubuntu1404-7-0-local_7.0-28_amd64.deb sudo apt-get update sudo apt-get install cuda

安装完后重启电脑。 3. 安装cuDNN

3.1 到这里注册下载,貌似注册验证要花一两天的样子,嫌麻烦的可以直接到Linux公社资源站下载

资源包下载地址:

——————————————分割线——————————————

FTP地址:ftp://ftp1.linuxidc.com

用户名:ftp1.linuxidc.com

密码:www.linuxidc.com

在 2015年LinuxIDC.com\7月\Caffe在Ubuntu 14.04 64bit 下的安装

下载方法见 http://www.linuxidc.com/Linux/2013-10/91140.htm

——————————————分割线——————————————

3.2 完后到下载目录,执行以下命令安装

tar -zxvf cudnn-6.5-linux-x64-v2.tgz cd cudnn-6.5-linux-x64-v2 sudo cp lib* /usr/local/cuda/lib64/ sudo cp cudnn.h /usr/local/cuda/include/

再更新下软连接

cd /usr/local/cuda/lib64/ sudo rm -rf libcudnn.so libcudnn.so.6.5 sudo ln -s libcudnn.so.6.5.48 libcudnn.so.6.5 sudo ln -s libcudnn.so.6.5 libcudnn.so

3.3 设置环境变量

gedit /etc/profile

在打开的文件尾部加上

PATH=/usr/local/cuda/bin:$PATH export PATH

保存后执行以下命令使之生效

source /etc/profile

同时创建以下文件

sudo vim /etc/ld.so.conf.d/cuda.conf

内容是

/usr/local/cuda/lib64

保存后,使之生效

sudo ldconfig

  1. 安装CUDA Sample 及 ATLAS

4.1 Build sample

cd /usr/local/cuda/samples sudo make all -j8

我电脑是八核的,所以make 时候用-j8参数,大家根据情况更改,整个过程有点长,十分钟左右。

4.2 查看驱动是否安装成功

cd bin/x86_64/linux/release ./deviceQuery

出现以下信息则成功

./deviceQuery Starting…

CUDA Device Query (Runtime API) version (CUDART static linking)

Detected 1 CUDA Capable device(s)

Device 0: “GeForce GTX 670” CUDA Driver Version / Runtime Version 6.5 / 6.5 CUDA Capability Major/Minor version number: 3.0 Total amount of global memory: 4095 MBytes (4294246400 bytes) ( 7) Multiprocessors, (192) CUDA Cores/MP: 1344 CUDA Cores GPU Clock rate: 1098 MHz (1.10 GHz) Memory Clock rate: 3105 Mhz Memory Bus Width: 256-bit L2 Cache Size: 524288 bytes Maximum Texture Dimension Size (x,y,z) 1D=(65536), 2D=(65536, 65536), 3D=(4096, 4096, 4096) Maximum Layered 1D Texture Size, (num) layers 1D=(16384), 2048 layers Maximum Layered 2D Texture Size, (num) layers 2D=(16384, 16384), 2048 layers Total amount of constant memory: 65536 bytes Total amount of shared memory per block: 49152 bytes Total number of registers available per block: 65536 Warp size: 32 Maximum number of threads per multiprocessor: 2048 Maximum number of threads per block: 1024 Max dimension size of a thread block (x,y,z): (1024, 1024, 64) Max dimension size of a grid size (x,y,z): (2147483647, 65535, 65535) Maximum memory pitch: 2147483647 bytes Texture alignment: 512 bytes Concurrent copy and kernel execution: Yes with 1 copy engine(s) Run time limit on kernels: Yes Integrated GPU sharing Host Memory: No Support host page-locked memory mapping: Yes Alignment requirement for Surfaces: Yes Device has ECC support: Disabled Device supports Unified Addressing (UVA): Yes Device PCI Bus ID / PCI location ID: 1 / 0 Compute Mode: < Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >

deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 6.5, CUDA Runtime Version = 6.5, NumDevs = 1, Device0 = GeForce GTX 670 Result = PASS

4.3 安装ATLAS

ATLAS是做线性代数运算的,还有俩可以选:一个是Intel 的 MKL,这个要收费,还有一个是OpenBLAS,这个比较麻烦;但是运行效率ATLAS < OpenBLAS < MKL

我就用ATLAS咯:

sudo apt-get install libatlas-base-dev

  1. 安装Caffe需要的Python包

网上介绍用现有的anaconda,我反正不建议,因为路径设置麻烦,很容易出错,而且自己安装很简单也挺快的。

首先需要安装pip

sudo apt-get install python-pip

再下载caffe,我把caffe放在用户目录下

cd git clone https://github.com/BVLC/caffe.git

再转到caffe的python目录,安装scipy

cd caffe/python sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose

最后安装requirement里面的包,需要root权限

sudo su for req in (catrequirements.txt);dopipinstall(cat requirements.txt); do pip install req; done

如果提示报错,一般是缺少必须的包引起的,直接根据提示 pip install 就行了。

安装完后退出root权限

exit

  1. 编译caffe

首先修改配置文件,回到caffe目录

cd ~/caffe cp Makefile.config.example Makefile.config gedit Makefile.config

这里仅需修改两处:

i) 使用cuDNN

# USE_CUDNN := 1

这里去掉#,取消注释为

USE_CUDNN := 1

ii) 修改python包目录,这句话

PYTHON_INCLUDE := /usr/include/python2.7 \   /usr/lib/python2.7/dist-packages/numpy/core/include

改为

PYTHON_INCLUDE := /usr/include/python2.7 \   /usr/local/lib/python2.7/dist-packages/numpy/core/include

因为新安装的python包目录在这里: /usr/local/lib/python2.7/dist-packages/

接下来就好办了,直接make

make all -j4 make test make runtest make pycaffe

这时候cd 到caffe 下的 python 目录,试试caffe 的 python wrapper安装好没有:

python import caffe

如果不报错,那就说明安装好了。

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

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 人生苦短:运行你的第一个 Python 脚本

    Shell 是一个Read-Eval-Print-Loop(REPL),它只接受命令,评估它们并打印输出。

    一墨编程学习
  • Python函数式编程 入门必备

    python 支持函数式编程,提到数式编程,大家首先想到的是多个函数内嵌。的确是这样。不过,要想入门函数式编程,里面涉及到的闭包,是不得不掌握的,换句话说,如果...

    double
  • Python项目包与包之间冲突是什么鬼?这次讲明白点!

    我们经常会遇到这类问题,往往没有注意环境隔离,导致Python项目包与包之间冲突。

    一墨编程学习
  • Python踩坑指南(第一季)

    最近在python开发的过程中,发现了一些比较有意思的问题,确实让自己在开发过程中被恶心了一把,所以开了这个连续的更新博文,之后会持续的按第一第二第三这种版本下...

    sladesal
  • TensorFlow从1到2(十五)(完结)在浏览器做机器学习

    TensorFlow一直努力扩展自己的基础平台环境,除了熟悉的Python,当前的TensorFlow还实现了支持Javascript/C++/Java/Go/...

    俺踏月色而来
  • 用Python对你的微信好友进行一波骚操作

    临近毕业,慢慢的也感伤起来,回想大学这几年,除了技术的成长,最值得庆幸的就是结交了一帮志同道合的好友。后期自己做了公众号,微信好友的数量也越来越多,身边人所扮演...

    统计学家
  • 无人机图片物体检测baseline

    The object category indicates the type of annotated object, (i.e., ignored regio...

    张俊怡
  • 数据科学家常犯的十大编程错误

    数据科学家是“比任何软件工程师都更擅长统计,比任何软件工程师都更擅长软件工程的的统计学家”。许多数据科学家都有统计学背景却缺乏在软件工程方面的经验。我是资深的数...

    AiTechYun
  • 爬取视频数据后我们发现,原来逛B站也能学编程...

    很多人提到B站,首先想到的就会是二次元或者鬼畜,上个月,我们公众号也发表了一篇关于B站鬼畜视频的文章:大数据解读B站火过蔡徐坤的“鬼畜“区巨头们。

    CDA数据分析师
  • 商汤开源最大目标跟踪库PySOT,代码已正式上线!

    前几天 CVer推送一篇:重磅!商汤开源最大目标跟踪库PySOT:含SiamRPN++和SiamMask等算法,介绍了来自商汤科技的STVIR(SenseTim...

    机器之心

扫码关注云+社区

领取腾讯云代金券