PYG(Pytorch Geometric)中文说明书——第1章安装

1.1安装时的叮嘱
PyG适用于python3.7到python3.11

!小提示
咱不建议以root用户在您的系统上安装Python。要是非得装就要设置一个虚拟环境。例如,用Anaconda或Miniconda,或者创建Docker镜像。

唰地一下,咱开始吧(本宝水平有限,如有不妥的地方还望各路大佬不吝赐教,在下感激不尽)
在这里插入图片描述
在terminal终端上用pip安装torch_geometric

pip install torch_geometric

当然,你还得在整点别的依赖包,不然报错啊

pip install pyg_lib torch_scatter torch_sparse torch_cluster torch_spline_conv -f https://data.pyg.org/whl/torch-2.0.0+cpu.html

1.1.1 用Anaconda安装PYG
行了,现在你能用anaconda把PYG装在所有OS操作系统上了。如果现在pytorch还是没装上,那你要么去官方或者非官方文档上查一下这咋整,要么你自己搜一下pytorch+cuda(即torch+cu)这种whl文件,自己用conda命令在terminal终端上安装。
咱就是说,现在不管你咋装上的pytorch,咱都得开始往下进行了凹。
假设你已经装上了pytorch(>=1.12.0),则在终端输入

conda install pyg -c pyg

小tip
conda命令现在在windows和M1\M2\M3 macs上还不能使

1.1.2 用PyPi安装PYG
从PYG2.3版本之后,你只要安装了pytorch,不用再装别的外部库external library就能使用pyg了。terminal安装命令为:

pip install torch_geometric

<注>pyg2.3要求pytorch的版本为1.12及以上。

1.2 额外需要的库
如果你想用PyG的全部功能,就得多装几个库:
(1)pyg-lib:异构GNN操作指令和图采样例程
(2)torch-scatter:加速、有效减少稀疏
(3)torch-sparse:SparseTensor的支持
(4)torch-cluster:图聚类例程
(5)torch-spline-conv: SplineConv的支持

这些包自带基于PyTorch c++ /CUDA/hip(ROCm)扩展接口的CPU和GPU内核实现。在PyG的基本用法中,这些依赖包都能随便用。这里建议先装最基本的包,等到你有实际需要的时候再安装别的依赖包。

1.3 轮子安装
为了便于这些扩展包的安装,咱可以用pip指令在所有的操作系统OS进行wheels的安装:

警告
M1/M2/M3 macs 没有wheels可以用,你们得往源代码里装扩展包

(1)保证pytorch1.12.0及其以上的版本装上了

python -c “import torch; print(torch.version)”
>>> 2.0.0

(2)查询安装了pytorch的CUDA版本

python -c “import torch; print(torch.version.cuda)”
>>> 11.7

(3)安装相关的包

pip install pyg_lib torch_scatter torch_sparse torch_cluster torch_spline_conv -f https://data.pyg.org/whl/torch-${TORCH}+${CUDA}.html

其中,${TORCH}${CUDA}的地方得用其对应版本代替:

  • PyTorch 2.0: ${TORCH}=2.0.0 and ${CUDA}=cpu|cu117|cu118
  • PyTorch 1.13: ${TORCH}=1.13.0 and ${CUDA}=cpu|cu116|cu117

举个栗子来说,pytorch2.0.*和CUDA11.7

pip install pyg_lib torch_scatter torch_sparse torch_cluster torch_spline_conv -f https://data.pyg.org/whl/torch-2.0.0+cu117.html

再举个栗子,pytorch1.13.*和CUDA11.6

pip install pyg_lib torch_scatter torch_sparse torch_cluster torch_spline_conv -f https://data.pyg.org/whl/torch-1.13.0+cu116.html

pytorch旧版本的二进制文件也是提供的1.4.0, 1.5.0, 1.6.0, 1.7.0, 1.7.1, 1.8.0, 1.8.1, 1.9.0, 1.10.0, 1.10.1, 1.10.2, 1.11.0, 1.12.0 和1.12.1,安装时(比如在setting里)得明白地选中你要哪个旧版本号。不然的话也可以下载.whl文件到site-packages文件夹用pip install --no-index在terminal安装。

1.4 从源代码装pyg
如果指定版本的wheel安装不了,你也可以直接从源代码那装~~
1.4.1 确保你的CUDA正确安装:
(1)检查你的pytorch是否是CUDA支持版(whl 有+cu的字样)

python -c “import torch; print(torch.cuda.is_available())”
>>> True

(2)2将CUDA添加到SPATH和SCPATH(注意,您的实际CUDA路径可能与/usr/local/cuda不同):

export PATH=/usr/local/cuda/bin:$PATH
echo $PATH
>>> /usr/local/cuda/bin:...
export CPATH=/usr/local/cuda/include:$CPATH
echo $CPATH
>>> /usr/local/cuda/include:...

(3)将CUDA添加到Linux上的$LD_LIBRARY_PATH和macOS上的SDYLD_LIBRARY_PATH(注意,您的实际CUDA路径可能与/usr/local/cuda不同):

export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
echo $LD_LIBRARY_PATH
>>> /usr/local/cuda/lib64:...
export DYLD_LIBRARY_PATH=/usr/local/cuda/lib:$DYLD_LIBRARY_PATH
echo $DYLD_LIBRARY_PATH
>>> /usr/local/cuda/lib:...

(4)在terminal上确认nvcc安装成功:

nvcc --version
>>> 11.6

(5)再确认一下pytorch和CUDA的版本是一致的

python -c “import torch; print(torch.version.cuda)”
>>> 11.6

nvcc --version
>>> 11.6

1.4.2 安装相关包:

pip install --verbose git+https://github.com/pyg-team/pyg-lib.git
pip install --verbose torch_scatter
pip install --verbose torch_sparse
pip install --verbose torch_cluster
pip install --verbose torch_spline_conv

在极少数情况下,CUDA或Python路径问题可能会阻碍成功安装。pip甚至可能是安装成功的信号,但执行只是由于分段故障(核心转储)而崩溃。请按照官方安装指南验证您的CUDA设置是否正确。我们在常见问题小节中收集了常见的安装错误。如果常见问题解答不能帮助您解决问题,请创建一个问题。

1.5 常见问题解答

  • 未定义的符号:make_function_schema:此问题信号(1)安装的PyTorch版本与指定安装扩展包的s(ToRCH)版本之间的版本冲突,或(2)已安装的PyTorch的CUDA版本与指定安装扩展包的{CUDA}版本之间的版本冲突。请验证您的pytorch版本及其CUDA版本是否与您的安装命令匹配:

python -c “import torch; print(torch.version)”
python -c “import torch; print(torch.version.cuda)”
nvcc --version

  • 假如要重新安装,你的用这条命令确保没有遇到任何缓存问题:

pip --force-reinstall --no-cache-dir

这条pip --verbose可能有助于跟踪安装期间的任何问题。
如果您仍然没有发现安装成功,请尝试从源代码安装扩展包。

(诶嘛呀终于整完一点点了,累挺)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值