Windows 下安装 TensorFlow 2.2 GPU 版 教程:坑多,整理出来方便大家

最近入坑 TensorFlow,没想到光安装框架就遇到了一系列的坑,耽误大量时间。

文章目录

  • 准备
    • 首先说明
    • 下载文件
    • 卸载旧版本 Python
  • 软件安装
    • 安装 Python 3.7
    • 安装 CUDA 10.1
    • 安装 CUDnn 7.6.5
    • 检验是否安装完成
  • TensorFlow 的安装
    • Pip 换源
    • 使用命令行创建环境
    • 使用 PyCharm 创建环境

准备

首先说明

  1. 本文不用 Anaconda,也不建议你用,太坑了!虚拟环境装了卸、卸了装,还是无法 import,谷歌了大量资料和问答也没找到解决办法;
  2. 安装的是 GPU 版,需要有 NVIDIA 显卡,台式机最低型号是 GTX 780,移动版最低型号是 GeForce 830M(普 G 系列)或 GTX 950M(GTX 系列),AMD 显卡不能安装
  3. 如果只需要装 CPU 版也可以参考本文,忽略 CUDA 和 CUDnn 这两个词有关的步骤就好。

下载文件

需要自己手动安装 3 个东西,CPU 版只需要 Python 3.7 即可:

  1. Python 3.7:官方下载页面(3.7.7 版)
  2. CUDA 10.1:官方下载页面
  3. CUDnn 7.6.5:官方页面,下载需要注册一个开发者账户

我把所有要用到的安装包(都是 Win10 版本)收集在 这里 了(2020.6.24)。

请不要在没有去 官方说明 确认过的情况下,自行选择其他版本,因为目前已知 Python 3.8 与 TensorFlow 2.2 存在兼容问题,高版本的 CUDA 和 CUDnn 也不受支持。如果想使用更新的版本,务必去官网确认一下。

Python 3.7 的其他子版本,如 3.7.5 等,可以正常使用。

卸载旧版本 Python

请在“程序和功能”里完整卸载 所有 其他版本的 Python,稍后我们安装 3.7;不需要卸载 Anaconda。

这一步是针对之前在 Windows 下、以安装包的形式装过 Python 3.8 及以上,或3.4 及以下的人。TensorFlow 目前仅支持 3.5~3.7,由于大家喜闻乐见的 Windows 开放式特色,即使在 VirtualEnv 下运行 pip,它也会调用 3.8 里的 pip,使得版本共存问题愈发混乱。

如果有 十足的 自信和经验能自行管理好 Windows 上的 Python 版本,可以忽略本步骤。

软件安装

安装 Python 3.7

这个比较简单,建议勾选“Add to PATH”选项方便使用,但不影响实际功能。完全零基础的朋友可以参考 这篇文章,写的比较详细。

安装完毕后,Win + R 运行一下命令 pythonpy,如果弹出了写有 Python 3.7 字样的黑窗口,说明 Python 已经就绪。

安装 CUDA 10.1

CUDA 安装包内是包含显卡驱动的,CUDA 10.1 要求显卡驱动版本不低于 418.x,因此如果驱动版本不够,就需要勾选安装驱动。

  1. 下载好 CUDA 安装程序,有 2 个多 G,双击运行;
  2. 弹出下图,指定安装临时目录的位置,注意 这不是安装路径,保持默认 OK 即可;Windows 下安装 TensorFlow 2.2 GPU 版 教程:坑多,整理出来方便大家_第1张图片
  3. 解压完成后正式进入安装向导。首先按照 N 卡驱动的一贯传统,要进行 漫长而没用 的“检查系统兼容性”,我电脑上足足进行了 20 分钟,这个阶段 耐心 等待就好,不要强行退出(即使最后无法安装也会有失败提示的);
  4. 然后同意用户许可;
  5. 安装选项要选择 “自定义”,如下图:Windows 下安装 TensorFlow 2.2 GPU 版 教程:坑多,整理出来方便大家_第2张图片
  6. 然后选择需要安装的组件,CUDA 全安装,GeForce Experience 和 PhysX 不需要安装,图形驱动程序 按自己情况勾选:安装包内带有的显卡驱动和目前电脑上已有驱动的版本号都显示在列表中,如果自己电脑上的显卡驱动高于它带有的版本,则不需要勾选安装,否则是需要安装的;Windows 下安装 TensorFlow 2.2 GPU 版 教程:坑多,整理出来方便大家_第3张图片
  7. 设置安装位置,这个保持默认就好;
  8. 接下来就让它自己装了。

安装 CUDnn 7.6.5

装好 CUDA 以后 CUDnn 就容易安装了。将下载好的 CUDnn 压缩包解压,将解压出的几个文件夹放入 CUDA 安装目录(默认为 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1)即可,如下图:
Windows 下安装 TensorFlow 2.2 GPU 版 教程:坑多,整理出来方便大家_第4张图片

检验是否安装完成

检查自己计算机的环境变量 PATH 中是否有 CUDA 的安装路径,如果有则说明安装成功。不会查看环境变量的可以参考 这篇文章。

TensorFlow 的安装

Python 开发中有“环境”的概念,也就是说,最好给每个项目建立一个自己的虚拟环境,在虚拟环境下安装项目用到的模块,这样要比在计算机上直接安装模块更容易管理,也避免了误操作的风险。因此,每当你想要创建一个新 TensorFlow 项目时,最好是连环境一起新建,并在虚拟环境中重新安装 TensorFlow。

Anaconda 的主要功能就是便于虚拟环境的管理,但结合包括我在内 一部分人的使用体验 来看,它实际上让这个过程更麻烦了。我们使用 VirtualEnv 来创建虚拟环境、安装 TensorFlow;如果执意要用 Anaconda 来创建虚拟环境,可以参考其他文章。

Pip 换源

由于众所周知的原因,国内用 Pip 等安装模块的速度比较感人,请先参照 这篇文章 来给 Pip 换成国内镜像源,以加快 TensorFlow 的下载速度。

使用命令行创建环境

  1. 首先用 VirtualEnv 创建一个新的虚拟环境 venv,这里 有详细的使用教程,廖雪峰博客的教程 也非常好;
  2. 打开管理员权限的 cmd,激活虚拟环境,在虚拟环境下(命令行开头有 (venv) 字样)执行:
    python -m pip install tensorflow-gpu
    
  3. 询问是否继续时输入 y 继续安装至完成;
  4. 执行命令 python 打开 Python 交互式窗口,输入以下代码:
    import tensorflow as tf
    
    返回信息:
    (时间): I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_101.dll
    
  5. 继续输入以下代码:
    print(tf.constant([1.0, 2.0]))
    
    不用理会闪过的一系列 CUDA 初始化成功的信息,最后(或者其中某一行)显示:
    tf.Tensor([1. 2.], shape=(2,), dtype=float32)
    
    则表示 TensorFlow 已经正确安装。

使用 PyCharm 创建环境

前面的操作如果嫌麻烦,建议用个 IDE 来辅助操作。比如用 PyCharm 做 Python 开发非常方便,创建虚拟环境的步骤是图形化的,不需要敲命令。这个软件的专业版收订阅费,社区版是免费开源的(初学者完全够用)。

JetBrains 看到了请给我广告费,谢谢。

  1. 进入 PyCharm 程序所在目录(默认为 C:\Program Files\JetBrains\PyCharm 20xx.x.x\bin),右键点击 pycharm64.exe 进入属性 → 兼容性 → 勾选“以管理员身份运行此程序”,并确定,如图:Windows 下安装 TensorFlow 2.2 GPU 版 教程:坑多,整理出来方便大家_第5张图片
  2. 打开 PyCharm,点击 Create New Project 新建工程;Windows 下安装 TensorFlow 2.2 GPU 版 教程:坑多,整理出来方便大家_第6张图片
  3. 设置新项目的名称、位置,并设置新的虚拟环境:Windows 下安装 TensorFlow 2.2 GPU 版 教程:坑多,整理出来方便大家_第7张图片
  4. 新项目会自动打开,PyCharm 会设置好虚拟环境;
  5. 等右下角读条结束后,点击左下角的 Terminal:Windows 下安装 TensorFlow 2.2 GPU 版 教程:坑多,整理出来方便大家_第8张图片
  6. 可以看到,此时我们已经运行在虚拟环境下了:Windows 下安装 TensorFlow 2.2 GPU 版 教程:坑多,整理出来方便大家_第9张图片
  7. 在终端上执行:
    python -m pip install tensorflow-gpu
    
    询问是否继续时输入 y 继续安装至完成;
  8. 在左侧边栏 Project 下面的工程根目录上右键,New → Python File:Windows 下安装 TensorFlow 2.2 GPU 版 教程:坑多,整理出来方便大家_第10张图片
  9. 命名新文件为 main.py,编辑该文件,输入如下代码:
    import tensorflow as tf
    a = tf.constant([1.0, 2.0])
    print(a)
    
    保存文件;
  10. 在菜单中选择 Run → Run… 进行首次运行时的快速配置,如图:Windows 下安装 TensorFlow 2.2 GPU 版 教程:坑多,整理出来方便大家_第11张图片
  11. 在弹出的框中点击“2. main”就设置好了(以后可以直接点击窗口右上角的绿色三角形来运行);
  12. 无视闪过的各种消息,如果出现如下结果,证明一切就绪:Windows 下安装 TensorFlow 2.2 GPU 版 教程:坑多,整理出来方便大家_第12张图片
  13. 如果看不惯一大片飚红的提示信息,可以在 main.py 文件的 最前端 加上两行:
    import os
    os.environ['TF_CPP_MIN_LOG_LEVEL'] = '1'
    

至此,完成了 TensorFlow 的安装和配置。

你可能感兴趣的:(Python,TensorFlow)