网络社区划分与链接预测方法解析
1. 社区划分近似算法
在进行网络社区划分时,为了得到具有最大模块化的划分,通常会使用近似算法。以下是几种常见的近似算法:
1.1 迭代贪心方法
- 基本步骤 :
- 初始时,若有 (n) 个顶点,则有 (n) 个簇,每个簇包含一个顶点。
- 选择一条边连接,使簇的数量从 (n) 变为 (n - 1),形成新的图划分,所选边应使模块化增加最大。
- 每次迭代都添加一条边,使模块化增加最大。若添加的是簇的内部边,模块化不变。
- 复杂度分析 :
- 计算每条边的 (\Delta Q) 需要常数时间,计算复杂度为 (O(m)),其中 (m) 是边的数量。
- 合并选定的社区后,更新表示两个簇之间边的比例的矩阵需要 (O(n)) 时间。
- 算法运行 (n - 1) 次迭代,对于稀疏图,复杂度为 (O(n^2))。
- 若将 (\Delta Q) 值存储在最大堆中,并使用包含每行元素之和的数组代替表示簇之间边比例的矩阵,算法复杂度为 (O(md \log n)),其中 (d) 是树状图的深度。对于具有强层次结构的图,复杂度为 (O(n \log^2 n))。
- 改进方法 :
- 对模块化增加 (\Delta Q) 进行归一化,除以与
超级会员免费看
订阅专栏 解锁全文
2736

被折叠的 条评论
为什么被折叠?



