anaconda 安装pytorch_Windows环境下Pytorch的安装

完整步骤,网上各种的步骤多多少少都有一些坑。

1. 下载Anaconda3

到Anaconda官网上下载Windows个人版,目前已经支持Python3.8。安装时记住安装路径,随后要配置环境变量。

Anaconda | Individual Edition​www.anaconda.com
cbcd0f617561bb61f5c6dd93021fcc1d.png

安装好以后配置环境变量

411ba50f6ce2c36692fee98e3c8b8e08.png

2. 建立虚拟环境pytorch

Anaconda类似于virtualenv,用于建立虚拟环境,隔离Python包。之前只有Python3.7支持Pytorch,为了避免Python版本问题,还是建议利用Anaconda。

在conda命令行中输入

conda create -n pytorch python=3.8

建立一个名字叫pytorch的虚拟环境,并且指定Python版本为3.8。随后,Anaconda会安装pip等基础包。

建立完成后,输入

conda info --env

查看已有环境,得到类似下面的结果

(pytorch) C:Users98790>conda info --env
# conda environments:
#
base                     C:Users98790Anaconda3
pytorch               *  C:Users98790Anaconda3envspytorch

则代表pytorch建立完成。base环境是Anaconda的默认环境,不指定安装包的环境的情况下所有包都会被安装到base环境(记住这点,后面要考)

基础包不包含pylint,为了避免vscode无缘无故报错,代码却可以执行的情况,需要自己下载,命令为

conda install -n pytorch pylint

这里的-n pytorch可选,pylint可以直接安装在Anaconda的base环境下,只要在vscode或其他编辑器中选择pylint.exe的路径即可。

通过命令

conda list

查看使用conda安装的包(类似于pip list)。

3. 修改Anaconda镜像源

打开Anaconda Prompt修改国内镜像源为清华源,输入如下命令:

[new url

需要加上下面几个镜像源:

 https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/fastai/

为了防止万一清华源没有最新版本的包,多加几个国内源

  - https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/
  - https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
  - https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
  - https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
  - https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
  - https://mirrors.ustc.edu.cn/anaconda/pkgs/main/

通过执行

conda config --show channels

查看现有源,再次执行

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/

能够把对应的源置顶,把清华源置顶即可。执行

conda config --set show_channel_urls yes

命令,在安装前可以打印源进行检查。

千万不要用default源下载!!!

千万不要用default源下载!!!

千万不要用default源下载!!!

4. 安装Pytorch

Pytorch的官网是

PyTorch​pytorch.org
9c4270fadf26751e5b4cff23b8d92954.png

(1)下载无显卡加速版本

按照下面的选择,CUDA选择None。

9f6bc73a0577e0b908c51bbfb704e59e.png

最下面有安装代码,不要直接复制粘贴回车,改成

conda install -n pytorch pytorch torchvision cpuonly

去掉最后的-c pytorch,然后再指定对应的环境。接下来Anaconda会自动安装各种依赖包,如果看到

 _pytorch_select: 0.1-cpu_0
pytorch:         1.6.0-cpu_py38h538a6d7_0

这两个包,基本就没错了。如果后面有哪个源是default的,选择n,不要进行安装,再次输入安装的命令。正常情况下都能够找到国内源。

pytorch大小在150M左右,使用国内源的下载速度很快,中途不要乱按。(有时卡住以后按回车,可能会跳过当前包的安装,直接安装下一个包,最后还可能报错,大概是因为暂时连接不上下载超时的原因)

全部下载完成后,如果成功导入包torch就代表安装完成

python
>>> import torch
>>> 

(2)下载带显卡加速的版本

如果有NVIDIA独显的可以下载这个,毕竟显卡加速能够让网络的训练速度提升近100倍。

首先检查自己的显卡驱动,在开始菜单搜索NVIDIA Control Panel,

5a66146c9d426b5cf450c6cab522770f.png

225335025e67cc02001209102307829d.png

第一行有个驱动程序版本,一般这个值都是大于400的,如果太小了,去下个驱动精灵自动检测,然后更新驱动版本。也可以到设备管理器里升级显卡驱动。

7e63723efa863f2155a13c4f5af62999.png

显卡驱动版本对应的CUDA版本如上图,回到Pytorch官网版本选择合适的下载。

a3d664813c8a2df1bba38c57ee1ce241.png

还是不要直接运行命令,去掉-c pytorch,再加上-n pytorch,执行。

conda install -n pytorch pytorch torchvision cudatoolkit=10.2

带有显卡驱动版本的pytorch包大概在750M左右,下载时同样不要触碰任何键盘按键,不然万一跳过了torch包,就会有一堆bug。可以试试按照CSDN上讲的更改默认的超时时间,虽然可能没什么用,我碰到这个情况直接删了pytorch环境然后建一个新的。

下载的pytorch包应该是

pytorch                   1.6.0 py3.8_cuda102_cudnn7_0  anaconda/cloud/pytorch

检查一下是不是py3.8_cuda102_cudnn7_0,如果是,大功告成。在conda终端里激活pytorch环境以后输入

python
>>> import torch
>>> torch.cuda.is_available()

如果返回true,那么表示显卡加速可用。

一些bug

很多情况下由于国内源的种种原因,可能安装的是150M左右的cpu版本的pytorch,在安装numpy等科学库时会自动提示更新。

conda list

检查一下,可能返回的是

(pytorch) C:Users98790>conda list
# packages in environment at C:Users98790Anaconda3envspytorch:
#
# Name                    Version                   Build  Channel
_pytorch_select           0.1                       cpu_0    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
blas                      1.0                         mkl    https://mirrors.ustc.edu.cn/anaconda/pkgs/main
ca-certificates           2020.6.20            hecda079_0    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
certifi                   2020.6.20        py38h32f6830_0    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
cffi                      1.14.3           py38hba49e27_0    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
cudatoolkit               10.2.89              h74a9793_1    https://mirrors.ustc.edu.cn/anaconda/pkgs/main
freetype                  2.10.2               hd328e21_0    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
intel-openmp              2019.4                      245    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
jpeg                      9d                   he774522_0    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
libmklml                  2019.0.5                      0    https://mirrors.ustc.edu.cn/anaconda/pkgs/main
libpng                    1.6.37               ha81a0f5_2    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
libtiff                   4.1.0                h885aae3_6    https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
lz4-c                     1.9.2                h62dcd97_2    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
mkl                       2019.4                      245    https://mirrors.ustc.edu.cn/anaconda/pkgs/main
mkl-service               2.3.0            py38hb782905_0    https://mirrors.ustc.edu.cn/anaconda/pkgs/main
mkl_fft                   1.2.0            py38h45dec08_0    https://mirrors.ustc.edu.cn/anaconda/pkgs/main
mkl_random                1.1.0            py38he350917_0    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
ninja                     1.10.1               h7ef1ec2_1    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
numpy                     1.19.1           py38h5510c5b_0    https://mirrors.ustc.edu.cn/anaconda/pkgs/main
numpy-base                1.19.1           py38ha3acd2a_0    https://mirrors.ustc.edu.cn/anaconda/pkgs/main
olefile                   0.46                       py_0    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
openssl                   1.1.1g               he774522_1    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
pandas                    1.1.1            py38ha925a31_0    https://mirrors.ustc.edu.cn/anaconda/pkgs/main
pillow                    7.2.0            py38h7011068_1    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
pip                       20.2.3                     py_0    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
pycparser                 2.20               pyh9f0ad1d_2    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
python                    3.8.5           h60c2a47_8_cpython    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
python-dateutil           2.8.1                      py_0    https://mirrors.ustc.edu.cn/anaconda/pkgs/main
python_abi                3.8                      1_cp38    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
pytorch                   1.6.0           cpu_py38h538a6d7_0    https://mirrors.ustc.edu.cn/anaconda/pkgs/main
pytz                      2020.1                     py_0    https://mirrors.ustc.edu.cn/anaconda/pkgs/main
setuptools                49.6.0           py38h32f6830_1    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
six                       1.15.0                     py_0    https://mirrors.ustc.edu.cn/anaconda/pkgs/main
sqlite                    3.33.0               he774522_0    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
tk                        8.6.10               he774522_0    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
torchvision               0.7.0                py38_cu102    https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch
vc                        14.1                 h869be7e_1    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
vs2015_runtime            14.16.27012          h30e32a0_2    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
wheel                     0.35.1             pyh9f0ad1d_0    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
wincertstore              0.2                   py38_1003    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
xz                        5.2.5                h62dcd97_1    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
zlib                      1.2.11            h62dcd97_1009    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
zstd                      1.4.5                h1f3a1b7_2    https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge

pytorch安装成了cpu版本。

解决办法:

直接下载相关的库,numpy,pandas和matplotlib,他会提示自动更新,下面是安装的完整过程。

(pytorch) C:Users98790>conda install -n pytorch matplotlib
Solving environment: /
Warning: >10 possible package resolutions (only showing differing packages):
  - https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::icu-67.1-h33f27b4_0, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::libclang-10.0.1-default_hf44288c_1, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::tornado-6.0.4-py38hfa6e2cd_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main::_pytorch_select-1.2.0-gpu
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main::_pytorch_select-1.2.0-gpu, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::icu-67.1-h33f27b4_0, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::libclang-10.0.1-default_hf44288c_1, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::tornado-6.0.4-py38hfa6e2cd_0
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge::tornado-6.0.4-py38hfa6e2cd_0, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::icu-67.1-h33f27b4_0, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::libclang-10.0.1-default_hf44288c_1, https://mirrors.ustc.edu.cn/anaconda/pkgs/main::_pytorch_select-1.2.0-gpu
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge::tornado-6.0.4-py38hfa6e2cd_0, https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main::_pytorch_select-1.2.0-gpu, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::icu-67.1-h33f27b4_0, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::libclang-10.0.1-default_hf44288c_1
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge::libclang-10.0.1-default_hf44288c_1, https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge::tornado-6.0.4-py38hfa6e2cd_0, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::icu-67.1-h33f27b4_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main::_pytorch_select-1.2.0-gpu
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge::libclang-10.0.1-default_hf44288c_1, https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge::tornado-6.0.4-py38hfa6e2cd_0, https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main::_pytorch_select-1.2.0-gpu, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::icu-67.1-h33f27b4_0
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge::libclang-10.0.1-default_hf44288c_1, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::icu-67.1-h33f27b4_0, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::tornado-6.0.4-py38hfa6e2cd_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main::_pytorch_select-1.2.0-gpu
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge::libclang-10.0.1-default_hf44288c_1, https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main::_pytorch_select-1.2.0-gpu, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::icu-67.1-h33f27b4_0, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::tornado-6.0.4-py38hfa6e2cd_0
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge::icu-67.1-h33f27b4_0, https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge::libclang-10.0.1-default_hf44288c_1, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::tornado-6.0.4-py38hfa6e2cd_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main::_pytorch_select-1.2.0-gpu
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge::icu-67.1-h33f27b4_0, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::libclang-10.0.1-default_hf44288c_1, https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge::tornado-6.0.4-py38hfa6e2cd_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main::_pytorch_select-1.2.0-gpu
  ... and othersdone


==> WARNING: A newer version of conda exists. <==
  current version: 4.5.11
  latest version: 4.8.4

Please update conda by running

    $ conda update -n base -c defaults conda



## Package Plan ##

  environment location: C:Users98790Anaconda3envspytorch

  added / updated specs:
    - matplotlib


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    icu-67.1                   |       h33f27b4_0        16.1 MB  https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    matplotlib-3.3.2           |                0           6 KB  https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    libclang-10.0.1            |default_hf44288c_1        22.0 MB  https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    pyparsing-2.4.7            |     pyh9f0ad1d_0          60 KB  https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    pyqt-5.12.3                |   py38h6538335_1         4.7 MB  https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    pytorch-1.6.0              |py3.8_cuda102_cudnn7_0       704.7 MB  https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch
    kiwisolver-1.2.0           |   py38heaebd3c_0          62 KB  https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    qt-5.12.6                  |       hb2cf2c5_0       106.2 MB  https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    matplotlib-base-3.3.2      |   py38hfb9ee82_0         6.8 MB  https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
    tornado-6.0.4              |   py38hfa6e2cd_0         646 KB  https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    cycler-0.10.0              |             py_2           9 KB  https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    ------------------------------------------------------------
                                           Total:       861.3 MB

The following NEW packages will be INSTALLED:

    cycler:          0.10.0-py_2               https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    icu:             67.1-h33f27b4_0           https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    kiwisolver:      1.2.0-py38heaebd3c_0      https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    libclang:        10.0.1-default_hf44288c_1 https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    matplotlib:      3.3.2-0                   https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    matplotlib-base: 3.3.2-py38hfb9ee82_0      https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
    pyparsing:       2.4.7-pyh9f0ad1d_0        https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    pyqt:            5.12.3-py38h6538335_1     https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    qt:              5.12.6-hb2cf2c5_0         https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge
    tornado:         6.0.4-py38hfa6e2cd_0      https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge

The following packages will be UPDATED:

    _pytorch_select: 0.1-cpu_0                 https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main         --> 1.2.0-gpu                    https://mirrors.ustc.edu.cn/anaconda/pkgs/main
    pytorch:         1.6.0-cpu_py38h538a6d7_0  https://mirrors.ustc.edu.cn/anaconda/pkgs/main                  --> 1.6.0-py3.8_cuda102_cudnn7_0 https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch

Proceed ([y]/n)? y


Downloading and Extracting Packages
icu-67.1             | 16.1 MB   | ############################################################################ | 100%
matplotlib-3.3.2     | 6 KB      | ############################################################################ | 100%
libclang-10.0.1      | 22.0 MB   | ############################################################################ | 100%
pyparsing-2.4.7      | 60 KB     | ############################################################################ | 100%
pyqt-5.12.3          | 4.7 MB    | ############################################################################ | 100%
pytorch-1.6.0        | 704.7 MB  | ############################################################################ | 100%
kiwisolver-1.2.0     | 62 KB     | ############################################################################ | 100%
qt-5.12.6            | 106.2 MB  | ############################################################################ | 100%
matplotlib-base-3.3. | 6.8 MB    | ############################################################################ | 100%
tornado-6.0.4        | 646 KB    | ############################################################################ | 100%
cycler-0.10.0        | 9 KB      | ############################################################################ | 100%
Preparing transaction: done
Verifying transaction: done
Executing transaction: done

中间有一步提示The following packages will be UPDATED,其中就有pytorch。更新过程中可以看到,pytorch是704.7MB,不要乱按键盘,等待安装完毕。

>>> torch.cuda.is_available()
True
>>> ^Z

最后检查,返回ture,显卡加速可用。

使用vscode进行编辑的时候,可能出现莫名其妙的报错信息,配置一下pylint的路径即可。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值