- 系统: Windows 8 (64位)
- Python: Anaconda2-4.0.0-Windows-x86_64 (python 2.7.10)
- CUDA: Cuda_7.5.18
- VS:VS2013
要做卷积神经网络的一些东西,所以要装theano,网上很多Theano安装教程版本较老,而各安装包更新很快,参考价值有限。走了很多弯路才装好,把这个过程记录下来,希望对大家有帮助!
准备工作
如果想尽可能简单地进行,建议在一切开始前卸载系统中所有python和MinGW g++,特别注意从环境变量中除去它们,然后重启。
准备测试用的代码,比如Deep Learning Tutorials任意一个模型代码或者LSTM Networks的代码,我用的是:LSTM。
安装Anaconda
傻瓜式安装之后,打开cmd命令行窗口,输入conda install mingw libpython,漫长等待... ...
然后输入pip install theano,漫长等待+1... ...
把Anaconda相关的路径添加到环境变量Path中:
C:\Anaconda\MinGW\x86_64-w64-mingw32\include;
C:\Anaconda\MinGW\x86_64-w64-mingw32\lib;
C:\Anaconda\MinGW\bin;
C:\Anaconda;
C:\Anaconda\Scripts;
然后重开一个cmd命令行窗口,输入python,应该会出来Anaconda Python的命令行界面,然后输入import theano;,应该不会提示有什么错误。如果提示各种错误,看看错误日志很快就能发现问题的,一般都会提示哪里遇到了什么东西找不到的错误,对应检查一下环境变量。如果有其他版本的MinGW或python,也有可能导致错误。
这时尝试运行代码,比如cmd中python lstm.py,大概是会报错的~
在用户目录下(比如C:\Users\lichunchun\)新建一个文本文件,命名为.theanorc.txt,然后如下编辑保存,再次在cmd中运行,应当是可以用cpu跑起来theano了:
运行结果部分截图如下:
安装VS2013
傻瓜式安装。如果只是为了搭theano环境的话把c++相关的内容装上即可,其他臃肿的东西可不选。装VS完全就是为了编译器。
安装CUDA
双击cuda_7.5.18_windows.exe执行文件,傻瓜式安装。其中最好选择"自定义"模型进行安装,而不要选择"精简"模型,防止某些选项没有安装而影响后续的工作。
环境变量应当是自动配置好的,以防万一,还是检查一下:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\bin;
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\libnvvp;
经上述过程,已经把CUDA Toolkit安装完成,但是CUDA不一定能正常工作,所以我们可以根据CUDA Toolkit提供的Samples验证是否已成功安装CUDA了。首先检查是否已经成功安装了nvcc编译器了,这个工具是GPU程序的编译器。通过在cmd命令窗口中输入:
nvcc –V,若出现如下图的程序,所以成功安装。
安装完成CUDA TookIT后,在安装目录下会有如下图的文件:
并且在在C:\ProgramData\NVIDIA Corporation\CUDA Samples\v7.5目录下回生成一些Samples,其中ProgramData是个隐藏文件夹,如下图所示:
为验证Visual Sdudio工具是否能进行CUDA开发,并能识别CUDA程序,我们可以通过CUDA Toolkit提供的Samples进行测试。可以随便打开一个Samples例子,如C:\ProgramData\NVIDIA Corporation\CUDA Samples\v7.5\1_Utilities\bandwidthTest\bandwidthTest_vs2013.sln程序:
运行成功截图:
我们还可以测试另外一个程序:
若通过Visual Studio开发工具成功运行了CUDA的程序,就说明已经成功安装了CUDA和Visual Studio工具了,同时也很好集成了Visual Studio工具。
GPU运行Theano
很简单,改下配置文件.theanorc.txt即可:
[global]
openmp = False
device = gpu
floatX = float32
allow_input_downcast=True
[blas]
ldflags=
[gcc]
cxxflags=-IC:\Anaconda\MinGW\x86_64-w64-mingw32\include
[nvcc]
flags = -LC:\Anaconda\libs --cl-version=2013
compiler_bindir = C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64
fastmath = True
参考博客:
[1] https://zhyack.github.io/posts/2016_05_26-Configurate-Theano-On-Windows.html
[2] http://blog.csdn.net/yeyang911/article/details/17450963
[3] http://doc.okbase.net/hlwfirst/archive/193429.html#_Toc430951323