需要用到GNN的小伙伴一定会需要用到torch_geometric包,这样会极大减轻我们工作量,一个GCNConv只需一行代码就能轻松调用,下面详细介绍torch_geometric包的安装过程。
1.环境+版本检查
首先检查自己使用的虚拟环境是哪一个,确保我们可以能正常的将这个包装到虚拟环境中正常调用。我的虚拟环境是Pytorch,如图1。
图1 激活虚拟环境
其次要检查自己虚拟环境中已安装的pytoch版本,安装的pytorch是cpu还是gpu的,以及cuda版本等等,操作命令如下代码。
import torch
print(torch.__version__) # 查看pytorch安装的版本号
print(torch.cuda.is_available()) # 查看cuda是否可用。True为可用,即是gpu版本pytorch
print(torch.cuda.get_device_name(0)) # 返回GPU型号
print(torch.cuda.device_count()) # 返回可以用的cuda(GPU)数量,0代表一个
print(torch.version.cuda) # 查看cuda的版本
比如我这里依次显示的是
1.7.0
True
GeForce MX110
1
10.1
ps:想要查看自己的python版本,可按如下操作步骤。
激活自己的虚拟环境,然后输入python即可。我这里的python版本是3.7.1。
图2
2.下载必要的依赖
去GitHub的pyg-team主页中找到pytorch-geometric包。网址如下:
pyg-team/pytorch_geometricgithub.com/pyg-team/pytorch_geometric
然后点击图3中的here,跳转链接。
图3 here链接
之后会弹到新的界面,如图4。这里就需要第一步中得到的torch版本,cuda版本选择对应的点击。对应我自己的就是选择的图中灰色的torch-1.7.0+cu101。(表示pytorch是1.7.0版本,cuda是10.1版本)
图4 按照实际情况选择
点击之后又会出现新的界面,如图5。一共有四种依赖,分别是torch_scatter,torch_sparse,torch_cluster,torch_spline_conv。每一种下载其中一个即可(torch_scatter-1.5.8表示torch_scatter版本号,cp37表示python3.7,win表示Windows操作系统,根据自己电脑种实际情况去选择安装)。单击后就会下载whl类型的文件。我这里下载后的文件如图6所示。
图5
图6
3.安装依赖
打开虚拟环境,进入到上述四个依赖的安装目录下,操作方式见图7。
图7 成功跳转到指定目录
然后依次进行安装,按照以下顺序执行命令(要看准自己的版本号):
先安装torch_scatter
pip install torch_scatter-2.0.7-cp37-cp37m-win_amd64.whl
第二步安装torch_sparse
pip install torch_sparse-0.6.9-cp37-cp37m-win_amd64.whl
第三步安装torch_cluster
pip install torch_cluster-1.5.9-cp37-cp37m-win_amd64.whl
第四步安装torch_spline_conv
pip install torch_spline_conv-1.2.1-cp37-cp37m-win_amd64.whl
第五步安装torch_geometric。如果开着梯子需要把梯子关掉!这一步也可以指定torch_geometric的版本安装,如pip install torch_geometric==2.0.4 -i https://pypi.doubanio.com/simple。也可用其他镜像源。
pip install torch_geometric==2.0.4 -i https://pypi.doubanio.com/simple
或者
pip install torch_geometric -i https://mirrors.aliyun.com/pypi/simple
或者
pip install torch_geometric -i https://pypi.tuna.tsinghua.edu.cn/simple
4.测试
在pycharm种输入import torch_geometric,没有显示报错即为安装成功。
5.备注
针对这篇文章,我在B站发布了一个教程视频,欢迎参考:pytorch_geometric详细安装教程_哔哩哔哩_bilibili
安装后可能会遇到两个运行报错问题(亲身经历):
(1)报错提示:ModuleNotFoundError: No module named 'torch.profiler'
请参考我的文章:MFBZS:ModuleNotFoundError: No module named 'torch.profiler'?
(2)报错提示:AttributeError: module 'torch' has no attribute "'sparse_csr'"
请参考我的文章:MFBZS:AttributeError: module 'torch' has no attribute "'sparse_csr'"
撰写不易,喜欢的话,收藏点赞支持下吧!
关注我,持续更新在跑深度学习过程中遇到的问题!