跳到正文
格致开物MATHWIKI

模块度

内容维护:格致开物 · 编写与核验 · 修订记录 · 纠错

模块度(modularity)是评价网络某个社群划分的量:比较组内实际边数与一个基准矩阵给出的组内边量。它评价的是“图与划分的配合”,不是每个图只有一个与划分无关的固定分数;较大的模块度也不自动证明发现了唯一真实社群。

两个三角形 123 与 456 由边 34 相连,共七条边。按两个三角形分组,各组内部三条边,组内顶点度数之和都是七。这个例子可以同时展示模块度的实际项、基准项和合并两个组的影响。

两个三角形以一条桥相连,每个组内部三条边、度和七
度和包括组内边贡献两次和跨组桥贡献一次,因此每组是七而不是六。

双重求和与按组计算

设 G 为有限无向简单图,至少有一条边;邻接矩阵为 A,度为 ki,边数为 m>0。顶点划分为互不重叠且覆盖全体的组,ci 为顶点的组号。标准模块度定义为 Q=12m∑i,j(Aij−kikj2m)𝟏{ci=cj}. 求和包含 i=j;虽然简单图 Aii=0,基准对角项仍参与定义。基准矩阵行和为 ki,总和为 2m,表达保持度量级的比较。[1]

对组 C,记内部边数为 mC、度和为 DC=∑i∈Cki。组内邻接元素和为 2mC;基准乘积和为 DC2/(2m)。代回定义,逐组得到 Q=∑C[mCm−(DC2m)2]. 这一步说明两种公式为何相同,并解释内边与度和各怎样计数。

主例的两组划分给出 Q=2[3/7−(7/14)2]=5/14。把所有顶点放同一组,得到 1−1=0;把六点各成一组,得到 Q=−(22+22+32+32+22+22)/142=−17/98。负值是合法的,表示该划分的组内边量低于所选基准。

合并公式与分辨率限制

若两个现有组为 C,D,组间边数为 eCD,合并时内部边增加 eCD,基准平方从 DC2+DD2 变成 (DC+DD)2,故 ΔQ=eCDm−DCDD2m2. 在双三角例中为 1/7−49/98=−5/14,所以合并降低模块度。

变式。 保持这六点和桥不变,在远处再加入二十条彼此分离的边,仍把其他部分的分组固定。此时总边数变成二十七,原两组度和仍为七。合并它们的变化却成为 ΔQ=127−492⋅272=51458>0. 相同局部结构因全图规模改变而被模块度偏好合并。这是一个可复算的分辨率限制,说明最大化标准模块度可能合并小而清晰的组。

常用推广是在基准项前乘 γ>0,于是合并公式中的第二项也乘 γ。改变 γ 是改变比较尺度;全体一组的分数相应为 1−γ,不能继续无条件用零作参照。

基准项 kikj/(2m) 不必小于一,不能逐项解释为简单边存在的概率。它也不是有限配置模型中任意两点连边数的精确期望:后者对不同点的精确分母是 2m−1。这里采用的是模块度定义中的标准基准。无边图分母为零,须另作约定;有向图和加权图也需要相应度、强度和总量定义。报告结果应保留使用的划分、权重和分辨率,避免只报一个最高数值。

参考资料

  1. ↑ NetworkX 官方文档:modularity,邻接矩阵公式、分组公式与分辨率参数。访问日期:2026-10-25。