Need help with ppnp?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

179 Stars 38 Forks MIT License 41 Commits 2 Opened issues


PPNP & APPNP models from "Predict then Propagate: Graph Neural Networks meet Personalized PageRank" (ICLR 2019)

Services available


Need anything else?

Contributors list


TensorFlow and PyTorch implementations of the model proposed in the paper:

Predict then Propagate: Graph Neural Networks meet Personalized PageRank
by Johannes Klicpera, Aleksandar Bojchevski, Stephan Günnemann
Published at ICLR 2019.

Run the code

The easiest way to get started is by looking at the notebook

. The notebook
shows how to reproduce the results from the paper.


The repository uses these packages:


You can install all requirements via

pip install -r requirements.txt
. However, in practice you will only need either TensorFlow or PyTorch, depending on which implementation you use. If you use the
method for importing other datasets you will additionally need NetworkX.


To install the package, run

python install


In the

folder you can find several datasets. If you want to use other (external) datasets, you can e.g. use the
method in
for converting NetworkX graphs to our SparseGraph format.

The Cora-ML graph was extracted by Aleksandar Bojchevski, and Stephan Günnemann. "Deep gaussian embedding of attributed graphs: Unsupervised inductive learning via ranking." ICLR 2018,
while the raw data was originally published by Andrew Kachites McCallum, Kamal Nigam, Jason Rennie, and Kristie Seymore. "Automating the construction of internet portals with machine learning." Information Retrieval, 3(2):127–163, 2000.

The Citeseer graph was originally published by Prithviraj Sen, Galileo Namata, Mustafa Bilgic, Lise Getoor, Brian Gallagher, and Tina Eliassi-Rad. "Collective Classification in Network Data." AI Magazine, 29(3):93–106, 2008.

The PubMed graph was originally published by Galileo Namata, Ben London, Lise Getoor, and Bert Huang. "Query-driven Active Surveying for Collective Classification". International Workshop on Mining and Learning with Graphs (MLG) 2012.

The Microsoft Academic graph was originally published by Oleksandr Shchur, Maximilian Mumme, Aleksandar Bojchevski, Stephan Günnemann. "Pitfalls of Graph Neural Network Evaluation". Relational Representation Learning Workshop (R2L), NeurIPS 2018.


Please contact [email protected] in case you have any questions.


Please cite our paper if you use the model or this code in your own work:

    title = {Predict then Propagate: Graph Neural Networks meet Personalized PageRank},
    author = {Klicpera, Johannes and Bojchevski, Aleksandar and G{\"u}nnemann, Stephan},
    booktitle={International Conference on Learning Representations (ICLR)},
    year = {2019}

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.