ScipySparseAnchorSearcher

class ScipySparseAnchorSearcher(max_iter=5)[source]

Bases: pykeen.nn.node_piece.anchor_search.AnchorSearcher

Find closest anchors using scipy.sparse.

Initialize the searcher.

Parameters

max_iter (int) – the maximum number of hops to consider

Methods Summary

__call__(edge_index, anchors, k)

Find the \(k\) closest anchor nodes for each entity.

bfs(anchors, adjacency, max_iter, k)

Determine the candidate pool using breadth-first search.

create_adjacency(edge_index)

Create a sparse adjacency matrix from a given edge index.

extra_repr()

Extra components for __repr__.

select(pool, k)

Select \(k\) anchors from the given pools.

Methods Documentation

__call__(edge_index, anchors, k)[source]

Find the \(k\) closest anchor nodes for each entity.

Parameters
  • edge_index (ndarray) – shape: (2, m) the edge index

  • anchors (ndarray) – shape: (a,) the selected anchor entity Ids

  • k (int) – the number of closest anchors to return

Return type

ndarray

Returns

shape: (n, k), -1 <= res < a the Ids of the closest anchors

static bfs(anchors, adjacency, max_iter, k)[source]

Determine the candidate pool using breadth-first search.

Parameters
  • anchors (ndarray) – shape: (a,) the anchor node IDs

  • adjacency (spmatrix) – shape: (n, n) the adjacency matrix

  • max_iter (int) – the maximum number of hops to consider

  • k (int) – the minimum number of anchor nodes to reach

Return type

ndarray

Returns

shape: (n, a) a boolean array indicating whether anchor \(j\) is in the set of \(k\) closest anchors for node \(i\)

static create_adjacency(edge_index)[source]

Create a sparse adjacency matrix from a given edge index.

Parameters

edge_index (ndarray) – shape: (2, m) the edge index

Return type

spmatrix

Returns

shape: (n, n) a square sparse adjacency matrix

extra_repr()[source]

Extra components for __repr__.

Return type

Iterable[str]

static select(pool, k)[source]

Select \(k\) anchors from the given pools.

Parameters
  • pool (ndarray) – shape: (n, a) the anchor candidates for each node (a binary array)

  • k (int) – the number of candidates to select

Return type

ndarray

Returns

shape: (n, k) the selected anchors. May contain -1 if there is an insufficient number of candidates