高效提取网络社区核心的算法研究
在当今互联网的海量信息中,网络社区的发现和提取对于人们获取有价值的信息至关重要。本文将介绍两种用于提取网络社区核心的算法:C&C 算法和基于词汇相似度改进的最大流算法,并对它们的原理、优势以及实验结果进行详细阐述。
Trawling 算法的局限性
Trawling 算法的目标是尽可能多地找到不重叠的核心,且这些核心大多对应真实的社区,而非偶然出现的完全二分子图。然而,Trawling 算法存在一些明显的缺点。
首先,其结果依赖于参数 i 和 j 的取值。例如,在特定图中,当 i > 3 或 j > 4 时,就无法识别出完全二分子图。而网络的未知性和庞大性使得 i 和 j 的初始化成为一个巨大的挑战。
其次,Trawling 的一些移除策略会破坏其他完全二分子图的结构,导致某些核心丢失。如在图中,节点 3 同时属于 C3,3 和 C3,4,移除与 C3,3 相关的节点会破坏 C3,4 的结构。此外,一个社区可能有多个核心,要求这些二分核心不重叠是不合理的。
C&C 算法:解决 Trawling 缺点的有效方案
为了克服 Trawling 算法的缺点,提出了 C&C 算法。该算法大致可分为两个阶段:单位核心提取和核心合并。
- 单位核心提取
- 新的核心判断标准 :Kumar 等人提出的寻找核心的标准仅适用于出度恰好等于 j 的顶点。为此,提出了新的标准(Criterion 2)来判断一个潜在的扇区是否能成为社区的一部分。