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).
Pythonversion 2.7 or higherNumpyversion 1.13.1 or higherTensorflowversion 1.1.0 or higher
To run a model M on a dataset D, do the following steps:
cdto the directory wheremain.pyis- 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