graphvite icon indicating copy to clipboard operation
graphvite copied to clipboard

modify edge_split for splitting a knowledge graph into train/valid/test for entity prediction

Open dchang56 opened this issue 6 years ago • 4 comments

Currently, the random split from edge_split() works only for link prediction. Could you modify the split to also work for entity prediction? Thank you!

dchang56 avatar Nov 30 '19 18:11 dchang56

Good idea. A small problem is that ensuring the entity set are observed in the splits might not be as scalable as previous stream-style random split. We will discuss on how to implement that.

KiddoZhu avatar Dec 01 '19 20:12 KiddoZhu

Maybe we could just create a separate test file for entity prediction that's a subset of seen triplets from the original split?

Also, does entity prediction work for the standard datasets for benchmark? And does that mean that the test sets in the benchmark datasets all have seen triplets?

dchang56 avatar Dec 01 '19 20:12 dchang56

I just checked entity prediction. It works on FB15k and WN18. So it means their test splits don't have any unobserved entities.

Then we will change edge_split() to satisfy that.

KiddoZhu avatar Dec 03 '19 15:12 KiddoZhu

Any updates?

dchang56 avatar Feb 11 '20 01:02 dchang56