MCPcopy Index your code
hub / github.com/shenweichen/GraphEmbedding / node2vec_walk

Method node2vec_walk

ge/walker.py:38–62  ·  view source on GitHub ↗
(self, walk_length, start_node)

Source from the content-addressed store, hash-verified

36 return walk
37
38 def node2vec_walk(self, walk_length, start_node):
39
40 G = self.G
41 alias_nodes = self.alias_nodes
42 alias_edges = self.alias_edges
43
44 walk = [start_node]
45
46 while len(walk) < walk_length:
47 cur = walk[-1]
48 cur_nbrs = list(G.neighbors(cur))
49 if len(cur_nbrs) > 0:
50 if len(walk) == 1:
51 walk.append(
52 cur_nbrs[alias_sample(alias_nodes[cur][0], alias_nodes[cur][1])])
53 else:
54 prev = walk[-2]
55 edge = (prev, cur)
56 next_node = cur_nbrs[alias_sample(alias_edges[edge][0],
57 alias_edges[edge][1])]
58 walk.append(next_node)
59 else:
60 break
61
62 return walk
63
64 def node2vec_walk2(self, walk_length, start_node):
65 """

Callers 1

_simulate_walksMethod · 0.95

Calls 1

alias_sampleFunction · 0.85

Tested by

no test coverage detected