This software can be used to reproduce the results in our "SimplE Embedding for Link Prediction in Knowledge Graphs" paper. It can be also used to learn SimplE
models for other datasets. The software can be also used as a framework to implement new tensor factorization models (implementations for TransE
and ComplEx
are included as two examples).
Python
version 2.7 or higherNumpy
version 1.13.1 or higherTensorflow
version 1.1.0 or higher
To run a model M
on a dataset D
, do the following steps:
cd
to the directory wheremain.py
is- Run
python main.py -m M -d D
Examples (commands start after $):
$ python main.py -m SimplE_ignr -d wn18
$ python main.py -m SimplE_avg -d fb15k
$ python main.py -m ComplEx -d wn18
Running a model M
on a dataset D
will save the embeddings in a folder with the following address:
$ <Current Directory>/M_weights/D/
As an example, running the SimplE_ignr
model on wn18
will save the embeddings in the following folder:
$ <Current Directory>/SimplE_ignr_weights/wn18/
The best embeddings learned for SimplE_ignr
and SimplE_avg
on wn18
and fb15k
can be downloaded from this link and this link respectively.
To use these embeddings, place them in the same folder as main.py
, load the embeddings and use them.
Refer to the following publication for details of the models and experiments.
If you use this package for published work, please cite our paper. Below is the BibTex:
@article{kazemi2018simple,
title={SimplE Embedding for Link Prediction in Knowledge Graphs},
author={Kazemi, Seyed Mehran and Poole, David},
journal={arXiv preprint arXiv:1802.04868},
year={2018}
}
Seyed Mehran Kazemi
Computer Science Department
The University of British Columbia
201-2366 Main Mall, Vancouver, BC, Canada (V6T 1Z4)
http://www.cs.ubc.ca/~smkazemi/
Licensed under the GNU General Public License Version 3.0. https://www.gnu.org/licenses/gpl-3.0.en.html
Copyright (C) 2018 Seyed Mehran Kazemi