Windows 10系统深度学习【Anaconda+Pytorch+CUDA】环境安装

最近在看李沐老师的b站课程,本文是对自己环境配置的一个记录,整个过程可以参考原视频:Windows 下安装 CUDA 和 Pytorch 跑深度学习 - 动手学深度学习v2_哔哩哔哩_bilibili

CUDA的需要有N卡的电脑,打开任务管理器检查一下

lucky,是N卡,接下来检查显卡所对应的CUDA版本,在cmd窗口输入nvidia-smi

记住这个版本号,我的是11.1,如果提示“nvidia -smi显示不是内部或外部指令”,可以先输入cd C:\Program Files\NVIDIA Corporation\NVSMI再输入nvidia-smi

接下来需要安装CUDA工具包,官网:CUDA Toolkit 12.9 Update 1 Downloads | NVIDIA Developer,选择历史版本Archive of Previous CUDA Releases(此时最新的CUDA版本12.9显然不符合我的老伙计了),我选择的CUDA Toolkit11.1.1,推荐大家在显卡支持范围选择最新的

安装结束后呢系统变量会多出两个CUDA的路径

在系统变量中加入下面的路径,点击确定:

CUDA_BIN_PATH: %CUDA_PATH%\bin
CUDA_LIB_PATH: %CUDA_PATH%\lib\x64
CUDA_SDK_PATH: C:\ProgramData\NVIDIA Corporation\CUDA Samples\v11.1
CUDA_SDK_BIN_PATH: %CUDA_SDK_PATH%\bin\win64
CUDA_SDK_LIB_PATH: %CUDA_SDK_PATH%\common\lib\x64

在用户变量path中加入下面的:

%CUDA_BIN_PATH%
%CUDA_LIB_PATH%
%CUDA_SDK_BIN_PATH%
%CUDA_SDK_LIB_PATH%

检查一下CUDA装的怎么样哈,在cmd窗口运行deviceQuery.exe和bandwidthTest.exe,如果安装成功会返回result=pass

    好!现在有CUDA了,接下来的过程没什么图了大家费神看细致点哈

    1.Anaconda安装

    李沐老师装的是3.8.3,我尝试呢是3.8.5可以,但这里肯定是要 Python3.8版本对应的Anaconda3:https://repo.anaconda.com/archive/Anaconda3-2020.07-Windows-x86_64.exe

    管理员身份运行.exe文件,选择为所有用户安装,安装过程有选项的全部勾上,安装完成后开始菜单找到Anaconda Powershell Prompt,输入python --version检查版本是否为3.8.x

    2.创建环境(第2部分如果你不打算隔离的话可以跳过,直接到3.Pytorch安装)

    Anaconda的特点在于可以创建多个配置不同的虚拟环境,默认打开时是base,愚以为最好为每个项目都创建一个单独的虚拟环境,这次创建的叫d2l:conda create -n d2l python==3.8.5(-n后面跟的d2l是我取的名字,可以随意)(不指定版本号默认装最新版本,要高于3.8.3才可以,推荐3.8.5因为我确实成功了)(显示“ $ conda activate d2l ”即为安装成功)

    激活环境:conda activate d2l(之后每次使用都要记得进入d2l环境)

    这个时候想要检视Anaconda现有的环境可以用:conda env list(会显示每个环境对应的地址)

    如果想删掉某个环境:conda remove -p 地址 --all

    3.Pytorch安装

    CUDA11.1版本对应的Pytorch安装: pip3 install torch==1.9.1+cu111 torchvision==0.10.1+cu111 torchaudio==0.9.1 -f https://download.pytorch.org/whl/cu111/torch_stable.html

    (Pytorch官网:Get Started,我没有找到CUDA11.1版本对应的包,先是选择了windows+pip+python+cuda11.8得到了一个命令,然后把最后的版本号改为了cu111:pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu111,运行这个会显示版本兼容问题,deepseek老师提示我可以改为正文中所示的指令,运行,嘿还真没出错)

    打开python导入torch:python、import torch

    检查安装(version前后是双下划线):print(torch.__version__) # 显示 1.9.1+cu111 、print(torch.cuda.is_available()) # 返回 True

    a=torch.ones((3,1))、a = a.cuda(0)、b= torch.ones((3,1)).cuda(0)、a+b,正确安装会显示结果

    再安装两个软件:pip install jupyter d2l

    4.下载代码

    安装 — 动手学深度学习 2.0.0 documentation点击顶部菜单栏的jupyter记事本选项下载d2l-zh.zip,解压到D:\deeplearning\d2l-zh,相同全部替换(这个地址随意,但要好找)

    在Anaconda Powershell Prompt中,cd D:\deeplearning\d2l-zh打开刚刚解压的地址,然后输入jupyter notebook命名记事本

    在网页记事本找到D:\deeplearning\d2l-zh\pytorch\chapter_convolutional-modern\resnet.ipynb,点击Kernel→Restart & Run All

    5.训练结果分析

    训练过程如果如果显存超了,需要先杀死进程、降低batch_size再重新开始

    受限于GPU内存大小,选择batch_size降低到128,运行过程GPU内存使用约75%,用时约18分钟,训练速度曲线如下

    (batch_size的选择涉及到训练时的线程分配,所以并不是越大越好,我尝试的batch_size选择32,用时也是约18分钟,运行过程GPU内存使用约45%,表现更好,所以可以在GPU显存支持范围尝试一下)

    6.其他问题

    如果在不创建环境隔离,直接在base环境安装Pytorch,做后面的操作是没啥问题的,但如果创建的新环境

    d2l_env并安装Pytorch,可能会在pip install jupyter d2l步骤报错,显示错误发生在安装pywinpty的依赖项时,我搞了一上午有个解决方案

    首先明确在创建新环境d2l_env时指定不安装终端支持:conda create -n d2l_env -c conda-forge python=3.8.3 jupyterlab notebook nbconvert ipykernel

    (conda-forge是一个社区驱动的软件仓库,通常提供更新更全的软件包,尤其在Windows平台上,对编译依赖的处理更完善,全部使用来自这个仓库的包可以保证依赖的一致性)

    (在创建环境时直接安装了jupyterlab notebook nbconvert ipykernel ,这些包在conda环境中由conda统一管理,避免了后续pip安装时可能出现的依赖冲突)

    (特别是pywinpty 这个包在conda-forge中有预编译好的版本,通过conda安装可以避免从源码构建)

    conda activate d2l_env激活环境后,原样安装Pytorch: pip3 install torch==1.9.1+cu111 torchvision==0.10.1+cu111 torchaudio==0.9.1 -f https://download.pytorch.org/whl/cu111/torch_stable.html

    接下来手动安装d2l的依赖并指定版本:pip install numpy==1.23.5 matplotlib==3.7.2 pandas==2.0.3 scipy==1.10.1 requests==2.31.0

    最后安装d2l:pip install d2l

    装完后验证一下,进入python,导入import d2l,没有显示是不存在的就是安装成功了,接下来就可以正常的打开记事本运行去了

    7.友情提示

    全部装完搞定后,在装了一堆的环境中(比如我是d2l_env)输入pip cache purge,C盘立出3G空间,当然这样下次还得再下,酌情使用

    <think>好的,我现在需要帮助用户解决在Anaconda Prompt中使用pip安装CUDA的问题。首先,我需要明确用户的需求。用户可能是在进行深度学习或GPU加速计算,所以需要安装CUDA工具包。但用户可能对CUDA安装流程不太清楚,特别是如何在Anaconda环境中使用pip来安装相关组件。 首先,我应该回忆CUDA安装方式。CUDA本身是NVIDIA的并行计算平台,通常需要从官网下载安装程序,或者通过系统包管理器安装。但用户提到使用pip安装,这可能存在误解,因为CUDA Toolkit通常不能直接通过pip安装。不过,用户可能实际上需要安装的是支持CUDA的Python库,比如PyTorch或TensorFlow,这些库可以通过pip安装,并自动检测CUDA环境。 接下来,我需要考虑用户可能的环境配置。用户使用的是Anaconda Prompt,说明他们在Windows系统下,可能已经安装Anaconda来管理Python环境Anaconda本身有conda包管理器,可以用来安装CUDA相关的工具包,比如cudatoolkit,这可能比用pip更直接。但用户明确提到使用pip,所以需要解释两种方法。 然后,我需要验证用户的问题是否可能存在混淆。例如,是否用户误以为CUDA Toolkit可以通过pip安装,但实际上需要先安装CUDA驱动和工具包,再通过pip安装GPU支持的库。这时候需要分步骤说明:首先安装CUDA Toolkit,然后创建conda环境,再使用pip安装相关库。 另外,用户可能没有正确配置环境变量,导致即使安装CUDA,Python库也无法检测到。需要提醒用户检查CUDA安装是否成功,比如通过nvidia-smi和nvcc --version命令验证驱动和CUDA Toolkit的安装情况。 还要考虑到用户可能遇到的常见问题,例如版本兼容性。不同的深度学习框架需要特定版本的CUDA,所以需要指导用户根据框架文档选择合适的CUDA版本。例如,PyTorch和TensorFlow的官网通常会列出支持的CUDA版本,用户需要对应安装。 另外,如果用户确实需要单独安装CUDA相关的Python包,可能需要使用conda install命令,因为conda能够处理非Python的依赖项,比如cudatoolkit、cudnn等。而pip可能无法安装这些系统级的库,只能安装Python包装器。因此,建议用户优先使用conda安装这些依赖,再使用pip安装其他包。 总结步骤应该是: 1. 确认系统安装NVIDIA驱动和兼容的CUDA Toolkit。 2. 创建并激活conda环境。 3. 使用conda安装cudatoolkit等依赖。 4. 使用pip安装支持CUDA深度学习框架。 5. 验证安装是否成功。 同时,需要提醒用户注意版本匹配,例如PyTorchCUDA版本的对应关系,避免版本冲突导致无法使用GPU加速。 最后,生成相关问题,帮助用户深入理解CUDA安装和相关配置,比如如何检查CUDA是否可用,如何解决常见安装错误,以及不同深度学习框架的安装方法等。</think>### 如何在Anaconda Prompt中使用pip安装CUDA #### 步骤说明 1. **理解CUDA安装的两种方式** - **系统CUDA Toolkit**:需从[NVIDIA官网](https://developer.nvidia.com/cuda-toolkit)下载安装程序,配置系统环境变量[^1]。 - **Python环境中的CUDA支持**:通过`conda`或`pip`安装深度学习框架(如PyTorch、TensorFlow)时会自动包含CUDA依赖库(如`cudatoolkit`)。 2. **推荐方法:使用conda安装CUDA依赖** ```bash conda create -n cuda_env python=3.9 conda activate cuda_env conda install cudatoolkit=11.3 # 根据框架要求选择版本 ``` 3. **通过pip安装支持CUDA的库** ```bash pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu113 # PyTorch示例 ``` 4. **验证CUDA是否可用** ```python import torch print(torch.cuda.is_available()) # 输出True表示成功[^2] ``` #### 注意事项 - **版本匹配**:PyTorch/TensorFlow与CUDA版本需严格对应(如PyTorch 1.12需CUDA 11.3)。 - **镜像加速**:可配置清华镜像提升下载速度: ```bash pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple ```
    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

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

    抵扣说明:

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

    余额充值