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.