CoverageSplitter

class CoverageSplitter[source]

Bases: Splitter

This splitter greedily selects training triples such that each entity is covered and then splits the rest.

Methods Summary

split_absolute_size(mapped_triples, sizes, ...)

Split triples into clean groups.

Methods Documentation

split_absolute_size(mapped_triples: Tensor, sizes: Sequence[int], random_state: Generator) Sequence[Tensor][source]

Split triples into clean groups.

This method partitions the triples, i.e., each triple is in exactly one group. Moreover, it ensures that the first group contains all entities at least once.

Parameters:
  • mapped_triples (Tensor) – shape: (n, 3) the ID-based triples

  • sizes (Sequence[int]) – the absolute number of triples for each split part.

  • random_state (Generator) – the random state used for splitting

Returns:

a sequence of ID-based triples for each split part. the absolute may be different to ensure the constraint.

Return type:

Sequence[Tensor]