ubuntu14.04+CUDA7.5+cuDNN+caffe的超详细完整配置

来源:互联网 发布:广发期货软件下载 编辑:程序博客网 时间:2024/06/05 05:53

版权声明:文章原创,转载请注明出处,多谢!

声明 

   本文是关于ubuntu14.04+CUDA7.5+cuDNN+caffe的超详细完整配置过程的说明。

    小菜是刚接触深度学习领域的小白,在配置caffe的过程中遇到很多困难,一度纠结崩溃甚至想放弃,但是最终配置成功,看着Demo运行,还是非常有成就感和愉悦感的。也更加坚定了遇到问题时要坚持不懈,最终会解决的信念。在此写下博客,记录下安装、学习过程。如果小伙伴们能再此找到解决问题之道,那更是对本人文章莫大的肯定。欢迎大家批评指正^.^

首先说一下电脑配置和用到的软硬件的版本。

电脑型号:B5400

CPU:c4200M

显卡:集成显卡Inite+独立显卡Nvidia820M

操作系统:Ubuntu14.04(内核版本3.13!)

各个软件版本:

gcc:4.8.2,

CUDA7.5,caffe,cuDNN,OpenCV,Python2.7,

正文之前

    正文之前先说一下个人感触:本人在装软件之前,只知道有caffe这么个深度学习的框架,对Linx系统,配置文件,命令行啥的一窍不通(没办法,本科欠下太多的东西,都要还的......)。开始照搬网上的方法,一通乱搞,最后可想而知以失败告终,于是慢慢熟悉每一个细节,耐心搞懂每一个语法,每个软件的作用,参考了官方的文档和官方说明。在这一过程中,有两点的感触最深:1.一定要注意版本问题(血泪教训);2.一定要多研究官方文档,说明!

正文


##一.安装ubuntu系统

##二.安装CUDA-7.5

    #检查自己的电脑是否具有安装CUDA的条件

a)检查GPU是否是CUDA-capable
    $ lspci | grep -i nvidia
    官网查看是否在列表中,并注意camput ability
b)检查自己的Linux版本书否支持CUDA(Ubuntu 14.04没问题)
c)检查自己的系统中是否装了gcc
    $ gcc --version
d)检查是否安装了kernel header和 package development
    $ uname -r 可以查看自己的kernel版本信息
    $ sudo apt-get install linux-headers-$(uname -r)可以安装对应kernel版本的kernel header和package development

    #选择安装CUDA的方式

CUDA提供两种安装方式:package manager安装和runfile安装。我本来选的是 package manager 安装,这种方法相对简单,但尝试了几次都失败。后来是转换到runfile安装才成功的。因此此处只介绍runfile安装方式。
a) 禁用 nouveau
    终端中运行:$ lsmod | grep nouveau,如果有输出则代表nouveau正在加载。
    Ubuntu的nouveau禁用方法:在/etc/modprobe.d中创建文件blacklist-nouveau.conf,在文件中输入一下内容

        blacklist nouveau  #第一个配置文件
        options nouveau modeset=0  
    打开终端,运行
        $ sudo update-initramfs -u
    设置完毕可以再次运行 $ lsmod | grep nouveau 检查是否禁用成功,如果运行后没有任何输出,则代表禁用成功。
b)安装依赖项
1. sudo apt-get install freeglut3-dev
2. sudo apt-get install build-essential
3. sudo apt-get install libx11-dev
4. sudo apt-get install libxmu-dev
5. sudo apt-get install libxi-dev
6. sudo apt-get install libgl1-mesa-glx
7. sudo apt-get install libglu1-mesa
8. sudo apt-get install libglu1-mesa-dev
重启电脑,到达登录界面时,alt+ctrl+f1,进入text mode,登录账户
c) 输入 $ sudo service lightdm stop 关闭图形化界面
d) 切换到cuda安装文件的路径,运行$ sudo sh cuda_7.5.18_linux.run
    遇到提示是否安装openGL ,选择no(如果你的电脑跟我一样是双显,且主显是非NVIDIA的GPU需要选择no,否则可以yes)。其他都选择yes或者默认。安装成功后,会显示installed,否则会显示failed。
e) 输入 $ sudo service lightdm start 重新启动图形化界面
Alt + ctrl +F7,返回到图形化登录界面,输入密码登录。
如果能够成功登录,则表示不会遇到循环登录的问题,基本说明CUDA的安装成功了。

f)重启电脑。检查Device Node Verification。
    检查路径~/dev下 有无存在名为nvidia*(以nvidia开头)的多个文件(device files).如果没有的话,可以参考官方文档里的指导步骤,进行添加。
g)设置环境变量。
    终端中输入 $ sudo gedit /etc/profile  在打开的文件末尾,添加以下两行。 #第二个配置文件
        $ export PATH=/usr/local/cuda-7.5/bin:$PATH
        $ export LD_LIBRARY_PATH=/usr/local/cuda7.5/lib64
保存文件。

    #安装完毕后的检查工作。

a) 检查 NVIDIA Driver是否安装成功
终端输入 :$ cat /proc/driver/nvidia/version 会输出NVIDIA Driver的版本号
b) 检查 CUDA Toolkit是否安装成功
终端输入 : $ nvcc --version 会输出CUDA的版本信息
c) 尝试编译cuda提供的例子
切换到例子存放的路径,默认路径是 ~/NVIDIA_CUDA-7.5_Samples
(即 /home/xxx/ NVIDIA_CUDA-7.5_Samples, xxx是你自己的用户名)
然后终端输入:$ make
d) 运行编译生成的二进制文件。
编译后的二进制文件 默认存放在~/NVIDIA_CUDA-7.5_Samples/bin中。
切换路径 : cd ~/NVIDIA_CUDA-7.5_Samples/bin
终端输入 :$ deviceQuery

看到类似如下图片中的显示,则代表CUDA安装且配置成功(congratulation!!)

###三.安装caffe

1.下载caffe:

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

2.安装第三方库:

# 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

3.安装opencv

# cd caffe
# sudo git clone https://github.com/jayrambhia/Install-OpenCV
# cd Install-OpenCV/Ubuntu
# sudo sh dependencies.sh
# cd 2.4
# sudo sh opencv2_4_10.sh

4.编译caffe

# cd ~/caffe
# sudo cp Makefile.config.example Makefile.config
# make all

5.配置运行环境

caffe运行时需要调用cuda的库,我们在/etc/ld.so.conf.d目录下新建一个cafe.conf文件,将所需要用的库的目录写入.
# sudo vi /etc/ld.so.conf.d/caffe.conf
添加内容:
    /usr/local/cuda/lib64 # 修改的配置文件
保存退出(:wq!)
更新配置
# sudo ldconfig

#########测设caffe

1.下载mnist数据

# cd ~/caffe
# sudo sh data/mnist/get_mnist.sh
# sudo sh examples/mnist/create_mnist.sh

2.修改配置文件

3.配置文件好后,就可以运行了

# sudo sh examples/mnist/train_lenet.sh


#########数据可视化环境(python)的配置

1.安装python和pip

a).下载
b).在终端执行(2.7版本):
    # bash Anaconda2-2.4.1-Linux-x86_64.sh
c).安装路径默认 /home/lx/anaconda2

d).环境变量默认 PATH in your /home/lx/.bashrc ? [yes|no]  #yes就好
安装完成!

2.编译python接口

首先,将caffe根目录下的python文件夹加入到环境变量
打开配置文件bashrc
    # sudo vi ~/.bashrc   #
在最后面加入
    export PYTHONPATH=/home/xxx/caffe/python:$PYTHONPATH
注意 /home/xxx/caffe/python 是我的路径,这个地方每个人都不同,需要修改
保存退出,更新配置文件
    # sudo ldconfig

3.修改配置文件

4.在/home/xxx/caffe下

    # sudo make pycaffe

5.重新编译

    # sudo make test -j4
    # sudo make runtest -j4
(也许你在编译runtest的时候,会报这样的错误:
.build_release/test/test_all.testbin: error while loading shared libraries: libhdf5.so.10: cannot open shared object file: No such file or directory
这是因为 libhdf5.so的版本问题,你可以进入/usr/lib/x86_64-linux-gnu看一下,你的libhdf5.so.x中的那个x是多少,比如我的是libhdf5.so.7
因此可以执行下面几行代码解决:
# cd /usr/lib/x86_64-linux-gnu
# sudo ln -s libhdf5.so.7 libhdf5.so.10
# sudo ln -s libhdf5_hl.so.7 libhdf5_hl.so.10
# sudo ldconfig

6.最终查看python接口是否编译成功:

    进入python环境,进行import操作
    # python
    >>> import caffe  #(遇到了问题)

            $ sudo gedit /etc/profile # 末尾添加: export PYTHONPATH=/path/to/caffe/python:$PYTHONPATH
            最后解决方法:sudo chmod 777 -R  anaconda2(文件夹) 改变权限 然后conda install protobuf
  如果没有提示错误,则编译成功。

7.安装jupyter

  如果安装了anaconda, jupyter notebook就已经自动装好,不需要再安装
  运行notebook
    # jupyter notebook
    就会在浏览器中打开notebook,  点击右上角的New-python2, 就可以新建一个网页一样的文件,扩展名为ipynb。
    在这个网页上,我们就可以像在命令行下面一样运行python代码了。
    输入代码后,按 '''shift+enter运行''',更多的快捷键,可点击上方的help-Keyboard shortcuts查看,或者先按esc退出编辑状态,再按h键查看。

#########为了绘制CNN网格模型

1、安装GraphViz

    # sudo apt-get install GraphViz
        注意,这里用的是apt-get来安装,而不是pip.

2 、安装pydot

    # sudo pip install pydot
        用的是pip来安装,而不是apt-get

#########faster-rcnn的配置

如果前面的没有题,环境变量没有配置错误,这一步问题不大。
修改环境变量的时候要慎重小心,知道具体含义。或者做下记录。
#########

import opencv2失败

解决办法:

    1.要把opencv编译出来的cv2.so (/build/lib下)拷贝到anaconda2的lib目录下
    2.export PYTHONPATH=/home/lx/caffe/python:/home/lx/anaconda2/lib:$PYTHONPATH



1 0
原创粉丝点击