PyTorch implementation of Graph Convolutional Networks (GCNs) for semi-supervised classification [1].
For a high-level introduction to GCNs, see:
Thomas Kipf, Graph Convolutional Networks (2016)
Note: There are subtle differences between the TensorFlow implementation in https://github.com/tkipf/gcn and this PyTorch re-implementation. This re-implementation serves as a proof of concept and is not intended for reproduction of the results reported in [1].
This implementation makes use of the Cora dataset from [2].
python setup.py install
- PyTorch 0.4 or 0.5
- Python 2.7 or 3.6
python train.py
[1] Kipf & Welling, Semi-Supervised Classification with Graph Convolutional Networks, 2016
[2] Sen et al., Collective Classification in Network Data, AI Magazine 2008
Please cite our paper if you use this code in your own work:
@article{kipf2016semi,
title={Semi-Supervised Classification with Graph Convolutional Networks},
author={Kipf, Thomas N and Welling, Max},
journal={arXiv preprint arXiv:1609.02907},
year={2016}
}