锚点选择

class AnchorSelection(num_anchors: int = 32)[来源]

基础类:ExtraReprMixin, ABC

锚点实体选择策略。

初始化策略。

Parameters:

num_anchors (int) – 选择锚节点的数量。 # TODO: 允许相对

方法总结

__call__(edge_index[, known_anchors])

选择锚节点。

filter_unique(anchor_ranking, known_anchors)

过滤掉已经知道的锚点,然后从剩下的锚点中选择。

iter_extra_repr()

__repr__ 的额外组件。

方法文档

abstract __call__(edge_index: ndarray, known_anchors: ndarray | None = None) ndarray[source]

选择锚节点。

注意

如果边索引中存在的实体较少,则所选锚点的数量可能小于\(k\)

Parameters:
  • edge_index (ndarray) – 形状: (m, 2) edge_index,即邻接列表。

  • known_anchors (ndarray | None) – numpy.ndarray 一个已知锚点的数组,用于获取唯一的锚点

Returns:

(k,) 选中的实体ID

Return type:

ndarray

filter_unique(anchor_ranking: ndarray, known_anchors: ndarray | None) ndarray[source]

过滤掉已经知道的锚点,然后从剩下的锚点中选择。

注意

如果剩余的候选者不足,输出大小可能会更小。

Parameters:
  • anchor_ranking (ndarray) – 形状: (n,) 按偏好排序的锚节点ID,其中第一个是最优选的。

  • known_anchors (ndarray | None) – 形状: (m,) 一组已知的锚点

Returns:

形状: (m + num_anchors,) 扩展的锚点,即已知的和num_anchors个新的锚点。

Return type:

ndarray

iter_extra_repr() Iterable[str][source]

__repr__ 的额外组件。

Return type:

Iterable[str]