
深度学习记录(一):在conda环境下安装PyTorch(CUDA版)
前言
Pytorch是什么
PyTorch 是一种用于构建深度学习模型的功能完备框架,是一种通常用于图像识别和语言处理等应用程序的机器学习。使用 Python 编写,因此对于大多数机器学习开发者而言,学习和使用起来相对简单。PyTorch 的独特之处在于,它完全支持 GPU,并且使用反向模式自动微分技术,因此可以动态修改计算图形。这使其成为快速实验和原型设计的常用选择。
为什么选择Pytorch
- Pytorch 有一个充满活力的大型社区,具有优秀的文档和教程。论坛十分活跃,并能给予帮助和支持,官方支持好,更新及时。
- 采用 Python 编写,并集成了热门的 Python 库,在安装pytorch时,常用的科学计算库会一并安装,例如用于科学计算的 NumPy、SciPy 和用于将 Python 编译为 C 以提高性能的 Cython。
- 对于 Python 开发者来说,学习起来比较容易。Torch语言底层采用C语言,以Lua语言为接口,国内受众较小;而Pytorch是torch的python版本, PyTorch 的语法和用法均符合 Python
- 受主要云平台的有力支持。大多云计算厂商的GPU设备都会有自带Pytorch框架选项,项目部署调试变得简单。
- 支持 CPU、GPU、并行处理以及分布式训练。pytorch官方支持的计算平台有CPU平台和GPU支持的CUDA平台,这意味着计算工作可以在多个 CPU 和 GPU 核心之间分配,并且可以在多台机器上的多个 GPU 上进行训练。
- 相较于Tensorflow,pytorch更加简单易懂,设计追求最少的封装,避免重复造轮子,PyTorch的源码只有TensorFlow的十分之一左右,更少的抽象、更直观的设计使得PyTorch的源码十分易于阅读
- 运行速度与灵活性并存。在许多评测中,PyTorch 的速度表现胜过 TensorFlow和Keras 等框架,对于规模较小的项目,pytorch性能要优于tensorflow
- 方便快捷的编程。能够用代码快速实现自己的想法,验证实验过程也较为简单
安装PyTorch
配置环境
- windows
- conda
- Nvidia driver
配置过程
安装Nvidia driver驱动程序
由于PyTorch(CUDA版)是基于英伟达显卡CUDA平台的深度学习框架,所以必须要保证电脑的GPU为英伟达Nvidia品牌,其次带有相关驱动程序,这样在使用Pytorch的时候才能利用CUDA并行计算。
首先明确自己电脑的独立显卡是什么型号?通过:搜索——设备管理器
——显示适配器
或者 任务管理器
——性能
——GPU
,两种方法都可以看到,图上显示我的电脑是GTX 1050Ti显卡


然后,打开官网NVIDIA GeForce 驱动程序 - N 卡驱动 | NVIDIA ,找到自己型号的显卡驱动程序是哪个,如果嫌麻烦可以直接选择立即下载;如果想自己配置不同版本,就手动搜索。

看下自己电脑有没有Nvidia控制面板,如果没有就在微软商城下载 搜索Nvidia Control Panel,

打开Nvidia控制面板,可以看设备CUDA版本,也可以命令行输入nvidia-smi查看。我电脑显卡驱动支持的CUDA版本为12.1

注意,在后续安装PyTorch的时候会要求CUDA版本为多少多少之类的,所以尽可能地保持显卡驱动最新版本。
例如你显卡驱动Driver显示CUDA版本号为12.1,而安装最新PyTorch的计算平台要求为11.8,这种情况是可以的,因为安装pytorch会自动安装CUDA与cuDNN,安装的11.8版本CUDA便能够被你电脑支持;
但是如果你电脑只支持11.2,那么你就只能找计算平台要求11.2及以下的PyTorch框架安装了,因为11.8超过了你电脑显卡CUDA支持范围。
安装Anaconda
打开Anaconda官网(https://www.anaconda.com/),找到获得额外的安装包。

根据自己电脑的操作系统选择,博主电脑是win,所以本文以windows为主。

下载完成后,打开安装包,进行安装,点击我同意


默认推荐,点击下一步

修改默认安装路径,尽量不要在C盘安装,由于我之前已经安装在D盘了,这次我选择E盘新建Anaconda文件夹;同时注意磁盘空间,不要过小,后续可能安装其他软件包可能还要占一部分空间! 继续点下一步

默认选择的是下述两项,第一项与第三项

第二项Add Anaconda to my PATH environment variable
是指:选择是否将 Anaconda 添加到 PATH 环境变量。建议不要将 Anaconda 添加到 PATH 环境变量中,因为这会干扰其他软件。相反,通过从”开始”菜单打开 Anaconda Navigator 或 Anaconda 提示符来使用 Anaconda 软件。
第四项 Clear the package cache upon completion
是指清除包缓存,为了恢复部分磁盘空间,这个可选可不选,默认不选。


由于我电脑已经安装了Anaconda,所以该过程我并没有实际安装,但是上述步骤都是一个样的。最后是下图的Finish.

由于在安装Anaconda时没有添加环境变量,因此需要我们手动配置。
可以使用windows+R,输入SYSDM.CPL打开系统属性,也可以右键我的电脑——找到高级系统设置,打开系统属性。
下图,找到环境变量,进行设置。

如下,对用户变量与系统变量进行编辑。

如果环境变量中下述属性已存在就可以不用再新建了。
用户变量:

系统变量:

最后,我们打开命令行,验证anaconda是否安装成功,如果输入conda
出现以下内容,则证明anaconda安装成功,且环境变量配置完毕

通过conda -V
可以查看conda版本号,如图可以看到,我的conda版本为22.9

安装PyTorch
安装命令需要去官网获取,打开Pytorch官网 https://pytorch.org/ ,找到如下内容:

这是各版本安装命令汇总,每一项具体意思是
- Pytorch Build:pytorch的安装版本,这个默认安装Stable(最多测试与支持),目前最稳定的是2.0.0
- Your OS:你的操作系统
- Package:包安装方式,给出了conda、pip、LibTorch、Source四种方式,一般选前两种conda或pip,官方推荐是使用anaconda做包管理(可以很方便的切换python版本),并且我们之前已经配置了Anaconda,所以我们选用conda方式
- language:默认python
- Compute Platiform:计算平台,这里有CPU版本与CUDA版本,由于CUDA是NVIDIA 发明的一种并行计算平台和编程模型,能够大幅度提升模型训练速度,因而我们选择CUDA安装,同时需要注意根据自己电脑Nvidia显卡所支持的CUDA版本安装选择合适的,
- Run this Command:运行命令,用于命令行安装
下图便是根据我的实际情况选择好的配置(供参考)

不要着急安装,我的建议是先建个新的虚拟环境来安装PyTorch框架,不要直接在conda中直接安装pytorch,不然卸载的时候比较麻烦。
汇总虚拟环境管理命令
- 列出所有已有的虚拟环境:
conda env list
或conda info -e
- 创建一个新的虚拟环境:
conda create -n (虚拟环境名) python=(python的版本)
- 激活虚拟环境:
conda activate (虚拟环境名)
- 退出虚拟环境:
conda deactivate
- 克隆一个虚拟环境:
conda create -n (新虚拟环境名) --clone (旧虚拟环境名)
- 删除虚拟环境:
conda remove –n (虚拟环境名) ––all
汇总虚拟环境包管理 命令
- 🍼 查看已有的包:
conda list
- ☕ 安装虚拟环境的特定包:
conda install (包名)
- 🍸 安装指定版本的包:
conda install (包名)=(版本)
- 🍷 删除虚拟环境中特定包:
conda remove (包名)
- 🍹 更新虚拟环境特定包:
conda update (包名)
- 🥂 搜索虚拟环境中特定包:
conda search (包名)
打开命令行,依次输入一下命令
1 | conda env list #检查自己有哪些虚拟环境 |
进入到dlenv虚拟环境,准备安装pytorch。

输入命令:conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
开始安装!
安装过程不要借助清华镜像等下载软件包,由于软件包来源是官网,官网位于国外,所以安装速度有点慢,可以挂国外VPN或者慢慢等等。安装的所有软件包总共大小约有3-4G。
安装完毕之后,在命令行输入conda list
查看安装情况,可以找到这几个,就说明安装成功,注意红色框指:pytorch类型版本为cuda版。
打开编辑器,运行代码
1 | import torch |
若为True,则说明CUDA版本的PyTorch安装成功!
pytorch安装问题
可能很多人在官网复制完命令,并在虚拟环境运行命令、安装完成后,执行torch.cuda.is_available()
代码发现结果为False,这说明CUDA版本PyTorch安装失败。
但是实际安装过程发现并未出错,运行流畅,检查conda list
会发现安装的是CPU版本的PyTorch。
我明明执行的是CUDA版的运行命令,但为什么会安装CPU版的呢?
实际上,官网给出的命令所下载的软件包来源于网址https://download.pytorch.org/whl/torch_stable.html, 该网站中包含了所有各版本的PyTorch,如果你所安装CUDA版本的PyTorch未在该网站中,conda会自动安装为虚拟环境安装CPU版本的PyTorch,
举个例子:
如果你的Python版本为3.7(我当时第一次安装时虚拟环境的python版本)
你执行这条命令**conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
**,到最后会发现安装的是CPU版本。
看一下这个文件**cpu/torch-2.0.0%2Bcpu-cp310-cp310-win_amd64.whl
**的名称,
- cpu指的是 cpu版本的pytorch文件
- torch -2.0.0 指的是软件包名称与版本
- cp310指的是 支持的python版本为3.10
- win指的是 操作系统windows环境
根据如此规律,我们找到conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
CUDA11.8版本对应的各类软件包。如下图:
图中可以看出,CUDA11.8版本所支持的python版本为3.8、3.9、3.10、3.11,我第一次安装时python版本为3.7,由于网站中没有该环境的pytorch包,conda便自动安装了CPU版本的(小东西挺会自作主张的😅),后来卸载了虚拟环境,换了python3.9就没问题了。
最后运行代码测试,结果为True
1 | import torch |
- 标题: 深度学习记录(一):在conda环境下安装PyTorch(CUDA版)
- 作者: 狮子阿儒
- 创建于 : 2023-04-24 14:43:45
- 更新于 : 2024-03-03 21:31:00
- 链接: https://c200108.github.io/blog/2023/04/24/深度学习记录(一):在conda环境下安装PyTorch(CUDA版)/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。