支持多深度学习框架的图神经网络算法库GammaGL
北邮GAMMA LAB 与鹏城实验室最新开源图神经网络算法库Gamma Graph Library (GammaGL),基于TensorLayerX开发,支持多后端深度学习框架,如TensorFlow、PyTorch、PaddlePaddle、MindSpore。
除此之外,GammaGL与主流的PyTorch Geometric (PyG) 的接口设计非常接近,你可以当做支持TensorFlow、Paddle、MindSpore的PyG来进行开发,一键即可切换后端深度学习框架。同时,我们提供了二十几个主流经典的模型,供大家复用。
本文将介绍三个方面内容:
根据背景介绍GammaGL的两大特点:支持多后端和类PyG的设计原则;
GammaGL使用方法。
GammaGL整体架构;
启智社区开源地址:https://git.openi.org.cn/GAMMALab/GammaGL
GitHub开源地址:https://github.com/BUPT-GAMMA/GammaGL
类PyG的使用方法与用户体验
PyG在Github已获得14.8k stars,无疑是最受欢迎的图神经网络框架之一。同时,PyG是PyTorch-on-the-rocks,即使用Tensor-centric的API,并接近原生PyTorch的设计原则,使得其与PyTorch一样拥有较高的易用性。所以,PyG也积累了大量的用户,顶会源码中也少不了PyG的身影。
因此,GammaGL借鉴了PyG的设计框架,如Tensor-centric的API设计、类torchvision的数据变换与增强等。如果你是一个PyG的用户或非常熟悉PyG,GammaGL将会非常友好,也将会扩展成为TensorFlow Geometric、Paddle Geometric、MindSpore Geometric。
预训练模型
GammaGL提供了二十余个算法供大家使用,包含同质图上一些经典的模型、对比学习模型、异质图神经网络模型等。
TensorFlow | PyTorch | Paddle | MindSpore | |
---|---|---|---|---|
GCN [ICLR 2017] | ||||
GAT [ICLR 2018] | ||||
GraphSAGE [NeurIPS 2017] | ||||
ChebNet [NeurIPS 2016] | ||||
GCNII [ICLR 2017] | ||||
JKNet [ICML 2018] | ||||
DiffPool [NeurIPS 2018] | ||||
SGC [ICML 2019] | ||||
GIN [ICLR 2019] | ||||
APPNP [ICLR 2019] | ||||
AGNN [arxiv] | ||||
SIGN [ICML 2020 Workshop] | ||||
DropEdge [ICLR 2020] | ||||
GATv2 [ICLR 2021] | ||||
GPRGNN [ICLR 2021] | ||||
FAGCN [AAAI 2021] | ||||
GNN-Film [PMLR 2020] | ||||
GraphGAN [AAAI 2018] | ||||
HardGAT [KDD 2019] | ||||
MixHop [ICML 2019] | ||||
PNA [NeurIPS 2020] | ||||
GEN [WWW 2021] |
Contrastive Learning | TensorFlow | PyTorch | Paddle | MindSpore |
---|---|---|---|---|
DGI [ICLR 2019] | ||||
GRACE [ICML 2020 Workshop] | ||||
MVGRL [ICML 2020] | ||||
InfoGraph [ICLR 2020] | ||||
MERIT [IJCAI 2021] |
Heterogeneous Graph Learning | TensorFlow | PyTorch | Paddle | MindSpore |
---|---|---|---|---|
RGCN [ESWC2018] | ||||
HAN [WWW 2019] | ||||
HGT [WWW 2020] | ||||
SimpleHGN [KDD 2021] |