您的位置:首页 > Web前端

Ubuntu16.04_Cuda8.0_CUDNN6.0_caffe_tensorflow

2017-12-15 16:18 941 查看

Ubuntu16.04_Cuda8.0_CUDNN6.0_caffe_tensorflow

本文主要包含如下内容:

Ubuntu1604_Cuda80_CUDNN60_caffe_tensorflow
Ubuntu检查更新并安装显卡驱动

更新补丁

安装 OpenCV2413

安装 cuda80

安装 cuDNN60

安装 Caffe

安装 faster-rcnn

安装 SSD

安装 mxnet

安装 tensorflow

安装 ipython

  本篇博客主要针对初次安装Ubuntu的小伙伴, 这里主要讲解了深度学习应用的相关环境搭建, 请仔细详读.

Ubuntu检查更新并安装显卡驱动

  一旦安装完系统,第一步需要做的就是检查更新。(安全性,稳定性及bug修复)首先在
Unity Dash
中启动 软件更新 工具,点击按钮检查更新,安装一部分或全部所有列出的更新;同时安装显卡驱动 GPU(graphics processing unit)

  若显卡驱动安装不成功,请参考博客

更新补丁

  接下来,第二部,则需要更新一些补丁。

  在终端中,输入命令对当前系统的可用更新列表进行更新。(更新依赖)

  同时,会把本地已安装的软件,与刚下载的软件列表里对应软件进行对比,如果发现已安装的软件版本太低,就会提示你更新。(更新软件)

sudo apt-get update
sudo apt-get upgrade


安装 OpenCV2.4.13

  在这些都准备好了之后, 我们来安装OpenCV, 这里考虑安装OpenCV2.4.13

  OpenCV2.4.13下载地址

  首先, 在终端输入指令下载源添加至系统源(添加依赖)

sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev pyt
4000
hon-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-dev libdc1394-22-dev libatlas-base-dev gfortran


  接下来,配置
opencv
,在这里使用
cmake-gui
进行配置,后面会介绍。先安装
cmake-gui
:(安装软件)

sudo apt-get install cmake-qt-gui


  解压下载的OpenCV文件,解压到
/Home/
下面, 在解压后的文件夹下新建一个
opencv-debug
文件夹, 配置
cmake
, 执行如下命令:

unzip opencv-2.4.13.zip -d /Home/
cd opencv-2.4.13/
mkdir opencv-debug
cd opencv-debug/
cmake-gui


  根据下面图片进行操作, 随后点击
configure
cmake
configure
的作用就是能够读出系统已经安装的相关文件,然后进行
generate


  


  在完成以上操作之后, 进行编译安装, 编译时间可能有点长,耐心等待。还是在刚刚的cd的那个文件夹
opencv2-4-13-debug
下执行:

make -j8
sudo make install


  安装成功后还需要环境变量配置,设置
opencv
的环境变量, 打开文件, 并在最后一行输入如下内容:

sudo gedit /etc/profile

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH


  


  关闭对应文件, 执行下列命令, 使环境变量立即生效:

source /etc/profile


  接下来, 设置lib库路径,打开文件, 由于
opencv
的库一般安装在
’/usr/local/lib’
文件夹下. 因此, 随即在文件内添加:

sudo gedit /etc/ld.so.conf.d/opencv.conf

/usr/local/lib


  执行下列命令使之立刻生效:

sudo ldconfig


  最后, 我们验证是否安装成功, 对
opencv
sample
进行编译并运行,依次执行如下代码

cd opencv-2.4.13/samples/c
./build_all.sh
./facedetect --cascade="/usr/local/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml" --scale=1.5 lena.jpg


  如果出现 lena 的图片就证明成功了!

安装 cuda8.0

  
CUDA™
是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。在深度学习中, 一般会需要用到CUDA, 可以根据自己的显卡版本选择是否安装CUDA

  CUDA下载地址

  进到你下载好的
cuda
run
文件目录,运行如下命令:

sudo sh cuda_8.0.61_375.26_linux.run


  这时便进入的声明的界面,你可以连续按
Ctr+f
向下阅读直到结尾,选择接受与否;

  输入接受:
accept
然后回车。具体应该怎么输入请按照如下图片的指示来操作:

  


  如果出现下图的结果,表明你已经安装成功了,虽然有一个警告和一个特别注意但是不影响结果。

  


  下载的例子里面是缺少一些支持库的,现在我们安装这些库, 在终端中输入:

sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev


  接下来打开.bashrc来进行配置,输入命令如下:

sudo gedit ~/.bashrc


  并将如下的几行内容复制的到
.bashrc
文件的最下面:

export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
CUDA_HOME=/usr/local/cuda


  然后设置环境变量和动态链接库,在命令行输入:

sudo gedit /etc/profile


  同样的, 在打开的文件末尾加入:

export PATH=/usr/local/cuda-8.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH


  保存之后,关闭相关文件, 创建链接文件, 在命令行中输入:

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


  同样的, 在打开的文件中添加如下语句:

/usr/local/cuda/lib64


  现在就开始测试一下看看
cuda
是否安装成功吧!输入如下命令打开测试的代码位置:

cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery
sudo make -j8
./deviceQuery
nvcc -V


  如果出现如下结果—显卡的配置信息,恭喜你,这就证明你成功的安装了
cuda


  


安装 cuDNN6.0

  在安装CUDA之后, 你需要安装 cuDNN, 这里, 我们考虑安装cuDNN6.0

  cuDNN下载地址

  下载后解压, 并在终端中,输入以下命令:

tar -xvf cudnn-8.0-linux-x64-v6.0.tgz
cd cuda/include/
sudo cp cudnn.h /usr/local/cuda/include/
cd ../lib64/
sudo cp lib* /usr/local/cuda/lib64/


  接下来, 进行软连接,这部很重要, 注意:文件名要和自己的对上(我这里是6.0.21)

cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.6
sudo ln -s libcudnn.so.6.0.21 libcudnn.so.6
sudo ln -s libcudnn.so.6 libcudnn.so


安装 Caffe

  接下来, 我们可以搭载 caffe

  Caffe github地址

  下载后解压,你会看到其中有一个文件叫
Makefile.config.example
这个文件是官方给出了编译的“模板”,我们可以直接拿过来小小的修改一下就行。复制下面的命令把名字改为
Makefile.config


  在终端中,输入命令打开这个文件并且修改:

sudo cp Makefile.config.example Makefile.config
sudo gedit Makefile.config


  接下来, 配置相关内容, 具体参数设置如下:

若使用
cudnn
,则将
#USE_CUDNN := 1
修改成:
USE_CUDNN := 1


若使用的
opencv
版本是2的,则将
#OPENCV_VERSION := 3
修改为:
OPENCV_VERSION := 2


若要使用
python
来编写
layer
,则将
#WITH_PYTHON_LAYER := 1
修改为
WITH_PYTHON_LAYER := 1


要是你是用的
anaconda
的话,还需要改一些地方: 把之前的
PYTHON_INCLUDE
加上注释,把
ANACONDA_HOME
以及下面的
PYTHON_INCLUDE
都去掉,并且改为如下图最终的样子。注意:
ANACONDA_HOME
后面是
anaconda
的安装位置,根据自己的情况不同而不同。其中
$(HOME)
就是你的\Home\目录

  


  


# Whatever else you find you need goes here
下面的

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include


LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib

  修改为:

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial


修改
makefile
文件, 在终端中,输入以下命令:

sudo gedit Makefile


  在
Makefile
文件的第大概409行,将:

NVCCFLAGS +=-ccbin=$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS)


  替换为:

NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)


  


  在
Makefile
文件的第大概181行,将:

LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5


  改为:

LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial


编辑
host_config.h
文件

  在终端中,输入以下命令:

sudo gedit /usr/local/cuda/include/host_config.h


  将其中的第119行注释掉:

#error-- unsupported GNU version! gcc versions later than 5 are not supported!


  改为:

//#error-- unsupported GNU version! gcc versions later than 5 are not supported!


  


安装:

  在终端中,输入以下命令:

sudo apt-get install libatlas-base-dev
sudo apt-get install libprotobuf-dev
sudo apt-get install libleveldb-dev
sudo apt-get install libsnappy-dev
sudo apt-get install libopencv-dev
sudo apt-get install libboost-all-dev
sudo apt-get install libhdf5-serial-dev
sudo apt-get install libgflags-dev
sudo apt-get install libgoogle-glog-dev
sudo apt-get install liblmdb-dev
sudo apt-get install protobuf-compiler
sudo apt-get install cmake

sudo make all -j8


  


  最后,我们测试是否安装成功:

sudo make test


  


安装 faster-rcnn

  我们还可以安装 faster-rcnn, 这里安装的步骤比较简单, 我们参考安装博客

编译错误:

ImportError: No module named cv2


  解决方案: 需要
把/usr/local/lib/python2.7/site-packages/cv.py
/usr/local/lib/python2.7/site-packages/cv2.so
文件,都统统cp到目标文件夹
/usr/local/lib/python2.7/site-packages/
下面

安装 SSD

  我们还可以安装 SSD, 这里安装的步骤比较简单, 我们参考安装博客  GIthub地址

安装 mxnet

  我们还可以安装 mxnet, 这里安装的步骤比较简单, 我们参考安装博客

  也可以参考我这里的教程, 在终端中输入:

git clone --branch face --recursive https://github.com/tornadomeet/mxnet.git make -j8
cd python
python setup.py install


安装 tensorflow

  github官方教程,可以参照官方教程和本篇博客进行安装。本篇博客旨在教会你怎么在自己的系统下搭载tensoflow,并且相关配置,然后tensoflow运用于目标检测任务。

  在安装tensorflow之前,请注意相应的CUDA、CUDNN版本,以及所需的NVIDIA驱动。现阶段官方推荐的是CUDA8.0、CUDNN6.0.21,安装教程详见之前博客。在相关软件安装完成后,执行以下代码即可:

pip install tensorflow-gpu==1.4.0
pip3 install tensorflow-gpu==1.4.0


  随后安装相应的环境包(请注意pip3还是pip,即python版本):

sudo pip install pillow
sudo pip install lxml
sudo pip install jupyter
sudo pip install matplotlib
sudo pip3 install pillow
sudo pip3 install lxml
sudo pip3 install jupyter
sudo pip3 install matplotlib


  现在,tensorflow已经安装完成,接下来检测tensorflow是否安装完成:

ling@ling-All-Series:~$ python
Python 2.7.12 (default, Nov 20 2017, 18:23:56)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess = tf.Session()
2017-12-17 13:59:47.609694: I tensorflow/core/platform/cpu_feature_guard.cc:137] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX AVX2 FMA
2017-12-17 13:59:47.835068: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:892] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2017-12-17 13:59:47.835366: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Found device 0 with properties:
name: GeForce GTX 1080 Ti major: 6 minor: 1 memoryClockRate(GHz): 1.6575
pciBusID: 0000:01:00.0
totalMemory: 10.91GiB freeMemory: 10.46GiB
2017-12-17 13:59:47.835379: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1120] Creating TensorFlow device (/device:GPU:0) -> (device: 0, name: GeForce GTX 1080 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1)
>>> print(sess.run(hello))
Hello,
67a3
TensorFlow!


  若安装不成功,详情请参考官方安装教程。tensorflow官方安装教程

  如果你需要从源码中安装, 请参考另外一篇博客.

安装 ipython

  如果你用到了ipython, 那么请执行下面的代码即可:

sudo pip install ipython --upgrade
sudo pip install jupyter
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: