Win10系统
CUDA 9.0
CUDNN v7.3.1 for CUDA 9.0
Visual Studio 2015
Anaconda3-4.2.0-Windows-x86_64
CUDA-Z-0.10.251-64bit
因为我的显卡是GeForce GTX 1070的,支持GPU计算,可以安装tensorflow-gpu版本。首先,需要安装VS2015,因为CUDA安装的时候需要VC++的一些底层库;然后安装CUDA 9.0。安装CUDA的时候要注意,不要安装最高版本的CUDA,比如CUDA10.0,因为CUDA10.0对显卡驱动版本有要求,如果达不到,CUDA安装上之后没法使用。验证CUDA安装成功的方法是:cmd命令窗口中,将路径切换至CUDA安装目录下的NVIDIA GPU Computing Toolkit\CUDA\v9.0\extras\demo_suite文件夹,并运行bandwith.exe和devicequery.exe,如果都为Result=PASS,即为安装成功,如下图:
具体的CUDA版本与显卡驱动版本的对应关系,如下图所示
至于后面的Driver Version,可利用CUDA-Z这个绿色软件得到
下面开始安装Anaconda,版本选择Anaconda3-4.2.0-Windows-x86_64,该版本中的Python版本为3.5.2,网上说windows系统下面的TensorFlow安装只能使用python3.5.2,但是也有人用高版本的python成功了。这里我使用的是3.5.2.然后在Anaconda Prompt命令窗口中执行如下命令:python –m pip install –U pip,该命令是将pip升级为最新;然后执行pip install tensorflow-gpu,因为我的显卡可以支持CUDA,所以安装GPU版本的tensorflow,这样深度学习的时候时间会快很多;然后执行pip install keras,keras也是一个框架,它把tensorflow进一步封装起来,这样开发人员在使用的时候就可以不用过多关注底层细节了。
测试tensorflow和keras是否安装成功,在Anaconda Prompt命令窗口中执行import tensorflow 和 import keras。但我在测试的时候遇到了问题,如下:
提示是找不到dll,这个问题困扰了我好久,通过几天的网络搜索,慢慢地找到了门道,这种情况一般是由于缺少东西所致,要么缺少配置,要么缺少包或库。这里的配置是指环境变量path中不仅要把Anaconda加入到环境变量中,尤其是win10系统中,还要在PATHEXT中加上.DLL,如下图:
这里说的包或库,是指GPU版本的tensorflow用到的一些库,通过网上查找解决方案,最终是缺少cudnn的一些东西,cudnn是在CUDA基础上再次提升1.5倍的加速。安装对应CUDA9.0版本的cudnn,我在官网上选择的是v7.3.1,下载cudnn-9.0-windows10-x64-v7.3.1.20.zip,解压后将解压出来的bin、include、lib文件夹中的内容放到CUDA安装目录下的对应文件夹中,然后重启Anaconda Prompt命令窗口,执行pythonimport tensorflow出现如下错误:
经过分析,pip install tensorflow-gpu,默认安装的是最新的tensorflow,可能会依赖于高版本的库和包,比如上述的cudnn,根据此处错误提示,应该是pandas当前属于较低版本的,无法满足最新版本的tensorflow的使用,因此执行命令pip install –U pandas将pandas升级为最新的
再次运行import tensorflow,没有错误提示