Skip to content

AAAI 2020 - InteractE: Improving Convolution-based Knowledge Graph Embeddings by Increasing Feature Interactions

License

Notifications You must be signed in to change notification settings

BanksyX/InteractE

 
 

Repository files navigation

InteractE

Improving Convolution-based Knowledge Graph Embeddings by Increasing Feature Interactions

Overview of InteractE ...

Given entity and relation embeddings, InteractE generates multiple permutations of these embeddings and reshapes them using a "Chequered" reshaping function. Depthwise circular convolution is employed to convolve each of the reshaped permutations, which are then fed to a fully-connected layer to compute scores. Please refer to Section 6 of the paper for details.*

Dependencies

  • Compatible with PyTorch 1.0 and Python 3.x.
  • Dependencies can be installed using requirements.txt.

Dataset:

  • We use FB15k-237, WN18RR and YAGO3-10 datasets for evaluation.
  • FB15k-237, WN18RR are included in the repo. YAGO3-10 can be downloaded from here.

Training model from scratch:

  • Install all the requirements from requirements.txt.

  • Execute sh preprocess.sh for extracting the datasets and setting up the environment.

  • To start training InteractE run:

    # FB15k-237
    python interacte.py --data FB15k-237 --gpu 0 --name fb15k_237_run
    
    # WN18RR
    python interacte.py --data WN18RR --batch 256 --train_strategy one_to_n --feat_drop 0.2 --hid_drop 0.3 --perm 4 --ker_sz 11 --lr 0.001
    
    # YAGO03-10
    python interacte.py --data YAGO3-10 --train_strategy one_to_n  --feat_drop 0.2 --hid_drop 0.3 --ker_sz 7 --num_filt 64 --perm 2
    • data indicates the dataset used for training the model. Other options are WN18RR and YAGO3-10.
    • gpu is the GPU used for training the model.
    • name is the provided name of the run which can be later used for restoring the model.
    • Execute python interacte.py --help for listing all the available options.

Evaluating Pre-trained model:

  • Execute sh preprocess.sh for extracting the datasets and setting up the environment.

  • Download the pre-trained model from here and place in torch_saved directory.

  • To restore and evaluate run:

    python interacte.py --data FB15k-237 --gpu 0 --name fb15k_237_pretrained --restore --epoch 0

Citation:

Please cite the following paper if you use this code in your work.

@inproceedings{interacte2020,
  title={InteractE: Improving Convolution-based Knowledge Graph Embeddings by Increasing Feature Interactions},
  author={Vashishth, Shikhar and Sanyal, Soumya and Nitin, Vikram and Agrawal, Nilesh and Talukdar, Partha},
  booktitle={Proceedings of the 34th AAAI Conference on Artificial Intelligence},
  pages={3009--3016},
  publisher={AAAI Press},
  url={https://aaai.org/ojs/index.php/AAAI/article/view/5694},
  year={2020}
}

For any clarification, comments, or suggestions please create an issue or contact Shikhar.

About

AAAI 2020 - InteractE: Improving Convolution-based Knowledge Graph Embeddings by Increasing Feature Interactions

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.5%
  • Shell 0.5%