torch-geometric
需要提前安装:torch-scatter
、torch-sparse
、torch-cluster
、torch-spline-conv
安装的时候会遇到很多的问题,版本号
以及安装包源
的问题
安装框架模型,大约装了几个之后,每次给的教程都是会报错,就像是中了魔咒一样。
其实最开始就感觉,安装东西还是要根据官方网站
来解决这些问题。
所以我们就参考当时的官方网站
的安装教程。
官方安装教程
我们在官方教程里面主要是看Installation via Pip Wheels
部分,使用Anaconda
进行安装虚拟环境。
Install the relevant packages
部分pip install torch-scatter -f https://data.pyg.org/whl/torch-${TORCH}+${CUDA}.html
pip install torch-sparse -f https://data.pyg.org/whl/torch-${TORCH}+${CUDA}.html
pip install torch-geometric
where
${CUDA}
and${TORCH}
should be replaced by the specific CUDA version (cpu
,cu102
,cu113
,cu115
) and PyTorch version (1.10.0
,1.11.0
), respectively. For example, for PyTorch 1.11.* and CUDA 11.3, type:
pip install torch-scatter -f https://data.pyg.org/whl/torch-1.11.0+cu113.html
pip install torch-sparse -f https://data.pyg.org/whl/torch-1.11.0+cu113.html
pip install torch-geometric
注:
他这里提到的是通过这种下载方式
把${CUDA}
换成 (cpu
, cu102
, cu113
, cu115
) ,把 ${TORCH}
换成 (1.10.0
, 1.11.0
)。
其他的版本,比如我想要一个pytorch
是1.6.0
的,那么就不符合人家的条件了,就不能这样下载了,需要看一下面啦!
**重点**
Binaries of older versions are also provided for PyTorch 1.4.0, PyTorch 1.5.0, PyTorch 1.6.0, PyTorch 1.7.0/1.7.1, PyTorch 1.8.0/1.8.1 and PyTorch 1.9.0 (following the same procedure). For older versions, you need to explicitly specify the latest supported version number in order to prevent a manual installation from source. You can look up the latest supported version number.
注:
其实这就是上面提到的匹配(torch
和cuda
版本要对应,可以根据pytorch
官网进行查看,其实这是最开始安装pytorch
的时候应该考虑的问题,这个下面在讲一下吧 ),以及要符合现在torch-geometric
中下载库的要求(上面的下载方式当前只支持CUDA
: (cpu
, cu102
, cu113
, cu115
),TORCH
1.10.0
, 1.11.0
))。
那么比较老的版本就需要安装原文的规定:For older versions, you need to explicitly specify the latest supported version number
开始一直没有看懂,试了好多方法,说是要明确指出支持的最新版本号
(其实这个意思就是需要指出明确的各个包的版本号,如果还没有理解,那就看一下下面的命令以及对应的页面),查看官网的各个插件版本地址here
而且他只是说需要加上一个版本号,也就是其他的形式还是不变的。
根据上面的例子以及实际情况进行修改:
首先,上面的例子:
pip install torch-scatter -f https://data.pyg.org/whl/torch-1.11.0+cu113.html
pip install torch-sparse -f https://data.pyg.org/whl/torch-1.11.0+cu113.html
pip install torch-geometric
我们发现torch-scatter
等附加包后面什么都没有(没有加版本号啥的),-f
后面的就是对应的torch
和cuda
版本号,这个也是固定的,地址源直接根据他给的就可以了。
根据上面提到的需要加上详细的版本号,是不是就是给这些附加包加上版本号,我就尝试了一下。那么另一个问题就是,怎么确定那个版本号呢?
这就是需要官网安装教程里面的一个网址:https://data.pyg.org/whl/
这里面就是对应的torch
和cuda
的版本号,打开自己需要的就可以了。
例如:我需要一个torch==1.6.0
,cuda==10.1
,那我就点进去之后出现了好多的版本(里面都是我们需要的这四个库):
具体的这些怎么选哪,其实我们就不用选,我们只需要版本号。我就选了一个最高的版本号,具体下载什么样子(适应哪个系统)的他会自己下载的。
我下载的命令就成了这样:
pip install torch-scatter==2.0.6 -f https://data.pyg.org/whl/torch-1.6.0+cu101.html
pip install torch-sparse==0.6.9 -f https://data.pyg.org/whl/torch-1.6.0+cu101.html
pip install torch-cluster==1.5.9 -f https://data.pyg.org/whl/torch-1.6.0+cu101.html
pip install torch-spline-conv==1.2.1 -f https://pytorch-geometric.com/whl/torch-1.6.0+cu101.html
pip install torch-geometric
具体还是要根据官方教程给的命令来进行更改,我之前遇到的官网的命令是pip install torch-scatter -f https://pytorch-geometric.com/whl/torch-${TORCH}+${CUDA}.html
,所以要根据官网的真实情况来改。