abhigoku10 / pyGNN_nodeclassify

Different GNN methods for node classification

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GNN-Pytorch

Pytorch implementation of GNN methods and models. Pytorch implementation of GNN.

THe intention of this repo is understand and integrate the methods then obtaining highger results.


Node Classification

List of data sets used, OGB (https://github.com/snap-stanford/ogb) data sets can be used if conditions permit :

Dataset Nodes Edges Node Attr. Classes Train Valid Test
Cora 2708 5429 1433 7 140 500 1000
Cora-Full 2708 5429 1433 7 1208 500 1000
Citeseer 3327 4732 3703 6 120 500 1000
Citeseer-Full 3327 4732 3703 6 1827 500 1000
Pubmed 19717 44338 500 3 60 500 1000
Pubmed-Full 19717 44338 500 3 18217 500 1000

Accuracy Metrics of Node Classification

Status Method Paper Cora Citeseer Pubmed
✔️ GCN Kipf and Welling, 2017 0.8220 0.6960 0.780
✔️ GraphSAGE Hamilton and Ying et al., 2017 0.850 NA 0.808
✔️ GAT Velickovic et al., 2018 0.7840 0.7060 NA
✔️ SP_GAT Yang Ye, Shihao Ji et al., 2021 0.8180 0.7070 0.7750
✔️ FastGCN* Chen and Ma et al., 2018 0.8240 0.7710 0.8780
✔️ GRAND Feng and Zhang et al., 2020 0.839 0.726 0.797
✔️ GWNN Bingbing Xu, Huawei Shen, Qi Cao et al., 2019 0.7990 0.7710 NA

* NA is because was not able to run in my system


Packages

Package Version Installation
python 3.8.6 conda create --name gnn python=3.8.6
numpy 1.20.0 pip install numpy==1.20.0
scipy 1.6.0 pip install scipy==1.6.0
pyyaml 5.4.1 pip install pyyaml==5.4.1
scikit-learn 0.24.1 pip install scikit-learn==0.24.1
pytorch 1.7.1 conda install pytorch==1.7.1 cudatoolkit=11.0 -c pytorch
torch-geometric 1.6.3 Installation

Reference Links

GCN : https://github.com/tkipf/pygcn

GAT : https://github.com/Diego999/pyGAT

SP_GAT : https://github.com/Diego999/pyGAT

GraphSage : https://github.com/dsgiitr/graph_nets

GWNN : https://github.com/Yanqi-Chen/GWNN

FastGCN : https://github.com/Gkunnan97/FastGCN_pytorch

GRAND : https://github.com/THUDM/GRAND

GraphLime: https://github.com/WilliamCCHuang/GraphLIME.git


License

This is open source project collected from other open sources , feel free to give feedback and raise comments

About

Different GNN methods for node classification


Languages

Language:HTML 50.2%Language:Python 49.8%