- Paper: Modeling Relational Data with Graph Convolutional Networks
- Author's code for entity classification: https://github.com/tkipf/relational-gcn
- Author's code for link prediction: https://github.com/MichSchli/RelationPrediction
- rdflib
- torchmetrics
Install as follows:
pip install rdflib
pip install torchmetricsRun with the following for entity classification (available datasets: aifb (default), mutag, bgs, and am)
python3 entity.py --dataset aifbFor mini-batch training, run with the following (available datasets are the same as above)
python3 entity_sample.py --dataset aifbFor multi-gpu training (with sampling), run with the following (same datasets and GPU IDs separated by comma)
python3 entity_sample_multi_gpu.py --dataset aifb --gpu 0,1Run with the following for link prediction on dataset FB15k-237 with filtered-MRR
python link.pyNOTE: By default, we use uniform edge sampling instead of neighbor-based edge sampling as in author's code. In practice, we find that it can achieve similar MRR.
| Dataset | Full-graph | Mini-batch |
|---|---|---|
| aifb | ~0.85 | ~0.82 |
| mutag | ~0.70 | ~0.50 |
| bgs | ~0.86 | ~0.64 |
| am | ~0.78 | ~0.42 |
| Dataset | Best MRR |
|---|---|
| FB15k-237 | ~0.2439 |