重叠社区发现方法综述
1. 群体智能重叠社区检测算法
有一种群体智能方法用于重叠社区检测。该方法将网络视为一组对应节点的代理,每个代理与它的社交群体交互,且知道其朋友集合以及朋友之间的关系。朋友在不同社交或友谊群体中会达成一个共同的社区 ID。算法步骤如下:
1. 分配标识符与构建自我网络 :为每个代理分配一个标识符 ID,确定其邻域的完整地图并构建自我网络。从自我网络出发,通过并查集算法提取友谊群体,每个友谊群体由一个唯一 ID 标识,该 ID 由基础代理 ID 和一个唯一递增的十进制值组成。
2. 识别非传播节点 :在每个友谊群体内,代理询问邻居对该友谊群体的看法,以识别非传播节点(即看法与代理不同,其信息不再进一步传播的节点)。
3. 传播友谊群体 ID :传播分配的友谊群体 ID。若某个友谊群体的 ID 值被修改,新 ID 值将传播到该群体内的节点。重复此过程,直到传播收敛。最终,每个代理将有一个分配的社区列表,通过共享相同 ID 值的代理组可轻松检测出社区。
2. 动态网络中的重叠社区检测
以往方法未考虑网络随时间的演化。动态网络能捕捉连接随时间的变化,便于追踪不同时间步的网络结构变化。目前,动态社交网络中重叠社区检测的方法较少,以下是一些较新的方法:
2.1 Clique Percolation Method (CPM)
Palla 等人提出可在每个时间步使用 CPM 提取社区。社区的生命周期特征包括增长、收缩、出现、消失、合并和分裂。为识别社区随时间的演化,他们建议合并两个连续