DeepGraphLearning / graphvite

GraphVite: A General and High-performance Graph Embedding System
https://graphvite.io
Apache License 2.0
1.21k stars 151 forks source link

How to use QuatE KG embeddings? #69

Closed xqzmplqo closed 3 years ago

xqzmplqo commented 4 years ago

I want to use the QuatE embeddings to do the following:

1.) Obtain the inverse operation i.e. given embeddings for two entities, obtain the relational embedding for them, i.e. the vector embedding for the relation between the two entities 2.) Given two relational embeddings, I want some way to compare them. Eg. typically in word embeddings you can use cosine_similarity to see how close two words are. How to do that kind of comparison here?

Can someone please let me know how the above can be done?

KiddoZhu commented 4 years ago

Hi. Sorry for late reply.

1) QuatE is a dot product model and there is no unique solution to the inverse operation. Inverse operations are only available for distance-based model like TransE and RotatE. 2) As far as I know there is no standard protocol for that. Maybe you can try either cosine similarity or L2 distance?