这篇文章介绍如何不使用conda
等包管理系统在Windows
系统上直接使用pip
安装Pytorch和Torchvision。首先你需要有Python 3.6
以上的64位环境(32位是不可以的哟!),并且假设你有NVIDIA
显卡且已安装CUDA
。
文章目录
- 1. 查看CUDA版本
- 2. 找到合适的Pytorch和Torchvision版本
- (1) 找到Pytorch安装包
- (2) 找到Torchvision安装包
- (3) 下载安装包
- 3. 测试是否安装成功
1. 查看CUDA版本
打开cmd
,输入命令
nvidia-smi
得到输出如下:
看到我的CUDA
版本是10.2
。Pytorch
为不同的CUDA
版本提供了不同的安装包,应尽可能选择合适的版本。如果你的CUDA
版本是12.0
,(文章发布时)Pytorch
并未提供对应的版本,则需要安装CUDA 11.8
对应的版本。
根据https://discuss.pytorch.org/t/how-to-check-if-torch-uses-cudnn/21933/4,我们并不需要安装cuDNN
,因为cuDNN
已经被集成在Pytorch
中了。但是如果从源码编译就需要安装cuDNN
了。
2. 找到合适的Pytorch和Torchvision版本
打开https://download.pytorch.org/whl/torch_stable.html,可以看到一系列的文件列表。
(1) 找到Pytorch安装包
Pytorch
的文件命名格式是:cu***/torch-*.**.*%2Bcu***-cp**-cp**m-win_amd64.whl
。其中:
cu***
是CUDA
版本,如CUDA 10.2
对应的是cu102
。torch-*.**.*
是Pytorch
版本,如Pytorch 1.10.2
对应torch-1.10.2
。你可以下载支持你环境的、尽量高的版本。cp**
是Python
(准确来说是CPython
)版本,如Python 3.6
对应cp36
。
因此,在我的电脑上(CUDA 10.2
、Pytorch 1.10.2
、Python 3.6 64-bit
),我应该下载cu102/torch-1.10.2%2Bcu102-cp36-cp36m-win_amd64.whl
。
(2) 找到Torchvision安装包
Pytorch
版本和Torchvision
版本之间有对应关系,可在https://pypi.org/project/torchvision/查看。
查到Pytorch 1.10.2
对应的Torchvision
版本是0.11.3
,所以在文件列表中找到cu102/torchvision-0.11.3%2Bcu102-cp36-cp36m-win_amd64.whl
。你仍然需要将文件名中的CUDA
、Torchvision
和Python
版本替换为你自己的版本。
(3) 下载安装包
将文件列表中的两个文件(我的是cu102/torch-1.10.2%2Bcu102-cp36-cp36m-win_amd64.whl
和cu102/torchvision-0.11.3%2Bcu102-cp36-cp36m-win_amd64.whl
)手动下载下来(可以使用Motrix
、IDM
等多线程下载器,文件大小是GB
级的)。之所以不推荐pip
直接安装,是因为用pip
下载非常缓慢,容易抛出ConnectionError
。
下载完成后,将文件名中的%2B
替换成+
。(这一步不做会报版本不支持的错误。)然后在下载文件夹打开cmd
,输入命令
pip install torch-1.10.2+cu102-cp36-cp36m-win_amd64.whl torchvision-0.11.3+cu102-cp36-cp36m-win_amd64.whl
注意将文件名替换为你的文件名。耐心等待安装即可。
3. 测试是否安装成功
打开Python
解释器,导入torch
包,进行CUDA
可用性和随机数生成测试。
c:\>python
Python 3.6.8 (tags/v3.6.8:3c6b436a57, Dec 24 2018, 00:16:47) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> torch.cuda.is_available() # 测试CUDA是否可用
True
>>> torch.rand(5, 3) # 随机生成5x3的张量
tensor([[0.8143, 0.6998, 0.7503],
[0.8661, 0.7051, 0.9805],
[0.4669, 0.1010, 0.6698],
[0.4863, 0.7767, 0.8557],
[0.9022, 0.4192, 0.4988]])
如果输出结果和上面的类似,说明安装成功。注意导入torch
包需要一定时间。