cdlib.evaluation.surprise¶
-
surprise
(graph: <Mock id='139632754491536'>, communities: object, **kwargs) → object¶ Surprise is statistical approach proposes a quality metric assuming that edges between vertices emerge randomly according to a hyper-geometric distribution.
According to the Surprise metric, the higher the score of a partition, the less likely it is resulted from a random realization, the better the quality of the community structure.
Parameters: - graph – a networkx/igraph object
- communities – NodeClustering object
Returns: FitnessResult object
Example:
>>> from cdlib.algorithms import louvain >>> from cdlib import evaluation >>> g = nx.karate_club_graph() >>> communities = louvain(g) >>> mod = evaluation.surprise(g,communities)
References: - Traag, V. A., Aldecoa, R., & Delvenne, J. C. (2015). Detecting communities using asymptotical surprise. Physical Review E, 92(2), 022816.