学习日记:torch安装,Windows和Linux服务器通用

最近从GitHub上拉了个项目,搞了好久才把pytorch环境对应完整。借此记录一下安装过程。

第一步:虚拟环境的创建

首先,你需要下载一个anaconda(推荐,当然也可以使用 其他的)。

  • conda虚拟环境相关代码

虚拟环境的创建
conda create -n/–name env_name python=3.9
从克隆已有的虚拟环境env_name2
conda create -n/–name env_name --clone env_name2
虚拟环境激活
conda activate env_name
虚拟环境退出
conda deactivate (env_name)老版本需要加环境名
删除虚拟环境
conda env remove -n env_name
查看已有环境
conda env list 或者 conda info -e
查看当前环境中安装的包
conda list

第二步:查看你的硬件设施(显卡)

如果在使用torch时,你想要使用GPU加速,那么需要你的设备中有Nvidia的显卡。

  • 查看方法

win+R输入cmd/powershell
直接输入nvidia-smi
你会看到如下内容
在这里插入图片描述
最顶端分别为显卡型号,驱动版本,以及cuda版本。
如果输入nvidia-smi提示不是内部命令,那么可以打开任务管理器-性能查看是否有有nvidia的显卡,如果有那么你需要先去官网查看显卡型号是否可用(有cuda版本)以及下载驱动。
在这里插入图片描述

显卡的驱动版本要求随时代变化,我写这篇文章时要求420以上,以后可能更高,不满足此条件也需要到官网更新驱动

第三步:安装torch

前面的要求都已经满足,那么就可以去pytorch官网进行下载。根据你的cuda版本,一定要选择低于你的cuda版本的torch进行安装。
在这里插入图片描述

如果你没有GPU可用,选择CPU版本,以及你的anaconda没有换过国内源,可以直接按照上面照片进行选择并在终端运行,一路y就可以完成安装。
如果你的anaconda已经换了清华源,因为清华源中只有CPU版本,所以选择查看以前的版本,在以前的版本中挑选最后带有网址的对应版本命令复制。
在这里插入图片描述
下载完成后可以使用conda list/pip list查看已经安装的包中有没有torch,以及torch的版本,如果有且版本是xx+cuxx,说明已经成功下载了GPU版本。
进一步检验,使用cmd/powershell输入python输入以下内容。

import torch
torch.__version__
torch.cuda.is_available()

在这里插入图片描述
如果没有报错且有照片中的内容说明你成功安装了torch。
如果最后输出的是false,你需要确定你的GPU是否真的可用,且驱动是达到要求的。


以上基础版的torch就已经安装完成。

plus步:torch-geometric包安装

在实验中经常会用到torch-geometric包,下面对这个包的安装方法进行说明。

  • 在安装这个包之前,首先需要先安装torch-cluster,torch-scatter,torch-sparse,torch-spline-conv四个包。
  • 这四个包建议登录torch-geometric官网根据你下载的torch版本进行手动下载。

torch版本在上面检验的时候查到过。

在这里插入图片描述
进入对应的版本中,选择符合自己要求的包进行下载。

这个页面中所包含的版本都是在你下载的pytorch中兼容的,这里建议可以直接下载高版本。
cp37指的是python3.7版本。(cp39对应pyhon3.9以此类推)
Linux和win分别代表Linus系统和Windows系统。
一般现在高版本都是64位的

在这里插入图片描述
下载好自己的包中在文件夹中查看
在这里插入图片描述
我这里因为是在服务器上配环境,所以下载的是Linux版本,通过xftp传到服务器上。
在对应的目录下,使用下面的命令以此安装四个包

pip install xx.whl

最后,直接使用pip下载安装torch-geometric

pip install torch-geometric==1.5.0

这个版本现在是到2.2.0但是很多代码在新版本并不兼容,可以根据需要选择合适的版本。

只要前面的torch-cluster,torch-scatter,torch-sparse,torch-spline-conv四个包和torch版本对应没有问题,torch-geometric选择1.x和2.x版本都是可以的。
如果想要更换版本,无需删除之前的包,直接使用pip install 新的覆盖即可。

附加:跑项目时出现的一个小bug

from torch._six import container_abcs, string_classes, int_classes
ImportError: cannot import name 'container_abcs' from 'torch._six' (/home/jhx/.conda/envs/jhx/lib/python3.9/site-packages/torch/_six.py)

这个就是因为torch版本过高的原因。在torch1.7中对_six.py进行了删减,可以在源码文件中手动添加一下内容,进行修补。

import collections.abc as container_abcs
int_classes = int
string_classes = str
  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值