cdlib.evaluation.normalized_cut

cdlib.evaluation.normalized_cut(graph: Graph, community: object, summary: bool = True) object

Cut-Ratio的归一化变体

\[f(S) = \frac{c_S}{2m_S+c_S} + \frac{c_S}{2(m−m_S )+c_S}\]

其中 \(m\) 是图的边数,\(m_S\) 是社区内部边数,\(c_S\) 是社区节点数。

Parameters:
  • graph – 一个 networkx/igraph 对象

  • 社区 – NodeClustering 对象

  • summary – 布尔值。如果为True,则返回分区的聚合分数,否则返回单个社区的分数。默认值为True

Returns:

如果 summary==True 则返回一个 FitnessResult 对象,否则返回一个浮点数列表。

示例:

>>> from cdlib.algorithms import louvain
>>> from cdlib import evaluation
>>> g = nx.karate_club_graph()
>>> communities = louvain(g)
>>> mod = evaluation.normalized_cut(g,communities)
References:

1. Shi, J., Malik, J.: 归一化切割和图像分割。部门论文(CIS),107(2000)