Files
dmlc--dgl/examples/pytorch/geniepath/README.md
T
2026-07-13 13:35:51 +08:00

55 lines
1.5 KiB
Markdown

# DGL Implementation of the GeniePath Paper
This DGL example implements the GNN model proposed in the paper [GeniePath: Graph Neural Networks with Adaptive Receptive Paths](https://arxiv.org/abs/1802.00910).
Example implementor
----------------------
This example was implemented by [Kay Liu](https://github.com/kayzliu) during his SDE intern work at the AWS Shanghai AI Lab.
Dependencies
----------------------
- Python 3.7.10
- PyTorch 1.8.1
- dgl 0.7.0
- scikit-learn 0.23.2
Dataset
---------------------------------------
The datasets used for node classification are [Pubmed citation network dataset](https://docs.dgl.ai/api/python/dgl.data.html#dgl.data.PubmedGraphDataset) (tranductive) and [Protein-Protein Interaction dataset](https://docs.dgl.ai/api/python/dgl.data.html#dgl.data.PPIDataset) (inductive).
How to run
--------------------------------
If want to train on Pubmed (transductive), run
```
python pubmed.py
```
If want to use a GPU, run
```
python pubmed.py --gpu 0
```
If want to train GeniePath-Lazy, run
```
python pubmed.py --lazy True
```
If want to train on PPI (inductive), run
```
python ppi.py
```
Performance
-------------------------
Dataset: Pubmed (ACC)
|Method | GeniePath|
| ------ | ----------- |
| Paper | 78.5% |
| DGL | 73.0% |
Dataset: PPI (micro-F1)
|Method | GeniePath| GeniePath-lazy| GeniePath-lazy-residual|
| ------ | ----------- | ------------- | ------------------ |
| Paper | 0.9520 | 0.9790 | 0.9850 |
| DGL | 0.9729 | 0.9802 | 0.9798 |