从零开始:Windows 深度学习GPU环境配置完整指南(以TensorFlow为例)

部署运行你感兴趣的模型镜像

前言:

        此前所编写的环境配置指南主要面向具备一定Python编程经验的读者,因此在细节描述上有所欠缺。为更好地帮助初涉深度学习领域的学生或研究者,现重新撰写一份详尽的深度学习环境配置教程。

        本文系统性地介绍了在Windows系统中搭建深度学习开发环境的完整流程:1)从官方渠道下载并安装Python 3.9.11;2)安装轻量化的Miniconda,包括终端安装步骤与环境变量配置;3)Visual Studio Code的下载与安装;4)TensorFlow-GPU环境配置,具体涵盖conda虚拟环境的创建、CUDA工具包与cuDNN库的安装,以及受版本约束的TensorFlow安装方法。文中特别强调了环境变量设置、版本兼容性等关键配置细节,并提供了验证安装是否成功的具体方法。本教程内容详尽、步骤清晰,尤其适合在Windows系统下从零开始配置深度学习开发环境的新手用户。

目录

1、python下载

2、miniconda下载与安装

3、vscode安装与配置

4、tensorflow-GPU环境配置

5、pytorch环境配置

6、vscode与miniconda关联

报错

问题解答

1、python下载

        进入到python官网下载地址(Python Releases for Windows | Python.org),如图所示,根据自己的项目需求进行下载,本文选择下载深度学习常用的3.9.11版本

        step1:安装图片的安装步骤进行安装,勾选完Add python 3.9 to PATH之后,点击install Now进行安装

2、miniconda下载与安装

        相较于Anaconda,miniconda占用空间小,且满足深度学习的环境配置需求,因此下载miniconda即可。

        step1:打开miniconda官网(Miniconda - Anaconda),在依次点击installing miniconda->Windows installation->PowerShell->④(复制),会自动复制一条指令的,step2需要用到。

        step2:安装图片中的操作顺序打开终端管理员,在终端管理员中输入刚刚所复制的指令

        step3:在终端管理员中按下ctrl+v(如果不行,则按下ctrl+shift+v)粘贴step1所复制的指令,然后点击回车。如图所示。

        注:有些电脑在完成step3时,miniconda是已经下载好的,但有些电脑没有,例如本文所使用的电脑则没有,如同所示。

        step4(可选):根据终端管理员所提供的路径(红色框框起来的),找到在文件资源管理中心找到miniconda安装包,选择管理员安装。

            step5(可选):按照以下安装步骤进行安装,勾选相应的内容

step6:将miniconda添加至系统环境变量中,以便于后续在windows终端中可以使用conda指令

        step1:点击Anaconda Prompt,输入where conda

        注:三个红色框中的内容等会是要添加到系统环境变量中的

        step2:在电脑中搜索并打开“编辑系统环境变量”。点击“环境变量”

step3:双击path,安装以下步骤将step1中三个红色框中的内容添加至PATH中,即可

3、vscode安装与配置

        step1:进入vscode官网,点击download for Windows下载vscode。

        step2安装以下安装步骤,勾选相应地选项

        注:可以根据自己的需求更改安装路径

        step3:重启电脑,即可完成安装

        step4:安装图片中的步骤安装插件,实现vscode汉化

step5:根据图示步骤找到"auto save"选项,按照个人偏好设置自动保存功能。

step6:登录账号备份所有设置,方便日后更换设备时,只需登录VSCode即可自动同步原有配置。

4、tensorflow-GPU环境配置

step1:进入tensorflow官网(Install TensorFlow 2

注:如果是中文页面,请切换至英文界面,切换步骤如图所示。

step2按照Step-by-step instructions所提供的步骤进行安装

step1:创建conda环境,win+r并输入cmd点击回车打开终端,输入

conda create --name tf python=3.9

补充:conda环境创建指令:conda create --name <自定义名称> python=<项目所需要用的python版本>

step2:安装终端提示进行安装,效果如图所示。

step3:输入conda activate tf激活环境

step4:在step3终端中输入以下指令,安装Tensorflow-GPU所需安装包

conda install -c conda-forge cudatoolkit=11.2 cudnn=8.1.0

step5:依次输入以下指令安装TensorFlow

pip install --upgrade pip
# Anything above 2.10 is not supported on the GPU on Windows Native
pip install "tensorflow<2.11" 

step6:依旧在原来的终端中输入以下指令,验证所安装的TensorFlow是否可用

(1)验证CPU
python -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000, 1000])))"
(2)验证GPU
python -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"

        如果验证成功,终端会输出以下信息:

5、pytorch环境配置

        请参考:目标检测:YOLOv11(Ultralytics)环境配置-优快云博客

6、vscode与miniconda关联

        step1:打开设置json

  1. 打开 VSCode,点击左下角齿轮图标,选择 设置,或者使用快捷键 Ctrl + , 打开设置页面。
  2. 在搜索框中搜索 terminal.integrated.profiles.windows。
  3. 点击 Edit in settings.json(在图中位置4处有这个选项,点击打开)。

        step2:在 settings.json 中添加如下的代码来定义 Anaconda 环境为终端配置

{
    "terminal.integrated.profiles.windows": {
        "Anaconda Powershell": {
            "path": "C:\\ProgramData\\Anaconda3\\shell\\condabin\\conda-hook.ps1",
            "args": ["-ExecutionPolicy", "ByPass", "-NoExit", "-Command", "conda activate base"]
        },
        "Anaconda CMD": {
            "path": "cmd.exe",
            "args": ["/K", "C:\\ProgramData\\Anaconda3\\Scripts\\activate.bat C:\\ProgramData\\Anaconda3"]
        }
    },
    "terminal.integrated.defaultProfile.windows": "Anaconda CMD" 
}

        注:

  1. 注意改一下,"C:\\ProgramData\\Anaconda3" 是 Anaconda 的默认安装路径,您可以根据自己安装的路径进行调整,比如我自己的是  "D:\\anaconda" 。查找 Anaconda安装位置的方式我放到文章最后附录。
  2. 代码里面的"Anaconda Powershell"和"Anaconda CMD"任选一个加入就可以。
  3. 如果喜欢通过 PowerShell 来启动 Anaconda 环境,选择添加Anaconda Powershell;如果你更习惯使用 Windows 的命令提示符(CMD)可以选 Anaconda CMD
  4. 你自己原有的代码不用删,比如Git Bush之类都可以保留,只添加新的进去。我的代码添加完之后长这样:

        step3:测试VSCode 终端的 Anaconda 配置

  1. 打开 VSCode,按 Ctrl + ~ 打开集成终端。
  2. 终端应该自动启动您配置的 Anaconda 环境。输入 conda info 来验证当前环境是否正确启用。如果显示的环境是 base 或您期望的 Anaconda 环境,则表示配置成功。

step4:设置 VSCode 在启动时自动激活 Anaconda 环境,

{
    "python.terminal.activateEnvironment": true
}

        完整settings.json 如图所示(仅供参看,具体原因见step2的注释

报错

1、验证tensorflowerCPU失败,报错信息如下:

(tf) C:\Users\23765>python -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000, 1000])))"                                                                                                                                   A module that was compiled using NumPy 1.x cannot be run in                                                             NumPy 2.0.2 as it may crash. To support both 1.x and 2.x                                                                versions of NumPy, modules must be compiled with NumPy 2.0.                                                             Some module may need to rebuild instead e.g. with 'pybind11>=2.12'.                                                                                                                                                                             If you are a user of the module, the easiest solution will be to                                                        downgrade to 'numpy<2' or try to upgrade the affected module.                                                           We expect that some modules will need time to support NumPy 2.                                                                                                                                                                                  Traceback (most recent call last):  File "<string>", line 1, in <module>                                                  File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\__init__.py", line 37, in <module>                       from tensorflow.python.tools import module_util as _module_util                                                       File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\python\__init__.py", line 37, in <module>                from tensorflow.python.eager import context                                                                           File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\python\eager\context.py", line 35, in <module>           from tensorflow.python.client import pywrap_tf_session                                                                File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\python\client\pywrap_tf_session.py", line 19, in <module>                                                                                                                        from tensorflow.python.client._pywrap_tf_session import *                                                           AttributeError: _ARRAY_API not found                                                                                                                                                                                                            A module that was compiled using NumPy 1.x cannot be run in                                                             NumPy 2.0.2 as it may crash. To support both 1.x and 2.x                                                                versions of NumPy, modules must be compiled with NumPy 2.0.                                                             Some module may need to rebuild instead e.g. with 'pybind11>=2.12'.                                                                                                                                                                             If you are a user of the module, the easiest solution will be to                                                        downgrade to 'numpy<2' or try to upgrade the affected module.                                                           We expect that some modules will need time to support NumPy 2.                                                                                                                                                                                  Traceback (most recent call last):  File "<string>", line 1, in <module>                                                  File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\__init__.py", line 37, in <module>                       from tensorflow.python.tools import module_util as _module_util                                                       File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\python\__init__.py", line 42, in <module>                from tensorflow.python import data                                                                                    File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\python\data\__init__.py", line 21, in <module>           from tensorflow.python.data import experimental                                                                       File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\python\data\experimental\__init__.py", line 96, in <module>                                                                                                                      from tensorflow.python.data.experimental import service                                                               File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\python\data\experimental\service\__init__.py", line 419, in <module>                                                                                                             from tensorflow.python.data.experimental.ops.data_service_ops import distribute                                       File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\python\data\experimental\ops\data_service_ops.py", line 24, in <module>                                                                                                          from tensorflow.python.data.experimental.ops import compression_ops                                                   File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\python\data\experimental\ops\compression_ops.py", line 16, in <module>                                                                                                           from tensorflow.python.data.util import structure                                                                     File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\python\data\util\structure.py", line 23, in <module>     from tensorflow.python.data.util import nest                                                                          File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\python\data\util\nest.py", line 36, in <module>          from tensorflow.python.framework import sparse_tensor as _sparse_tensor                                               File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\python\framework\sparse_tensor.py", line 24, in <module>                                                                                                                         from tensorflow.python.framework import constant_op                                                                   File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\python\framework\constant_op.py", line 25, in <module>                                                                                                                           from tensorflow.python.eager import execute                                                                           File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\python\eager\execute.py", line 23, in <module>           from tensorflow.python.framework import dtypes                                                                        File "C:\Users\23765\.conda\envs\tf\lib\site-packages\tensorflow\python\framework\dtypes.py", line 29, in <module>        from tensorflow.python.lib.core import _pywrap_bfloat16                                                             AttributeError: _ARRAY_API not found                                                                                    ImportError: numpy.core._multiarray_umath failed to import                                                              ImportError: numpy.core.umath failed to import                                                                          Traceback (most recent call last):          

报错原因

        TensorFlow当前安装的版本是在NumPy 1.x上编译的,而当前环境中安装的NumPy版本是2.0.2,这导致不兼容。

解决方案:输入以下指令,降低NumPy版本

pip install "numpy<2"

问题解答

Q1:为什么TensorFlow如果是中文页面,要切换至英文界面?

答:中文界面存在部分显示不全的问题,例如未像英文界面这样提示"TensorFlow版本超过2.10时将无法使用本地GPU训练"这一关键信息。导致新手安装完tensorflower后发现无法使用本地GPU训练自己的模型

参考

VSCode入门操作| 配置anaconda终端完整顺畅版_vscode anaconda配置-优快云博客

Win系统添加conda和python至环境变量 - 知乎

您可能感兴趣的与本文相关的镜像

Python3.10

Python3.10

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值