在 Windows 上安装 TensorFlow(转载)

时间:2021-06-21 16:42:58

在 Windows 上安装 TensorFlow

windows下配置安装Anaconda+tensorflow

Spyder——科学的Python开发环境

Windows7 安装TensorFlow(本人试了好多方法后的成果)

TensorFlow在windows上安装与简单示例

 
 
>>> import os
>>> os.environ['TF_CPP_MIN_LOG_LEVEL'] = ''
>>> import tensorflow as tf
>>> hello = tf.constant('Hello,tensorflow')
>>> sess = tf.Session()
>>> print(sess.run(hello))
b'Hello,tensorflow'

本指南将介绍如何在 Windows 上安装 TensorFlow。虽然这些说明可能也适用于其他 Windows 版本,但我们只在满足以下要求的计算机上验证过这些说明(而且我们只支持在此类计算机上按这些说明操作):

  • 64 位、x86 台式机或笔记本电脑
  • Windows 7 或更高版本

确定要安装哪种 TensorFlow

您必须从以下 TensorFlow 类型中选择其一来进行安装:

  • 仅支持 CPU 的 TensorFlow。如果您的系统没有 NVIDIA® GPU,则必须安装此版本。请注意,此版本的 TensorFlow 通常更容易安装(用时通常在 5 或 10 分钟内),所以即使您拥有 NVIDIA GPU,我们也建议先安装此版本。预编译的二进制文件将使用 AVX 指令。
  • 支持 GPU 的 TensorFlow。TensorFlow 程序在 GPU 上的运行速度通常要比在 CPU 上快得多。因此,如果您的系统配有满足以下所示先决条件的 NVIDIA® GPU,并且您需要运行性能至关重要的应用,则最终应安装此版本。

运行支持 GPU 的 TensorFlow 所需满足的要求

如果您要使用本指南描述的其中一种方式安装支持 GPU 的 TensorFlow,就必须在系统上安装以下 NVIDIA 软件:

  • CUDA® 工具包 9.0。如需了解详情,请参阅 NVIDIA 的文档。请务必按照 NVIDIA 文档中的说明将相关的 CUDA 路径名附加到 %PATH% 环境变量上。
  • 与 CUDA 工具包 9.0 相关联的 NVIDIA 驱动程序。
  • cuDNN v7.0。如需了解详情,请参阅 NVIDIA 文档。请注意,cuDNN 通常安装在与其他 CUDA DLL 不同的位置。请务必将 cuDNN DLL 的安装目录添加到 %PATH% 环境变量上。
  • CUDA 计算能力为 3.0 或更高的 GPU 卡(用于从源代码编译),以及 CUDA 计算能力为 3.5 或更高的 GPU 卡(用于安装我们的二进制文件)。如需了解支持的 GPU 卡的列表,请参阅 NVIDIA 文档

如果您的某个软件包不同于上述版本,请改为指定的版本。特别是,cuDNN 版本必须完全匹配:如果无法找到 cuDNN64_7.dll,TensorFlow 就不会加载。要使用不同版本的 cuDNN,您必须从源代码构建。

确定如何安装 TensorFlow

您必须选择安装 TensorFlow 的方式。目前可支持如下几种方式:

  • “原生”pip
  • Anaconda

原生 pip 会直接在您的系统上安装 TensorFlow,而不是通过虚拟环境。原生 pip 安装并未隔离在单独的容器中进行,因此可能会干扰系统中其他基于 Python 的安装。但是,如果您熟悉 pip 和您的 Python 环境,通常只需一条命令即可进行原生 pip 安装。此外,如果使用原生 pip 安装,用户可以从系统上的任何目录运行 TensorFlow 程序。

在 Anaconda 中,您可以使用 conda 来创建一个虚拟环境。但是,在 Anaconda 内部,我们建议使用 pip install 命令来安装 TensorFlow,而不要使用 conda install 命令。

注意:conda 软件包是由社区提供支持的,并没有任何官方支持。也就是说,TensorFlow 团队既不测试也不维护 conda 软件包。若使用该软件包,您需要自行承担相关风险。

使用原生 pip 进行安装

如果您的计算机上未安装以下某个 Python 版本,请立即安装:

在 Windows 上,TensorFlow 支持 Python 3.5.x 和 3.6.x。请注意,Python 3 附带有 pip3 软件包管理器,您需使用此程序来安装 TensorFlow。

要安装 TensorFlow,请启动终端。然后在该终端中发出正确的 pip3 install 命令。要安装仅支持 CPU 的 TensorFlow 版本,请输入以下命令:

 
C:\> pip3 install --upgrade tensorflow

要安装 GPU 版本的 TensorFlow,请输入以下命令:

 
C:\> pip3 install --upgrade tensorflow-gpu

使用 Anaconda 进行安装

Anaconda 安装是由社区提供支持的,并没有任何官方支持。

按照以下步骤在 Anaconda 环境中安装 TensorFlow:

  1. 按照 Anaconda 下载网站上的说明下载并安装 Anaconda。

  2. 通过调用以下命令创建名为 tensorflow 的 conda 环境:

     
    C:> conda create -n tensorflow pip python=3.5 
  3. 通过发出以下命令激活 conda 环境:

     
    C:> activate tensorflow
    (tensorflow)C:> # Your prompt should change
  4. 发出相应命令以在 conda 环境中安装 TensorFlow。要安装仅支持 CPU 的 TensorFlow 版本,请输入以下命令:

     
    (tensorflow)C:> pip install --ignore-installed --upgrade tensorflow 

    要安装 GPU 版本的 TensorFlow,请输入以下命令(在同一行):

     
    (tensorflow)C:> pip install --ignore-installed --upgrade tensorflow-gpu 

验证您的安装

启动终端。

如果您是通过 Anaconda 进行安装,请激活您的 Anaconda 环境。

从 shell 中调用 Python,如下所示:

 
$ python

在 Python 交互式 shell 中输入以下几行简短的程序代码:

 
>>> import tensorflow as tf
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess = tf.Session()
>>> print(sess.run(hello))

如果系统输出以下内容,说明您可以开始编写 TensorFlow 程序了:

 
Hello, TensorFlow!

如果系统输出一条错误消息而不是问候语,请参阅常见的安装问题

如果您刚开始接触机器学习,建议您阅读以下内容:

如果您拥有机器学习方面的经验,但刚开始接触 TensorFlow,请参阅 TensorFlow 使用入门

常见的安装问题

我们借助 Stack Overflow 来记录 TensorFlow 安装问题及其补救措施。下表包含了 Stack Overflow 上一些常见安装问题解答的链接。如果您遇到了下表中未列出的错误消息或其他安装问题,请在 Stack Overflow 上进行搜索。如果 Stack Overflow 中没有显示相关错误消息,请在 Stack Overflow 上提一个新的问题,并指定 tensorflow 标签。

Stack Overflow 链接 错误消息
41007279
 
[...\stream_executor\dso_loader.cc] Couldn't open CUDA library nvcuda.dll
41007279
 
[...\stream_executor\cuda\cuda_dnn.cc] Unable to load cuDNN DSO
42006320
 
ImportError: Traceback (most recent call last):
File "...\tensorflow\core\framework\graph_pb2.py", line 6, in
from google.protobuf import descriptor as _descriptor
ImportError: cannot import name 'descriptor'
42011070
 
No module named "pywrap_tensorflow"
42217532
 
OpKernel ('op: "BestSplits" device_type: "CPU"') for unknown op: BestSplits
43134753
 
The TensorFlow library wasn't compiled to use SSE instructions
38896424
 
Could not find a version that satisfies the requirement tensorflow

Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 3.0 License, and code samples are licensed under the Apache 2.0 License. For details, see our Site Policies. Java is a registered trademark of Oracle and/or its affiliates.