keras的GPU模式安装- theano 后端

时间:2022-07-25 13:57:36

很久很久没写博客了,上次写博客应该是一年前的事情

如果会看这篇文章的同志们应该也知道keras是啥,这里不多介绍,今天要写的keras的,先来一下自己的硬件设备和系统:

ubuntu14.04

GTX-950(我使用)

python2.7

1.  安装必要的工具vim+git:sudo apt-get install vim git

2. 安装必要的依赖库: sudo apt-get install python-numpy python-scipy python-dev python-pip python-nose g++ libopenblas-dev

3. 安装nvida驱动:

  • 首先去下载驱动:http://www.nvidia.cn/Download/index.aspx?lang=cn,下载后得到一个./NVIDIA.run 文件(名字具体看你下载的文件)
  • 屏蔽ubuntu原来的驱动:sudo gedit /etc/modprobe.d/blacklist.conf 并依次添加一下内容
  • blacklist vga16fbblacklist nouveaublacklist rivafbblacklist nvidiafbblacklist rivatv
  • 卸载原来驱动:sudo apt-get  remove nvidia-*      sudo apt-get  purge  nvidia-*
       sudo apt-get  remove xserver-xorg-video-nouveau sudo    apt-get purge  xserver-xorg-video-nouveau
  • 接下来关闭ubuntu图形界面安装nvida驱动:
    • sudo service lightdm stop
    •  然后切换到tty1:Ctrl+Alt+F1
    • 登录root用户
    • 接下来安装下载下来的驱动: ./NVIDIA.run开始安装
    • 重新启动X-Windowsudo service lightdm start
  • lspci | grep -i nvidia 检查是否安装成功
    查看你的显卡类型:
    lspci | grep -i vga
    查看驱动配置:
    cat /etc/X11/xorg.conf
    查看当前使用的驱动:
    lsmod | grep -i nvidia (我使用的nvidia的)
    查看驱动的详细信息:
    modinfo nvidia

4. 安装cuda:

  • 选择cuda:http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/   (我用的6.5,因为我发现安装7.5后和我显卡驱动无法兼容,具体大家可以使用新的版本)
  • 下载cuda: wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_6.5-14_amd64.deb
  • sudo dpkg -i cuda-repo-<distro>_<version>_<architecture>.deb
  • sudo apt-get update
    如果碰到apt-get无法使用        具体如下:
               1、执行ps -ef | grep apt-get                                            查看是否有apt-get进程。
               2、执行sudo killall -9 apt-get                                          强行关闭相应进程。           3、执行sudo apt-get update;sudo apt-get dist-upgrade 继续升级。
  • 一条命令安装:sudo apt-get install cuda  (-f)
  • 安装好后去需要去 cd 到 /usr/local/cuda 的sample底下 运行make,编译一把sample确认安装是否成功 如果make 发现某些库没有链接 cannot find -lnvcuvid

  • sudo ln -s /usr/lib/nvidia-367/libnvcuvid.so /usr/lib/libnvcuvid.sosudo ln -s /usr/lib/nvidia-367/libnvcuvid.so.1 /usr/lib/libnvcuvid.so.1    

  • 如果上面一步运行成功运行:/usr/local/cuda/samples/bin/x86_64/linux/release/deviceQuery 查看是否能正确显示

5.安装Anaconda:这个玩意包含了蛮多python有用的lib(numpy,scipy,pyyaml,hdf5),所以可以减少你很多lib的安装。下载地址:http://www.continuum.io/downloads#all。一条命令安装好:

./Anaconda-2.3.0-Linux-x86_64.sh 并添加bin 在~/.bashrc中添加export PATH="~/anaconda2/bin:$PATH"

安装好后,我们需要创建一个新的python环境,这样我们所有的keras程序都安装在这个独立的环境,具体我们用到了conda这个命令:可以参考这个:http://www.tuicool.com/articles/vyyA7rB

conda create -n keras_env  python=2.7 numpy scipy  (创建一个keras_env的环境,这个环境带了python2.7 numpy scipy)

conda安装opencv,如果处理图片一般会用到opencv库:

conda install -c https://conda.binstar.org/menpo opencv

最后使用这个环境我们要把这个环境active起来,注意后面所有的pip安装theano的命令都在这个kears_env下执行

source activate keras_env   这条命令也要添加到 ~/.bashrc

如果有什么库少了可以参考安装下面一些库,因为毕竟我们的环境有些少许出入:

sudo apt-get install python-numpy python-scipy python-dev python-pip python-nose g++ libopenblas-dev git

6. 安装theano

pip install Theano

7. 安装keras:sudo pip install keras 。 安装好keras后,我们需要把keras的backend设置为theano(keras默认是用tf),具体的方法是

查询到 ~/.keras/keras.json

{
"image_dim_ordering": "th",
"epsilon": 1e-07,
"floatx": "float32",
"backend": "theano"
}

8.设置keras的GPU模式:

vim 编辑 ~/.theanorc 输入以下字符:

[global]
device=gpu
floatX=float32
root=/usr/local/cuda
[nvcc]
fastmath = True
[blas]
ldflags = -lopenblas
[cuda]
root = /usr/local/cuda
[lib]
cnmem=0.8
[nvcc]
optimizer_including=cudnn

这里我安装了cudnn,如果没有安装就不需要指定最后的cudnn,但是cuda一定需要指定

9. shell中键入python,之后输入from keras.models import Sequential


PS:我知道基本上csdn的安装流程都不能安装成功,所以有问题就留言碰吧。

缺少yaml的解决方法

cd
wget http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz
tar xzvf yaml-0.1.4.tar.gz
cd yaml-0.1.4
./configure --prefix=/usr/local
make
sudo make install


最后keras有一个style-transfer的demo给大家看一下有点努力的动力吧。下面是keras的4次迭代的结果。

keras的GPU模式安装- theano 后端

keras的GPU模式安装- theano 后端

keras的GPU模式安装- theano 后端

keras的GPU模式安装- theano 后端

keras的GPU模式安装- theano 后端

keras的GPU模式安装- theano 后端


===================================================

OTHER TIP