在win10下安装Tensorflow(CUDA8.0+cuDNN5.1)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/JohinieLi/article/details/76960112

TensorFlow 有两个版本:CPU 版本和 GPU 版本。GPU 版本需要 CUDA 和 cuDNN 的支持,CPU 版本不需要。如果你要安装 GPU 版本,请先确认你的显卡支持 CUDA。我安装的是 GPU 版本,采用 pip 安装方式,所以就以 GPU 安装为例,CPU 版本只不过不需要安装 CUDA 和 cuDNN。

  • http://www.nvidia.com/object/cuda_gpus.html确认你的显卡支持 CUDA。(若在列表中则支持CUDA编程)
  • 确保你的 Python 版本是 3.5 64 位及以上。(TensorFlow 从 1.2 开始支持 Python
    3.6,之前的官方是不支持的)
  • 确保你有稳定的网络连接。
  • 确保你的 pip 版本 >= 8.1。用 pip -V 查看当前 pip 版本,用 python -m pip install -U
    pip 升级pip 。
  • 确保你安装了 VS2015 或者 2013 或者 2010。此条非必须,删除。

此外,建议安装 Anaconda,因为这个集成了很多科学计算所必需的库,能够避免很多依赖问题,

安装TensorFlow

由于Google那帮人已经把 TensorFlow 打成了一个 pip 安装包,所以现在可以用正常安装包的方式安装 TensorFlow 了,就是进入命令行执行下面这一条简单的语句:

# GPU版本
pip install --upgrade tensorflow-gpu

# CPU版本
pip install --upgrade tensorflow

然后就开始安装了,速度视网速而定。

安装网之后你试着在 Python 中import tensorflow 会告诉你没有找到 CUDA 和 cuDNN,所以下一步就是安装这两个东西。

安装CUDA 8.0

CUDA各版本下载地址:https://developer.nvidia.com/cuda-toolkit-archive 注意,下载的时候有些版本需要区分desktop(台式机)和 notebook(笔记本)。

如果需要CUDA8.0.44win10的资源,请在下面的链接下载:
https://developer.nvidia.com/compute/cuda/8.0/prod/local_installers/cuda_8.0.44_win10-exe

下载好了后就可以直接安装了,CUDA的默认安装目录为:C:\Program Files\NVIDIA GPU Computing Toolkit\ 这里推荐使用默认的安装路径。如果没有VS环境的建议首先安装好vs环境,只需要选择安装C++环境即可。

这里写图片描述

安装完之后CUDA_PATH_V5_0和CUDA_PATH这两个系统变量会自动为你添加上。

环境变量配置:
cuda8.0安装完成之后在系统环境变量中自动配置了两个系统变量
CUDA_PATH:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0
CUDA_PATH_V8_0:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0
但是为了之后的vs2013的配置做准备我们需要在配置五个系统变量
CUDA_BIN_PATH:%CUDA_PATH%\bin
CUDA_LIB_PATH:%CUDA_PATH%\lib\Win32
CUDA_SDK_BIN:%CUDA_SDK_PATH%\bin\Win64
CUDA_SDK_LIB:%CUDA_SDK_PATH%\common\lib\x64
CUDA_SDK_PATH:C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0
在系统环境变量path后添加如下内容
;%CUDA_LIB_PATH%;%CUDA_BIN_PATH%;%CUDA_SDK_LIB_PATH%;%CUDA_SDK_BIN_PATH%;

测试一下是否安装成功,
打开cmd控制台命令行,命令行输入 nvcc -V (注意是大写V),看到版本信息就表示安装成功了。
这里写图片描述

安装cuDNN 5.1

其实这个是一个压缩包,解压放到任何一个目录下就行,然后把你放的那个目录添加到Path 环境变量里。

比如:

这里写图片描述

这里写图片描述

到这里如果你 import tensorflow 出现一堆报错信息的话,可以尝试这样解决:将这些文件复制到相应的位置,

  1. C:\cuda\bin\cudnn64_5.dll —> C:\Program Files\NVIDIA GPU Computing
    Toolkit\CUDA\v8.0\bin
  2. C:\cuda\include\cudnn.h —> C:\Program Files\NVIDIA GPU Computing
    Toolkit\CUDA\v8.0\include
  3. C:\cuda\lib\x64\cudnn.lib —> C:\Program Files\NVIDIA GPU Computing
    Toolkit\CUDA\v8.0\lib\x64

除此之外,还有一个办法就是将C:\cuda\bin 也加进Path 环境变量里,经过测试这样也是可行的。

然后再次import tensorflow 应该就成功了。

测试

用简单的矩阵乘法测试一下:

import tensorflow as tf

a = tf.random_normal((100, 100))
b = tf.random_normal((100, 500))
c = tf.matmul(a, b)
sess = tf.InteractiveSession()
sess.run(c)

这里写图片描述

这样就成功的在win10 下安装好Tensorflow了。

安装可能出现的问题

1、Cannot remove entries from nonexistent file
如果在安装 TensorFlow 的时候出现类似

 Cannot remove entries from nonexistent file c:\users\li\anaconda3\lib\site-packages\easy-install.pth

的错误,那么可以参考 Cannot remove entries from nonexistent #622osx 10.11 installation issues #135,里面说了好多种解决办法,我在这里介绍一种方法:在
pip3 install --upgrade tensorflow-gpu 之前先执行 pip install --upgrade --ignore-installed setuptools

2、ImportError: DLL load failed: 找不到指定的模块。 和 ImportError: No module named ‘_pywrap_tensorflow_internal’

这里写图片描述

这里写图片描述

这里写图片描述

如果在 import tensorflow 的时候这两个问题同时出现,那么很有可能是你的 cuda 和 cudnn 版本有问题,例如你的 cuda 版本是 8.0.60,而正确的是 8.0.44,重新安装正确的版本(文章里提供的)就可以。参考 On Windows, running “import tensorflow” generates No module named “_pywrap_tensorflow” error

3、ImportError: No module named ‘tensorflow.python.pywrap_tensorflow_

这里写图片描述

如果在 import tensorflow 的时候出现此问题,那么你可能是在 tensorflow 的源码目录里进入了 python 解释器。离开该目录重新进入 python 解释器即可。

参考资料:
1、http://blog.csdn.net/weixin_36368407/article/details/54177380 2017.8.8
2、http://blog.csdn.net/m624197265/article/details/45700619 2017.8.8
3、http://tieba.baidu.com/p/4840217199 2017.8.8
4、https://stackoverflow.com/questions/42011070/on-windows-running-import-tensorflow-generates-no-module-named-pywrap-tenso 2017.8.8
5、http://blog.csdn.net/u010099080/article/details/53418159 2017.8.8

猜你喜欢

转载自blog.csdn.net/JohinieLi/article/details/76960112
今日推荐