Torch_geometric安装教程, 问题汇总详解。

前情提要:本文只谈通过pip方式安装,conda安装的方式博主没有试过,感兴趣的小伙伴可以参考本文自己尝试一下。

首先,在核心上,Torch_geometric的安装方法几乎和pytorch一样,甚至他们的官网界面都很像。

安装过pytorch的朋友应该知道, 直接 pip install pytorch 肯定是行不通的,因为pytorch还有一些其他的依赖库比如 torchvision、torchaudio 等需要同时安装。

同样的道理,torch_geometric也有四个依赖库,torch-scatter、torch-sparse、torch-cluster、torch-spline-conv,虽然有的代码可能并不是所有的都用到,但是建议全部安装。

1.CPU 一条指令安装

首先查看自己的pytorch版本,命令如下:

import torch
print(torch.__version__)

点击这里官网地址,找到如下图所示的位置,选择自己的pytorch版本、系统等,然后复制红框内的代码,直接安装即可。

 cpu版本的安装非常简单,只要不弄错pytorch版本基本就不会出现问题。

2. GPU 安装

2.1 最好情况

首先同样查看Pytorch版本,注意输出的内容:

import torch
print(torch.__version__)
  • 情况1,输出pytorch版本加cuda版本,如下图
  • 那么恭喜你,也可以像CPU版本一样一条指令快捷安装。(如果不一样,请看2.2节)

    同样打开官网地址,选择上方输出的pytorch版本号和cuda版本号(比如上图我的pytorch就是1.11.0,cuda版本就是11.3),然后复制下方的命令直接粘贴就可以下载安装。

     

    如果你的版本号在这个上图中没有,不用着急,直接替换一些数字就可以了。

    比如你输出的是1.11.0+cu112,可以看到上图中是没有选项的,但是我们可以随便选择一个pytorch和cuda版本,先生成一条命令,比如:

    pip install torch-scatter torch-sparse torch-cluster torch-spline-conv torch-geometric -f https://data.pyg.org/whl/torch-1.11.0+cu113.html

    这时候我们直接替换后面对应的自己的数字,比如我输出1.11.0+cu112,就替换成

    pip install torch-scatter torch-sparse torch-cluster torch-spline-conv torch-geometric -f https://data.pyg.org/whl/torch-1.11.0+cu112.html

    其他版本同理,这样应该就可以直接安装了。

    2.2 有些郁闷

    当你使用下面的命令,只输出了pytorch版本没有后面的cuda版本,比如只输出了1.11.0

    import torch
    print(torch.__version__)

     这时候,情况就比较麻烦了,我直接来讲解决办法,重装pytorch。

    pip3 install torch==1.11.0+cu113 torchvision==0.12.0+cu113 torchaudio===0.11.0+cu113 -f https://download.pytorch.org/whl/cu113/torch_stable.html

    我这里使用的是上方的这行代码直接安装,当然对应的版本号可能要根据自己的情况来更改一下。

    (注:上方命令在本地以及多台服务器上尝试成功,如果不适合你的环境,可能需要自己再找一下,核心就是让安装的版本输出 torch.__version__  时带有cuda)

    安装之后,再次输出 print(torch.__version__) ,返回的就应该是带cuda的pytorch版本号,此时再根据2.1节的方法安装即可。

    2.3 个人分析

    安装torch-geometric,最重要的就是版本问题,最主要的就是cuda版本。

    当遇到了2.2节问题的时候,我首先想到的是参考2.1节修改命令中版本的方法来安装,于是我先来查看cuda版本。

    查看cuda版本的命令我知道的有两个

  • nvcc -V ,直接返回cuda版本。
  • nvidia-smi,这个是查看GPU信息的命令,返回信息中包含cuda版本,如下图右上角。(注意:图片中命令在notebook中运行,所以加了叹号,正常不需要。)
  • 但是很奇怪我两条命令返回的cuda版本却不一样,(求大神解答)。

    我尝试将查到的cuda版本都替换,发现可以安装,但是安装过程却极其缓慢,极其缓慢,极其缓慢,最终安装完成,但是在运行时依旧报错。

    问题还是出在了版本不匹配上。

    我认为安装时候需要的cuda版本,一定就是pytorch本身带的cuda版本,跟我们本地的没有关系,比如输出1.11.0+cu113,这个cu113代表我们安装的pytorch就是带有cuda的。

    所以我尝试了2.2节中的方法最终成功。

    来源:mougeiwala

    物联沃分享整理
    物联沃-IOTWORD物联网 » Torch_geometric安装教程, 问题汇总详解。

    发表评论