keras, theano + cuda + cudnn on windows10

系统环境:Windows10 64bit, GPU: GTX 960

python环境:Anaconda2-Python2.7

1. Dependencies:

    首先安装所需依赖。Windows环境下需要安装GCC编译环境,在cmd中输入:

conda install mingw libpython

安装后MinGW会在anaconda的子目录下出现。然后安装keras,和theano框架,在cmd中输入:

pip install keras
pip install theano

至此,没有GPU加速的keras框架已经安装完毕。在Python环境中import keras时,有可能报错,因为keras默认的加载时TensorFlow,所以需要进行更改。打开C盘下用户所在的目录,会有.keras这一目录,打开该目录中的keras.json文件,将其修改为:

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

这时再import keras便不会报错。如果想安装加速版本,可以在 https://github.com/Theano/Theano  中下载,将该目录命名为theano,并替换Anaconda2\Lib\site-packages\ 下的theano。需要手动添加环境变量,方法:在我的电脑界面下右键打开属性,打开高级系统设置-环境变量,在系统变量中新建变量名PYTHONPATH,值为theano所在目录:...\Anaconda2\Lib\site-packages\theano. (...代表Anaconda2前面的目录,取决于自己Anaconda2的安装位置)

此时可以利用cpu运行keras\example中的demo,比如mnist_mlp.py. keras下载地址: https://github.com/fchollet/keras

2. CUDA:

    现在开始配置CUDA. CUDA的编译器为Microsoft visual studio, 所以建议安装cuda前先配置vs。cuda8.0 指定vs版本为2015,所以下载并安装vs 2015。下载链接:

ed2k://|file|cn_visual_studio_professional_2015_with_update_3_x86_x64_dvd_8923256.iso|7745202176|DD35D3D169D553224BE5FB44E074ED5E|/

 可以修改安装目录。安装后检查一下在vs安装目录下面的 VC\bin目录下是否有cl.exe文件,如果没有说明安装时没有选中C++,这时可以重新运行安装文件,选择modify,并把C++选中。这一步结束后需要手动添加环境变量。方法是在 高级系统设置-环境变量中,选择path的环境变量,选中编辑,并在里面添加: ...\VC\bin(...代表visual studio 2015的安装目录)。

此时可以安装CUDA,下载地址:https://developer.nvidia.com/cuda-downloads,选择windows 10版本。按照默认位置进行安装。

安装完成后,在C盘用户所在目录下新建txt文件,命名为: .theanorc.txt,从而配置theano加速选项。我的文件内容为:

[global]
openmp=False 
device = gpu
optimizer_including=cudnn
floatX = float32
allow_input_downcast=True
[lib]
cnmem = 0.8  
[blas]
ldflags=   
[gcc]
cxxflags=-ID:\ProgramFiles\Anaconda2\MinGW
[nvcc]
fastmath = True
--flags=-LD:\Program Files\Anaconda2\libs
--compiler_bindir=D:\Program Files\Visual Studio\VC\bin

注: 未使用cudnn时,把optimizer_including=cudnn这一行去掉;cxxflags的路径中,若出现空格,比如我的Anaconda2安装在D盘的Program Files下,需要把空格去掉(ProgramFiles),否则后面会出错;[nvcc]下的路径取决于自己Anaconda2和Visual Studio的安装位置,根据自己的位置进行修改。

此时,初次进入Python环境时,import keras或theano,会出现 Using gpu device 0: GeForce GTX 960 等等,后面还有cudnn是否使用的信息。

3. CUDNN:

cudnn需从nvidia官网注册账号并下载,我选择的版本为:cudnn-8.0-windows10-x64-v5.0-ga. 解压后,将三个文件夹里的内容,放入cuda的安装目录:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0,下对应的三个文件夹中。并在上述.theanorc.txt中,加上optimizer_including=cudnn这一行。至此,keras+CUDA+cudnn的配置全部完成。

 

 

参考: http://keras-cn.readthedocs.io/en/latest/getting_started/keras_windows/

posted on 2017-03-18 17:49  iboing  阅读(396)  评论(0)    收藏  举报

导航