Torch-RGCN is a PyTorch implementation of the RGCN, originally proposed by Schlichtkrull et al. in
Modeling Relational Data with Graph Convolutional Networks.
In our paper, we reproduce the link prediction and node classification experiments from the original paper and using our reproduction we explain the RGCN. Furthermore, we present two new configurations of the RGCN.
Requirements:
- Conda >= 4.8
- Python >= 3.7
Do the following:
-
Download all datasets:
bash get_data.sh
-
Install the dependencies inside a new virtual environment:
bash setup_dependencies.sh
-
Activate the virtual environment:
conda activate torch_rgcn_venv
-
Install the torch-RGCN module:
pip install -e .
The hyper-parameters for the different experiments can be found in YAML files under
configs. The naming convention of the files is as follows: configs/{MODEL}/{EXPERIMENT}-{DATASET}.yaml
rgcn
- Standard RGCN Modelc-rgcn
- Compression RGCN Modele-rgcn
- Embedding RGCN Model
lp
- Link Predictionnc
- Node Classification
WN18
FB-Toy
AIFB
MUTAG
BGS
AM
Original Link Prediction Implementation: https://github.com/MichSchli/RelationPrediction
To run the link prediction experiment using the RGCN model using:
python experiments/predict_links.py with configs/rgcn/lp-{DATASET}.yaml
Make sure to replace {DATASET}
with one of the following dataset names: FB-toy
or WN18
.
Original Node Classification Implementation: https://github.com/tkipf/relational-gcn
To run the node classification experiment using the RGCN model using:
python experiments/classify_nodes.py with configs/rgcn/nc-{DATASET}.yaml
Make sure to replace {DATASET}
with one of the following dataset names: AIFB
, MUTAG
, BGS
or AM
.
To run the node classification experiment use:
python experiments/classify_nodes.py with configs/e-rgcn/nc-{DATASET}.yaml
Make sure to replace {DATASET}
with one of the following dataset names: AIFB
, MUTAG
, BGS
or AM
.
To run the link prediction experiment use:
python experiments/predict_links.py with configs/c-rgcn/lp-{DATASET}.yaml
Make sure to replace {DATASET}
with one of the following dataset names: FB-toy
, or WN18
.
AIFB
from Stephan Bloehdorn and York Sure. Kernel methods for mining instance data in ontologies.. In The Semantic Web, 6th International Semantic Web Conference, 2007.MUTAG
from A. K. Debnath, R. L. Lopez de Compadre, G. Debnath, A. J.Shusterman, and C. Hansch. Structure-activity relationship of mutagenic aromatic and heteroaromatic nitro-compounds correlation with molecular orbital energies and hydrophobicity. J Med Chem,34:786–797, 1991.BGS
from de Vries, G.K.D. A fast approximation of the Weisfeiler-Lehman graph kernel for RDF data. In European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases, 2013.AM
from de Boer, V., Wielemaker, J., van Gent, J., Hildebrand, M., Isaac, A., van Ossenbruggen, J., Schreiber, G. Supporting linked data production for cultural heritageinstitutes: The amsterdam museum case study. In The Semantic Web: Research and Applications, 2012.
WN18
from Antoine Bordes, Nicolas Usunier, Alberto Garcia-Duran , Jason Weston, and Oksana Yakhnenko. Translating embeddings for modeling multi-relational data. In Advances in Neural Information Processing Systems, 2013.FB-Toy
from Daniel Ruffinelli, Samuel Broscheit, and Rainer Gemulla. You CAN teach an old dog new tricks! on training knowledge graph embeddings. In International Conference on Learning Representations, 2019.