Windows下配置Python TensorFlow深度学习环境(GPU版) TensorFlow2.7_Python3.7

目录

  • 一、获取Anaconda
  • 二、安装CUDA
    • (1)检查系统
    • (2)查看对应关系
    • (3)下载CUDA
  • 三、安装TensorFlow
    • (1)为TensorFlow创建虚拟环境
    • (2)安装TensorFlow——命令行安装
    • (3)安装TensorFlow——自行下载安装
    • (4)测试

一、获取Anaconda

要使用TensorFlow,建议先安装Anaconda,配置对应的虚拟环境。
首先去Anaconda的官网下载安装包,下载地址为: https://www.anaconda.com/products/distribution
Windows下配置Python TensorFlow深度学习环境(GPU版) TensorFlow2.7_Python3.7_第1张图片
anaconda支持最新版本为Python 3.9,其实可以不用安装Python 3.9,因为都是支持之前版本的Python。

注意:个人电脑,在安装过程运行到Install for时,建议选择All Users。非个人电脑,选择Just Me这个选项,选另一项的话需要管理员权限。

之后一路Next即可。

二、安装CUDA

(1)检查系统

首先检查自己的系统硬件,确定电脑GPU所能支持的CUDA版本,对应去下载Python以及TensorFlow。

桌面右键>NVIDIA控制面板>帮助>系统信息>组件。
Windows下配置Python TensorFlow深度学习环境(GPU版) TensorFlow2.7_Python3.7_第2张图片

可以看到,我的NVIDIA CUDA版本显示为11.7,然而我实际安装的CUDA版本为11.3。这是因为我前期安装11.7版本的CUDA之后出了一些问题,因此卸载重新安装CUDA11.3,此处不赘述。

(2)查看对应关系

前往TensorFlow的官网 :
https://tensorflow.google.cn/
在install栏目中选择Windows,也可以直接前往链接:
https://tensorflow.google.cn/install/source_windows
由于有些资料还未翻译成中文,建议语言选择English。

下滑,拉到 经过测试的构建配置 标题下(英文为Tested build configurations),查看TensorFlow版本,Python版本,cuDNN版本以及CUDA版本的对应表格。
Windows下配置Python TensorFlow深度学习环境(GPU版) TensorFlow2.7_Python3.7_第3张图片
我打算安装的TensorFlow为2.7,因此Python也选择3.7,对应的cuDNN选择8.1,CUDA需要大于等于11.2。

(3)下载CUDA

前往NVIDIA安装CUDA,网址为 CUDA Toolkit Archive ,可以直接选择上文对应的11.2安装。
Windows下配置Python TensorFlow深度学习环境(GPU版) TensorFlow2.7_Python3.7_第4张图片

三、安装TensorFlow

在安装Anaconda之后,Windows启动栏会添加Anaconda3 (64-bit)程序组,右键“以管理员身份打开”点击Anaconda Prompt(Anaconda3),后续操作都在Anaconda Prompt中进行。

打开Anaconda Prompt时,环境为默认的base环境,建议先创建一个针对TensorFlow的虚拟环境,之后安装对应的Python,cudatoolkit以及cuDNN。

在安装TensorFlow时,有两种方式,一种是直接在命令行输入安装命令,此方式适用于网络连接优良的情况;一种是下载下来对应的TensorFlow安装包,自行安装。

(1)为TensorFlow创建虚拟环境

首先创建TensorFlow虚拟环境,在上文中,预下载的TensorFlow为2.7,Python选择为3.7,把虚拟环境命名为py37_tf27,创建命令为:

conda create --name py37_tf27

之后激活虚拟环境py37_tf27,此举是为了切换到该虚拟环境:

conda activate py37_tf27

切换完成之后,命令行前面的字样变为(py37_tf27),即已切换到py37_tf27环境。

可以查看一下已有的虚拟环境:

conda info -e

Windows下配置Python TensorFlow深度学习环境(GPU版) TensorFlow2.7_Python3.7_第5张图片
在创建虚拟环境时,并未安装对应的Python,因此需要先安装一下Python3.7,命令:

conda install python=3.7

加入一些镜像源的网站:

conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/win-64/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --set show_channel_urls yes

(2)安装TensorFlow——命令行安装

如果是命令行安装,代码很简单,下述三行命令分别安装TensorFlow、cudatoolkit、cuDNN。由于我安装的CUDA版本为11.3,因此cudatoolkit版本需要也为11.3。

如果安装CUDA版本为11.2,那么cudatoolkit版本对应为11.2即可。在py37_tf27的环境下,输入:

pip install tensorflow-gpu==2.7.0
conda install cudatoolkit=11.3
conda install cudnn=8.1

此方式适用于连接TensorFlow网站的网速较好的情况,国内多数用户会出现部分包安装不上的情况,为此,引出第二种安装方式。

(3)安装TensorFlow——自行下载安装

在pip install tensorflow-gpu==2.7.0时,其实可以在cmd种看到需要下载的对应版本的tensorflow的名称。例如我拟下载的TensorFlow为2.7,对应版本的Python为3.7,则可以看到,cmd中打算下载的的名称为:

tensorflow_gpu-2.7.0-cp37-cp37m-win_amd64.whl

地址为:https://storage.googleapis.com/tensorflow/windows/gpu/
我们可以自行下载安装,在浏览器中输入:
tensorflow_gpu-2.7.0-cp37-cp37m-win_amd64.whl
会自动下载tensorflow_gpu-2.7.0-cp37-cp37m-win_amd64.whl文件。

下载好之后,将其移动到anaconda安装目录中的envs中py37_tf27的Scripts文件夹下,可以参考路径为:

anaconda\envs\py37_tf27\Scripts

重新打开新的Anaconda Prompt命令行,先激活py37_tf27的虚拟环境,然后切换操作目录到anaconda\envs\py37_tf27\Scripts文件夹下:

conda activate py37_tf27
cd\
d:
cd Anaconda3
cd Scripts

再使用py37_tf27虚拟环境中的pip,安装tensorflow_gpu-2.7.0-cp37-cp37m-win_amd64.whl文件。命令为:

D:\Anaconda3\envs\py37_tf27\Scripts\pip.exe install tensorflow_gpu-2.7.0-cp37-cp37m-win_amd64.whl

此时可以直接从离线下载的tensorflow_gpu-2.7.0-cp37-cp37m-win_amd64.whl文件直接安装tensorflow_gpu-2.7.0。

安装tensorflow_gpu-2.7.0完毕后,安装cudatoolkit、cuDNN。

conda install cudatoolkit=11.3
conda install cudnn=8.1

(4)测试

在py37_tf27虚拟环境中,先输入python进入Python环境。

首先测试gpu是否可用,弹出的结果应为yes。

import tensorflow as tf
tf.test.is_gpu_available()

Windows下配置Python TensorFlow深度学习环境(GPU版) TensorFlow2.7_Python3.7_第6张图片

然后测试数据结果:

a = tf.constant([1.0, 2.0], name="a")
b = tf.constant([1.0, 2.0], name="b")
result = tf.add(a, b, name="add")
print(result)

结果展示如下:
在这里插入图片描述

如果有的情况下:
tensorflow/core/platform/http://cpu_feature_guard.cc:151] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations: AVX AVX2
在这里插入图片描述

这是一个警告,该警告提示tensorflow可以以更快的速度运行。

因为tensorflow默认发行版是在没有CPU扩展的情况下构建的,例如SSE4.1,SSE4.2,AVX,AVX2,FMA等。默认版本旨在与尽可能多的 CPU 兼容。如果有一个GPU,我们可以不关心AVX支持,在这种情况下,可以通过以下方式忽略此警告:

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

输入之后无警告。
Windows下配置Python TensorFlow深度学习环境(GPU版) TensorFlow2.7_Python3.7_第7张图片

消除此警告方法的原理是把tensorflow的警告等级为2的警告忽略。

至此,安装成功。

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