(图文并茂)深度学习实战(1):ubuantu下安装和配置caffe框架(cpu版)

释放双眼,带上耳机,听听看~!

最新的linux系统下使用Caffe(一)caffe安装篇

了解到的环境:Ubuntu16.04 + CPU(Only)+ Inter显卡

1. 查看本机电脑配置与电脑的GPU版本:

系统:Ubuntu 16.04 命令:

lspci | grep -i vga

也可以使用 lshw 命令来获取上述信息:
命令:

lshw -C display

类似如下输出:
显示为:VGA compatible controller: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller (rev 06)

2.显卡驱动名称:
命令:

sudo lshw -c video | grep configuration

上图中可以看到输出的显卡驱动名称有两条,其中一条为 driver=i915,存在于本地文件中。

3.检查显卡驱动:modinfo i915
发现显卡是因特尔的显卡,而不是英伟达的显卡程序。

|

2.下载显卡驱动:

a. 如果你是英伟达显卡,可以使用NVIDIA的GPU来跑cafe。
官网:http://www.nvidia.cn/object/unix-cn.html
去显卡官网根据自己的显卡版本而下载对应的显卡驱动。
安装参考地址:http://www.linuxidc.com/Linux/2016-12/138870.htm
b. 如果你是英特尔显卡,就使用intel的CPU跑caffe的,需要确保你自己的显卡驱动是安装好的。

3.安装依赖库:

下面开始正文,安装caffe开始。 打终端切换到root权限下:


1
2
3
1sudo su root
2
3

然后依次输入安装:


1
2
3
4
5
6
7
8
9
1apt-get install libprotobuf-dev  
2apt-get install libleveldb-dev  
3apt-get install libsnappy-dev  
4apt-get install libopencv-dev  
5apt-get install libhdf5-serial-dev  
6apt-get install protobuf-compiler  
7apt-get install --no-install-recommends libboost-all-dev  
8
9

,提示输入y进行确认安装。

由于我只有CPU,所以跳过CUDA相关的安装;

接下来是BLAS:


1
2
3
1apt-get install libatlas-base-dev  
2
3

使用默认Python来建立pycaffe接口,需要安装:


1
2
3
1apt-get install python-dev  
2
3

一些兼容性依赖库:


1
2
3
4
5
1apt-get install libgflags-dev  
2apt-get install libgoogle-glog-dev  
3apt-get install liblmdb-dev  
4
5

4.克隆(下载)Caffe源码:

没有安装git的话需要先装一下git: 安装命令:

apt-get install git

下载Caffe源码:
命令:

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

如图:

配置Caffe的Python接口,

终端切换到caffe下的python目录下,

(图文并茂)深度学习实战(1):ubuantu下安装和配置caffe框架(cpu版)输入以下命令下载python依赖库(先安装pip):


1
2
3
4
1apt-get install python-pip  
2for req in $(cat requirements.txt); do pip install $req; done  
3
4

5.修改配置文件Makefile.config:

终端进入到caffe目录下: 拷贝一份Makefile.config.example并重命名成Makefile.config,

命令:


1
2
3
1cp Makefile.config.example Makefile.config  
2
3

如图:

修改该配置文件:
命令:


1
2
3
1sudo gedit Makefile.config
2
3

因为这里没有配置GPU,所以去掉CPU_ONLY := 1前面的注释;

注意!!!由于Ubuntu16.04文件结构的变化,#Whatever else you find you need goes here.处要改成下面这样:
这里也是很多以前老版本的教程中没改正的地方。


1
2
3
4
5
1# Whatever else you find you need goes here.
2INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/
3LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu/hdf5/serial  
4
5

还需要注意的就是:如果你在make pycaffe的时候,
报错和numpy相关,则重新打开Makefile.config目录,然后在自己电脑上查找一下numpy的安装目录,需要保证numpy的路径是对应上:


1
2
3
4
5
1# We need to be able to find Python.h and numpy/arrayobject.h.
2PYTHON_INCLUDE := /usr/include/python2.7 \
3       /usr/lib/python2.7/dist-packages/numpy/core/include
4
5

对应本地:

6.编译caffe源代码:

完成修改文件以后就可以开始编译: 终端保持在root权限下,依次执行如下命令:


1
2
3
4
5
6
1make pycaffe  
2make all  
3make test  
4make runtest  
5
6

make默认单核运算,如果想加快速度,我这里是4核,可以在每条命令后面加上-j4,如果有报错,建议最好
make clean重新开始。

如果所有测试都通过,则说明安装好了。
效果图:
make pycaffe

Make all:

Make test:

make默认单核运算,如果想加快速度,可以在命令后加上-jx

电脑是几核,就可以在每条命令后面加上-jx,
比如:make all -j8

注意,在编译环节,如果一旦有报错,最好make clean,然后再重新开始编译。
如果所有测试都通过,则说明安装好了。
Make runtest:

7.测试Python接口:

终端进入到caffe/python文件目录下, 输入以下命令:


1
2
3
1export PYTHONPATH=/path/to/caffe/python:$PYTHONPATH  
2
3

然后在输入命令:


1
2
3
4
1python
2import caffe
3
4

如图:
如果没有报错,证明安装成功。

但是上面路径设置方法,是一旦关闭终端或者打开新终端则失效。

下面直接把环境放到配置文件中,可以
永久有效。
命令:


1
2
3
1sudo gedit ~/.bashrc
2
3

打开编辑,在最后一行加入语句:


1
2
3
1export PYTHONPATH=/你的路径/caffe/python:$PYTHONPATH
2
3

保存退出。

然后继续在终端下输入:

source ~/.bashrc

使环境变量生效,然后关闭终端,去进入到python环境下,测试import caffe,没有报错则永久设置成功。

如图:


上面就是安装整个caffe的过程。

补充:

1.安装pip指令:

sudo apt install python-pip

2.查看caffe配置的是哪个版本的python接口:

由于linux自带安装的有python2.7和Python3.5两个版本。
配置caffe的Python接口以后,有人不知道是哪个版本生效了?

命令:

import sys
sys.path

可以看见python2下安装的各种库。
然后再打开caffe文件夹下的makefile.config 里面可以看到是python2.7生效,所以对应的应该是python2.7版本。

3.import caffe失败:

参考第5步.配置环境变量那里,需要确保路径都是添加了,而且是正确的。

4.安装numpy命令:

python3的:sudo apt-get install python3-numpy
python2的:sudo apt-get install python-numpy

8、参考文献

官网教程,附上链接:

https://github.com/BVLC/caffe/wiki/Ubuntu-16.04-or-15.10-Installation-Guide


You got a dream, you gotta protect it.
如果你有梦想的话,就要去捍卫它 。 ——《当幸福来敲门》

给TA打赏
共{{data.count}}人
人已打赏
安全运维

基于spring boot和mongodb打造一套完整的权限架构(二)【MAVEN依赖以及相应配置】

2021-12-11 11:36:11

安全运维

Ubuntu上NFS的安装配置

2021-12-19 17:36:11

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索