动态网络社区检测概述

从知乎看到的一篇好文章,整理了一下。

1 什么是动态网络?
在静态网络的基础上添加了时间信息。
动态网络是指加上时间戳的网络,包含时序网络和切片网络两种类型。其中时序网络是指网络从初始状态不断演化的情况。切片网络要简单一些,就是由一组切片构成的动态网络。

2 动态网络分类?
一种是Temporal Network(时态网络),该网络为每个节点和边添加了生卒年月,使得它们只能在一段时间内存在;
什么是时态网络?指网络从初始状态不断演化的情况。
第二种是Snapshots Network(快照/切片网络),该网络由一系列在某个时刻或一小段时间内的网络快照组成,通过下标来确定快照的时间顺序。就是由一组切片构成的动态网络。 动态网络社区检测概述_第1张图片

3 动态网络如何进行社区发现?
动态社区发现,Dynamic community
动态社区发现是动态网络的基础上构建的。通过相关算法得到的动态社区DC由n个节点组成,同时每个节点还有自己的生存时间范围 Pi. 在这里插入图片描述
动态社区发现不仅要找到动态网络中的社区结构,还需要指出这些动态社区的生命周期。

3.1 动态社区的生命周期
动态社区的几种变化形态:
出生与死亡,也就是从0到1,与从1到0的过程。 动态网络社区检测概述_第2张图片
增长与收缩,也就是社区中节点随着时间的变化,节点数量增多与减少的过程。
动态网络社区检测概述_第3张图片
合并与分裂,随着时间的变化,几个小社区可能会合并为一个大社区,一个大社区可能会分裂为几个小社区的过程。
动态网络社区检测概述_第4张图片
continue,社区随着时间推移没有变化。
动态网络社区检测概述_第5张图片
复苏,社区消失一段时间后,又以相同的形式出现,如一年四季。
动态网络社区检测概述_第6张图片

4 现存的动态网络社区发现算法有哪几类?
1. 即时最佳社区发现(Instant Optimal CD),该方法认为某个时刻t的社区只和当前网络结构有关。
2. 时间权衡社区发现(Temporal Trade-off CD),该方法认为某个时刻t的社区不仅和当前网络相关,还和过去的网络结构有关。
3. 跨时间社区发现(Cross-Time CD),该方法不考虑时刻,直接对整个动态网络进行社区发现。

4.1 即时最佳社区发现(Instant Optimal CD)
算法分2步:
1. discovery:识别出每个时间区间的社区。
2. matching:将不同时间区间的社区联系在一起,最后形成一系列的动态社区结构。
动态网络社区检测概述_第7张图片

优点:可以并行化,将不同时间片上的社区发现任务并行执行,在Math阶段合并。
缺点:不能低于相邻2个时间片上网络结构的巨变,比如2个相邻时间分片上找打的社区差别非常大,那么match阶段想要匹配就非常难。
利用时间片计算限制了这种算法只能在快照网络上运行。

4.2 时间权衡社区发现(Temporal Trade-off CD)
算法分2步:
1. Initialisation:在最早时间片的网络结构中做一次社区发现
2. Update:动态社区的每一次更新都将上一次的社团结构和当前网络中的社团结构作为本次更新的输入,最终形成一系列的动态社团结构。
动态网络社区检测概述_第8张图片

优点:
和前一种方法相比,引入了时间平滑的机制,使得系统能够更有效对抗网络巨变的影响。
缺点:
每次计算都要依赖上一次的结果,因此这个算法只能串行
连锁输入也有可能造成级联故障进而产生雪崩效应。

4.3 跨时间社区发现(Cross-Time CD)
算法分2步:
1. Merge:把动态网络压缩成一个网络,并且建立压缩网络和动态网络的节点对应关系
2. Extract:在这个网络上做静态社区发现,最后通过对应关系构建一系列的动态社团结构
动态网络社区检测概述_第9张图片

优点:
能够有效对抗网络巨变
没有串行算法带来的雪崩效应风险
缺点:
很难描述社团的演化过程(缺失社区的出生和死亡机制,且社团数量是固定的)。

5 动态社区可视化
分为2种,一种是带有时间轴的静态可视化,一种是随着时间变化的动态可视化。
可以想象成这是一个动漫,静态可视化就是动漫制作过程中的每一帧,由每一帧排布在一起构成的序列,动态可视化就是做好的在播放的视频。
动态网络社区检测概述_第10张图片

6 动态社区发现评估方法
6.1 数据集

需要有数据集,可以是真实数据集,可以是模拟的数据集,作者提出一种合成网络生成器来构建虚拟网络,要求这个虚拟网络需要有真实网络的特征,如小世界特性等。

6.2 对比算法
静态基准:GN,LFR算法
动态基准:SBMs等算法

6.3 评价指标
(1)标准化互信息(NMI):该指标适合用在有标签的网络上,通过计算预测社团和真实社团之间的信息熵来评价社团发现的效果。
动态网络社区检测概述_第11张图片

(2)模块度(Q):该指标适合用在没有标签的网络上,通过计算模块度Q来评估社团发现的效果,通常认为Q越大社区发现效果越好。
动态网络社区检测概述_第12张图片

参考文档:Community Discovery in Dynamic Networks: A Survey

你可能感兴趣的:(社区发现,算法)