cdlib.algorithms.overlapping_seed_set_expansion¶
- cdlib.algorithms.overlapping_seed_set_expansion(g_original: object, seeds: list, ninf: bool = False, expansion: str = 'ppr', stopping: str = 'cond', nworkers: int = 1, nruns: int = 13, alpha: float = 0.99, maxexpand: float = inf, delta: float = 0.2) NodeClustering ¶
OSSE is an overlapping community detection algorithm optimizing the conductance community score The algorithm uses a seed set expansion approach; the key idea is to find good seeds, and then expand these seed sets using the personalized PageRank clustering procedure.
Supported Graph Types
Undirected
Directed
Weighted
Yes
No
No
- Parameters:
g_original – a networkx/igraph object
seeds – Node list
ninf – Neighbourhood Inflation parameter (boolean)
expansion – Seed expansion: ppr or vppr
stopping – Stopping criteria: cond
nworkers – Number of Workers: default 1
nruns – Number of runs: default 13
alpha – alpha value for Personalized PageRank expansion: default 0.99
maxexpand – Maximum expansion allowed for approximate ppr: default INF
delta – Minimum distance parameter for near duplicate communities: default 0.2
- Returns:
NodeClustering object
- Example:
>>> from cdlib import algorithms >>> import networkx as nx >>> G = nx.karate_club_graph() >>> com = algorithms.overlapping_seed_set_expansion(G)
- References:
1.Whang, J. J., Gleich, D. F., & Dhillon, I. S. (2013, October). Overlapping community detection using seed set expansion. In Proceedings of the 22nd ACM international conference on Conference on information & knowledge management (pp. 2099-2108). ACM.
Note
Reference implementation: https://github.com/pratham16/algorithms-detection-by-seed-expansion