Caffe 环境配置

来源:互联网 发布:魅色软件官方网站 编辑:程序博客网 时间:2024/06/05 23:44

Caffe 环境搭建 (ubuntu 14.04,16.04, cuda 8.0, Nvida 8.0)

  • 一、首先从官网上下载相应版本的cuda和显卡驱动
  • 安装nvidia
    sudo opt install gdm (选择gdm)
    sudo /etc/init.d/gdm stop
    ctrl+ALT+F1
    sudo sh NVIDIA-linux-x86-173.14.22.run
    sudo /etc/init.d/gdm start

  • 安装cuda
    sudo /etc/init.d/gdm stop
    ctrl+ALT+F1
    sudo sh NVIDIA-linux-x86-173.14.22.run(改成cuda的文件名字)
    打开环境变量配置文件
    gksu gedit /etc/environment
    将 cuda 路径加入 PATH ,形如
    PATH=”/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/cuda/bin”
    保存退出。
    打开链接库配置文件
    gksu gedit /etc/ld.so.conf
    添加一行
    /usr/local/cuda/lib
    保存退出。
    至此,CUDA 安装完毕,重启就可以用了。
    注意:
    Ubuntu安装完NVIDIA驱动后,如果重启电脑进入不了系统,一直处于登录界面
    解决方法:
    1、在你的用户登录界面按ctrl+alt+F1进入tty模式
    2、输入你的账户名和密码
    3、依次运行如下语句:
    sudo apt-get purge nvidia-*
    sudo add-apt-repository ppa:graphics-drivers/ppa
    sudo apt-get update
    sudo apt-get install nvidia-375
    reboot //重启
    重启后问题就可以正常进入系统了~~

  • 安装cudnn
    Extract and copy the files
    cd ~/Downloads/
    tar xvf cudnn*.tgz (*表示后面的文件名)
    cd cuda
    sudo cp /.h /usr/local/cuda/include/
    sudo cp /libcudnn /usr/local/cuda/lib64/
    sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

  • 二、安装相应的库如果哪里出错,可以update一下)
    sudo apt-get update 更新源
    sudo apt-get upgrade 更新已安装的包)

  • install PYTHON (ipython notebook)
    sudo apt-get install -y ipython-notebook pandoc

  • I change the BLAS edition (in Makefile.config) into OpenBLAS.
    sudo apt-get install libgsl0-dev -y
    sudo apt-get install libblas3 libblas3gf liblapack-dev libsnappy-dev libatlas-dev libopenblas-dev -y

  • GOOGLE (gflags, protobuf)
    sudo apt-get install protobuf-c-compiler protobuf-compiler -y
    sudo apt-get install libgflags-dev -y
    sudo apt-get install libprotobuf-dev -y

  • 按照http://caffe.berkeleyvision.org/install_apt.html操作
    sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
    sudo apt-get install libatlas-base-dev (下面介绍过这个问题)
    sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

  • 安装glog-0.3.3
    wget https://github.com/google/glog/archive/v0.3.3.tar.gz
    tar zxvf v0.3.3.tar.gz
    cd glog-0.3.3
    ./configure
    make && make install (不行的话,运行一下 sudo make install 或者sudo make && make install)

  • BOOST
    sudo apt-get install libboost1.55-all-dev -y
    或者sudo apt-get install libboost-all-dev -y (可能是ubuntu版本的问题)
    OpenCV (安装)小版本的opencv
    sudo apt-get install libopencv-* -y

  • STORAGE
    Data blobs are transfered via DB format. In dev branch, we should use more types of them.
    sudo apt-get install libhdf5-dev libleveldb-dev liblmdb-dev -y

  • PYTHON
    Python depends on the tools that drawing the net or detect the object. If you wanna use these utilities, install them.
    sudo apt-get install python-protobuf python-numpy python-skimage python-pydot python-pandas -y

  • 其他依赖项,确保都成功(装过的也可以使用该命令,安装过的不会重装)
    $ sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler protobuf-c-compiler protobuf-compiler python-numpy python-scipy python-matplotlib python-sklearn python-skimage python-h5py python-protobuf python-leveldb python-networkx python-nose python-pandas python-gflags cython ipython

  • 安装并更新gcc/g++(不知道是不是必须的,在之前安装的时候装过)。
    sudo add-apt-repository ppa:ubuntu-toolchain-r/test
    sudo apt-get update
    sudo apt-get install gcc-4.9
    sudo apt-get install g++-4.9
    装了ppa,各种版本就可以共存了。不过有一个问题,每次要用的时候,必须使用g++-4.9,如果直接用g++会运行4.8版本的,非常麻烦。所以需要改一下/usr/bin/下的链接。
    sudo su
    cd ../../usr/bin
    ln -s /usr/bin/g++-4.9 /usr/bin/g++ -f
    ln -s /usr/bin/gcc-4.9 /usr/bin/gcc -f

  • 按照http://blog.csdn.net/shiorioxy/article/details/52652831的第四部分的第五步进行安装。(该博客中的依赖项能装尽量装)。
    如果有关于libatlas出错的,请安装。(sudo apt-get install libatlas-base-dev)

  • 三、测试
    下载一个caffe,切换到Caffe-master的文件夹,生成Makefile.config配置文件,(将后面的带有.example的文件打开,修改文件并去掉.example后缀)执行:

cp Makefile.config.example Makefile.config (也可手动打开修改)配置Makefile.config文件(仅列出修改部分) a. 启用CUDNN,去掉”#”USE_CUDNN := 1d. 配置路径,实现caffe对Python和Matlab接口的支持PYTHON_LIB := /usr/local/lib(与安装路径一致,可以没有local,根据安装路径)MATLAB_DIR := /usr/local/MATLAB/R2014a编译caffe-master!!!”-j16”是使用CPU的多核进行编译,可以极大地加速编译的速度,建议使用。make all -j16make test -j16  (可以不运行)make runtest -j16(可以不运行)make pycaffe -j16  (因为只用到python所以只编译了这一步)make matcaffe -j16使用MNIST数据集进行测试 Caffe默认情况会安装在 Caffe-master,就是解压到那个目录,例如:$ home/username/caffe-master,所以下面的工作,默认已经切换到了该工作目录。下面的工作主要是,用于测试Caffe是否工作正常,不做详细评估。具体设置请参考官网:http://caffe.berkeleyvision.org/gathered/examples/mnist.html 1.数据预处理$ sh data/mnist/get_mnist.sh2.重建lmdb文件。Caffe支持多种数据格式输入网络,包括Image(.jpg, .png等),leveldb,lmdb,HDF5等,根据自己需要选择不同输入吧。$ sh examples/mnist/create_mnist.sh生成mnist-train-lmdb 和 mnist-train-lmdb文件夹,这里包含了lmdb格式的数据集3.训练mnist$ sh examples/mnist/train_lenet.sh