【安装】Windows下 TensorFlow 的安装(包含:CUP版、GPU版、CUDA、cuDNN)——最后更新日期 2018-05-30

版权声明:本文为博主原创文章,欢迎讨论共同进步。 https://blog.csdn.net/tz_zs/article/details/74779953

____tz_zs

您可以直接使用pip安装tensorflow,只需一行代码就安装好了。

cpu版:

pip3 install --upgrade tensorflow

·

gpu版:

pip3 install --upgrade tensorflow-gpu

·

但是,推荐您使用Anaconda,用Anaconda可以创建和管理虚拟环境,并能方便的安装和管理三方库,将tensorflow安装在虚拟环境中也能避免不必要的干扰。


1.安装Anaconda

我使用的是Anaconda集成的开发环境,默认的python版本为3.6。

关于Anaconda安装、Python多版本、国内源等问题:http://blog.csdn.net/tz_zs/article/details/73459800


2.创建虚拟环境

TensorFlow对3.5版本python支持比较好,我们用Anaconda创建一个python3.5的环境(现在用3.6也可以,据说已经完美支持了)。

打开Anaconda Prompt,输入:

conda create -n tensorflow python=3.5

·

当然,直接在Anaconda Navigator的Environments创建环境也是一样的,环境名称我取作了tensorflow。


3.激活环境

在输入以下命令,激活环境

activate tensorflow

·

其实就是激活切换到tensorflow这个虚拟环境下,与在Environments中直接点击来激活切换环境是一样的


4.安装cpu版的TensorFlow

比较简单,直接输入以下命令安装就可以了

·

pip install tensorflow  

·


5.安装gpu版的TensorFlow

如果gpu支持,可以安装gpu版的

pip install tensorflow-gpu

·

因为需要GPU加速,我们还需要安装cuda和cuDnn(专门为deep learning准备的加速库)。

(1)安装CUDA:

直接去下载,安装


cuda安装完成后默认的环境变量配置CUDA_PATH是C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0

但是这样不能直接访问到bin和lib\x64下的程序包

在path中加上这两个路径:



(2)安装cuDNN

下载 cudnn 需要你在官网填一些表,注册成开发者。

下载下来就是一个压缩包,解压把下面这些文件复制到相应位置即可

C:\cuda\bin\cudnn64_5.dll —> C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin

C:\cuda\include\cudnn.h —> C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\include

C:\cuda\lib\x64\cudnn.lib —> C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64


6.可能遇到的问题:

如果import tensorflow时,报了以下的类似错误,是因为cuda的相关的dll的问题

  • 可能原因及解决办法一:步骤5第二步没有配置path(有些教程并没有写这一步,要注意)
  • 可能原因及解决办法二:是你安装的是更高版本的cuDNN的问题,如:cuDNN 6.0。降级成5.1的就可以了(根据github上的讨论,应该是版本匹配的问题 | 问题讨论地址
  • 可能原因及解决办法三:安装一个Visual Studio 2015 Community一劳永逸(还是dll的问题,方法来自某篇问答)

·

 File "C:\Anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 18, in swig_import_helper
    return importlib.import_module(mname)
  File "C:\Anaconda3\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 986, in _gcd_import
  File "<frozen importlib._bootstrap>", line 969, in _find_and_load
  File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 666, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 577, in module_from_spec
  File "<frozen importlib._bootstrap_external>", line 906, in create_module
  File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
ImportError: DLL load failed: The specified module could not be found.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Anaconda3\lib\site-packages\tensorflow\python\__init__.py", line 66, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "C:\Anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 21, in <module>
    _pywrap_tensorflow = swig_import_helper()
  File "C:\Anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 20, in swig_import_helper
    return importlib.import_module('_pywrap_tensorflow')
  File "C:\Anaconda3\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
ImportError: No module named '_pywrap_tensorflow'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "C:\Anaconda3\lib\site-packages\tensorflow\__init__.py", line 24, in <module>
    from tensorflow.python import *
  File "C:\Anaconda3\lib\site-packages\tensorflow\python\__init__.py", line 72, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "C:\Anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 18, in swig_import_helper
    return importlib.import_module(mname)
  File "C:\Anaconda3\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 986, in _gcd_import
  File "<frozen importlib._bootstrap>", line 969, in _find_and_load
  File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 666, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 577, in module_from_spec
  File "<frozen importlib._bootstrap_external>", line 906, in create_module
  File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
ImportError: DLL load failed: The specified module could not be found.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Anaconda3\lib\site-packages\tensorflow\python\__init__.py", line 66, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "C:\Anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 21, in <module>
    _pywrap_tensorflow = swig_import_helper()
  File "C:\Anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 20, in swig_import_helper
    return importlib.import_module('_pywrap_tensorflow')
  File "C:\Anaconda3\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
ImportError: No module named '_pywrap_tensorflow'

Failed to load the native TensorFlow runtime. 

·

写在最后

新版Anaconda的库里已经有集成tensorflow,直接勾选安装,也是可以直接使用的。不过没有深入使用,不知道有没有问题,然后就是tensorflow的版本不是最新的。

补充:根据官方说法“ conda软件包是社区支持的,没有正式的支持。也就是说,TensorFlow团队既不测试也不维护这个conda软件包。使用该软件包需要您自担风险。”



2018年1月3日补充

1、tensorflow官网的资料越来越详细了:在Windows上安装TensorFlow

2、从源码安装TensorFlow(使用源码安装可以支持不同的CUDA/CuDNN版本,但因为编译工具Bazel在windows上还不大成熟,所以暂不推荐)



2018年5月30日补充

我之前的环境版本应该是:Windows 10 + Python 3.5 + cuDNN 5.1 + CUDA 8.0 + Tensorflow 1.2


这次重装了更新的版本: tensorflow 1.8版本,需要CUDA 9.0

ImportError: Could not find 'cudart64_90.dll'. 
TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable.
 Download and install CUDA 9.0 from this URL: https://developer.nvidia.com/cuda-toolkit

·

在官网下载的最新版是 cuda 9.2.88 (实测不行,9.2的版本的那些个文件是‘cublas64_92.dll’),请务必在历史包里寻找9.0的版本下载安装。(个人感觉这样一一对应的安装相应版本是最简单的方法了,也不容易出现未知的错误。其他的有一些能够方便的升级CUDA的方法,大家感兴趣可以自行去查找)



·

由下图可知,我们需要下载的配套版本是cuDNN v7.1.4


文件的复制与之前的情况类似。



阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页