Knowledge graph embedding has shown to be succesfull when using divisional algebras (
First, make sure you have anaconda installed
Click me!
conda create -n decal python=3.10.13 --no-default-packages && conda activate decal && cd functionnal-embeddings &&
pip3 install -e .
wget https://files.dice-research.org/datasets/dice-embeddings/KGs.zip --no-check-certificate && unzip KGs.zip
To see available Models
- TransE, DistMult, ComplEx, ConEx, QMult, OMult, ConvO, ConvQ, PolyMult, LFMult, FMult, LFMult1
First install all the necessary packages using:
pip install -r requirements.txt
To get the results obtained in the paper for the UMLS data, do:
python3 run.py --model PolyMult --eval_model "train_val_test" --scoring_technique NegSample --degree 1 --lr 0.02 --embedding_dim 32 --num_epochs 500 --neg_ratio 50 --optim Adam --batch_size 1024
python3 run.py --model LFMult1 --eval_model "train_val_test" --scoring_technique NegSample --degree 1 --lr 0.02 --embedding_dim 32 --num_epochs 500 --neg_ratio 50 --optim Adam --batch_size 1024
python3 run.py --model LFMult1 --eval_model "train_val_test" --scoring_technique NegSample --degree 1 --lr 0.02 --embedding_dim 32 --num_epochs 500 --neg_ratio 50 --optim Adam --batch_size 1024