您的位置:首页 > Web前端

Caffe学习1-Ubuntu下的Caffe的搭建

2016-05-18 23:16 295 查看

Ubuntu下的Caffe的搭建

Ubuntu下的Caffe的搭建
安装英伟达驱动

安装CUDA

安装OpenBLAS

安装Boost

安装OpenCV

安装protobufgloggflags

安装IO库hdf5leveldbsnappylmdb

安装Anaconda Python

安装HDF5

配置并编译Caffe

后记

参考来源:https://github.com/tiangolo/caffe/blob/ubuntu-tutorial-b/docs/install_apt2.md

本教程是在Ubuntu14.04下的(因为CUDA官方目前在Ubuntu64bit下支持的只有14.04和15.04两个版本,如果是15.04的按照这个教程应该也是可以的,主要是因为CUDA官方目前只支持这两个版本,小编曾经试过在16.x的版本安装,结果是惨烈的)

安装Git:

sudo apt-get install git

安装英伟达驱动

Caffe是建立在CUDA之上的,而只有英伟达才支持CUDA,所以,如果读者您的显卡不是英伟达的,可能就要三思咯…

就算是英伟达显卡,也有可能不支持CUDA的,如果您的显卡不在官方提供的列表里,那也只能说很遗憾了,下面是官方提供的列表:

添加PPA源

sudo add-apt-repository ppa:graphics-drivers/ppa

sudo apt-get update

安装英伟达显卡,小编推荐安装352的,是目前最稳定的版本

sudo apt-get install nvidia-352

还有另外一种方法也可以安装驱动,但是这种方法比较麻烦,小编强烈不推荐用这种(小编曾在这种方法栽过跟头):
注意,如果上面的方法安装成功了,请无视此部分
首先,读者需要去英伟达官网下载符合您显卡的驱动程序: http://www.geforce.com/drivers 接着,请把下载到的xx.run文件放到一个英文路径下。并运行下面命令
chmod +x xx.run
接着如果读者试着安装该文件的话,不出意味,一定会失败,错误提示应该如下:
ERROR: You appear to be running an X server; ......
所以要你退出X server...
好吧,退出就退出吧...
那么怎么退出X server?(此时建议用手机拍下,因为即将暂别)
首先,按住ctrl+alt+F1切换到tty1窗口,
然后输入
service lightdm stop
或者
service gdm stop
这样就退出了X server,然而这时候有中文路径的读者会发现,命令行里此时不能输中文,也看不到中文(知道为什么要把xx.run放到英文路径了吧)
然后找到xx.run的目录,输入下面命令
sudo ./xx.run
然后就开始安装了,如无意外,这时候应该会安装得很顺利。


安装成功后重启

sudo shutdown -r now

检查是否安装成功

cat /proc/driver/nvidia/version

安装CUDA

记得再记得,CUDA一定要有英伟达显卡!

首先读者需要去英伟达开发者网站注册一个账号,因为后面下载软件需要用到账号(其中还要填调查问卷,读者看着填吧)

注册 https://developer.nvidia.com/user

然后是要下载CUDA的deb,这里推荐的是网络版的deb,本地版的下载有点龟速,不到万不得已都不要用.run的(否则你需要退出X server,并且运气不好的话还会有数不完的问题等着你)

然后定位到下载的目录,安装CUDA,在update的时候,它可能会提示一些更新失败,小编忽略这些仍是能成功装cuda的

sudo dpkg -i xx.deb

sudo apt-get update

sudo apt-get install cuda

把CUDA加入到当前用户的环境变量里

echo ‘export PATH=/usr/local/cuda/bin:$PATH’ >> ~/.bashrc

echo ‘export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH’ >> ~/.bashrc

关闭终端,重新打开然后检查CUDA是否安装成功。检查方式是通过安装示例。

cuda-install-samples-7.0.sh ~/cuda-samples

cd ~/cuda-samples/NVIDIA*Samples

make -j $(($(nproc) + 1))

重启计算机,之后运行下面指令来判断CUDA是否安装无误

bin/x86_64/linux/release/deviceQuery

bin/x86_64/linux/release/bandwidthTest

安装OpenBLAS

接下来创建一个存放git代码的文件夹,这个文件夹之后都会用上,读者可知自行考虑

mkdir ~/code

克隆OpenBLAS

git clone https://github.com/xianyi/OpenBLAS.git

编译OpenBLAS

cd OpenBLAS

make -j $(($(nproc) + 1))

安装OpenBLAS

sudo make PREFIX=/usr/local install

安装Boost

sudo apt-get install libboost-all-dev

安装OpenCV

sudo apt-get install libopencv-dev

安装protobuf,glog,gflags

sudo apt-get install libprotobuf-dev libgoogle-glog-dev libgflags-dev protobuf-compiler

安装IO库:hdf5,leveldb,snappy,lmdb

sudo apt-get install libhdf5-serial-dev libleveldb-dev libsnappy-dev liblmdb-dev

安装Anaconda Python

Anaconda是个很好的工具,里面包含了大量依赖和软件(比如ipython),可以省下我们在安装python相关的极大多数时间。下载地址

http://continuum.io/downloads

定位代Anaconda的下载目录,并安装,如果有问你是否添加到路径,选yes就对了

bash Anaconda*.sh

退出终端并重新打开

安装HDF5

conda install hdf5

配置并编译Caffe

克隆Caffe

cd ~/code

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

创建Makefile.config

cd caffe

cp Makefile.config.example Makefile.config

使能Anaconda,这里注意,如果读者的Anaconda目录名是anaconda2,记得把下面的ANACONDA_HOME对应的anaconda改成anaconda2

sed -i ‘s|# ANACONDA_HOME := $(HOME)/anaconda|ANACONDA_HOME := $(HOME)/anaconda|’ Makefile.config

sed -i ‘s|# PYTHON_INCLUDE := $(ANACONDA_HOME)|PYTHON_INCLUDE := $(ANACONDA_HOME)|’ Makefile.config

sed -i ‘s|# $(ANACONDA_HOME)|$(ANACONDA_HOME)|’ Makefile.config

sed -i ‘s|# PYTHON_LIB := $(ANACONDA_HOME)|PYTHON_LIB := $(ANACONDA_HOME)|’ Makefile.config

sed -i ‘s|# WITH_PYTHON_LAYER := 1|WITH_PYTHON_LAYER := 1|’ Makefile.config

安装Python依赖

pip install -r python/requirements.txt

编译Caffe

make all -j $(($(nproc) + 1))

如果读者在编译时遇到
pyconfig.h: No such file or directory
的问题时,那么如果您之前有按照小编的步骤安装了Anaconda,那么很有可能就是Anaconda的路径写错了,解决办法:先找到您Anaconda的安装目录和目录名(新版的Anaconda目录名变成了anaconda2,小编当时就是这里错了),然后在Caffe的Makefile.config里面找打ANACONDA_HOME并修改路径,就可以了~


编译Caffe测试文件并运行,不出意外的话,应该会报错,并提示libhdf5.so.x或libhdf5_hl.so.9找不到的错误

make test -j $(($(nproc) + 1))

make runtest -j $(($(nproc) + 1))

如果出现libhdf5.so.x找不到这样的错误,请记住提示的x,然后输入下面的指令,注意把x替换成提示的x。
cd /usr/lib/x86_64-linux-gnu
sudo ln -s libhdf5.so.7 libhdf5.so.x
sudo ln -s libhdf5_hl.so.7 libhdf5_hl.so.x
sudo ldconfig


编译PyCaffe

make pycaffe -j $(($(nproc) + 1))

更新路径

echo “export CAFFE_ROOT=$(pwd)” >> ~/.bashrc

echo ‘export PYTHONPATH=$CAFFE_ROOT/python:$PYTHONPATH’ >> ~/.bashrc

退出终端并重新打开

尝试import caffe

ipython

import caffe

如果没有报错,那么恭喜读者,你可以开始您的第一个Caffe实例了!

安装过程中遇到任何问题,欢迎留言一起讨论:)

后记

呼,这配环境的事真是不容易,不过当跑出了第一个示例程序之后,内心那是一个激动的。小编接下来还会继续跟进Caffe的学习,争取给读者们提供一个最白痴,最容易上手的学习心得!下一节会介绍Caffe以及Caffe一些核心的概念~敬请期待:)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: