CSGraphAnchorSearcher

class CSGraphAnchorSearcher[源代码]

基础类:AnchorSearcher

使用scipy.sparse.csgraph找到最近的锚点。

方法总结

__call__(edge_index, anchors, k[, num_entities])

为每个实体找到\(k\)个最近的锚节点。

topk_argpartition(array, k)

使用argpartition返回排序后的前k个索引。

topk_argsort(array, k)

返回使用argsort排序后的前k个索引。

方法文档

__call__(edge_index: ndarray, anchors: ndarray, k: int, num_entities: int | None = None) ndarray[来源]

为每个实体找到\(k\)个最近的锚节点。

Parameters:
  • edge_index (ndarray) – 形状: (2, m) 边索引

  • anchors (ndarray) – 形状: (a,) 选定的锚点实体ID

  • k (int) – 返回的最接近的锚点数量

  • num_entities (int | None) – 实体的数量

Returns:

形状: (n, k), -1 <= res < a 最近锚点的ID

Return type:

ndarray

static topk_argpartition(array: ndarray, k: int) ndarray[来源]

使用argpartition返回排序后的前k个索引。

它的复杂度是 \(O(m * (n + k log k))\).

Parameters:
  • 数组 (ndarray) – 形状: (n, m) 数组

  • k (int) – \(k\) 的值

Returns:

形状: (m, k) 按降序排序的\(k\)个最小值的索引

Return type:

ndarray

static topk_argsort(array: ndarray, k: int) ndarray[来源]

返回使用argsort排序后的前k个索引。

它的复杂度是 \(O(m * n log n)\)

Parameters:
  • 数组 (ndarray) – 形状: (n, m) 数组

  • k (int) – \(k\) 的值

Returns:

形状: (m, k) 按降序排序的\(k\)个最小值的索引

Return type:

ndarray