# 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)| PPI (micro-F1)| | ------ | ----------- | ------------- | | Paper | 78.5% | 0.952 | | DGL | 73.0% | 0.959 |