三个基本步骤
1、Pre-processing:用矩阵表示图;
2、Decomposition:计算矩阵的特征值-特征向量;基于一个或多个特征向量,将每个点映射为低维表示;
3、Grouping:基于新的表示,将点分配到两个或多个clusters。
Graph partition
一个好的划分:
- 极大化组内连接的数量;
- 极小化组间连接的数量。
Graph Cuts
Cut:每组有一个端点的边的集合。
若图是被加权的,则是权值;否则
。
Graph Cut Crterion
criterion 标准,准则:Minimum-cut 极小化组间连接的权重
degenerate(质量)下降;退化,衰退 case:
问题:(1)仅考虑外部簇的连接;(2)没有考虑内在簇的连接性。
Criterion:Conductance 电导(率);(热)传导性 【Shi-Malik,97】
组间连接性与每个组间的密度有关: 节点在A中总加权度,
A中边缘端点的个数
conductance准则能划分更加平衡些。计算最好的conductance cut是NP-hard问题。
Spectral Graph Partitioning
是无向图
的邻接矩阵,
是一个向量,想象
是
的每个节点上的标签/值。
,即
是
的邻居标签
的总和
Spectral Graph Theory
spectrum 光谱;波谱;声谱;频谱;序列
spectrum:一个图的特征向量按照对应的特征值大小排序
Example:d-Regular Graph
- 设
中所有节点的度均为
(
是d-regular)且
是连接的。
是
最大的特征值
- 设
不是连接的,
有2部分,每个都是d-regular。
Adjacency Matrix A
Degree Matrix D
Laplacian Matrix L
trivial 不重要的;琐碎的;微不足道的
Laplacian L 的三个性质:
- (a) 所有的特征值都大于等于零;
- (b) 对每个
,有
;
- (c)
可以写成
,即
是半正定的。
证明:
- (c) -> (b)
- (b) -> (a) 设
为
的特征值,又 (b)
,所以
- (a) -> (c)
由于,当
时,
,则
为拉普拉斯矩阵的一个特征值。又由于拉普拉斯矩阵的特征值非负,所以0为最小的特征值,对应的特征向量为
由于节点的度为
,所以值
需要被加和
次。但每个边
有两个端点,所以需要
,即
。
第二小特征值的意义
结论:任意对称矩阵M,有,其中
是矩阵M第一小特征值
对应的特征向量,
是矩阵M的第二小特征值。
证明:设为矩阵M的特征值-特征向量,即
。
设,则
,即
,则有
。
当时,
,则
。
特征值&谱聚类
两个结论:
为了满足上述两式,需要两个限制条件:
是一个单位向量,
,由于在拉普拉斯矩阵中,最小特征值为0,对应的特征向量为
,则
由于,则
必然有正有负,如下图所示,在坐标轴两侧有些点。在谱聚类中,希望最大化组内连接数,最小化组间连接数,即希望有尽可能少的点跨越0点,从数学表达式中看,希望
。联合上式,有
。
为什么不是利用呢?因为
恒为0,此时图一定是不连通的,最小化没有意义,所以要给一个限制条件后利用第二小的特征值。
终上所述,就可以利用拉普拉斯矩阵的第二小特征值对应的特征向量来进行划分。
提到的其他问题:
可证明,若将图G划分为A和B两个部分,且,则对于评价指标conductance
,有
,即找到的这种划分标准是conductance的下界。
证明:设,
则有
,其中
表示节点度的最大值。
上述方法是划分两类,如何划分为类呢?
- Recursive bi-partitioning递归利用二分算法,将图划分为多类;
- 聚类多个特征向量,选择
个特征向量,对这
个特征向量利用聚类方法(如k-means)将其聚为
类。
为什么使用多个特征向量?
- 近似于最优切割
- 强调凝聚力集群:(1)增加了数据分布的不均匀性;(2)相似点之间的联系被放大,不同点之间的关联减弱;(3)数据开始“近似聚类”
- Well-separated space:将数据转换为一个由k个正交基向量组成的新的“嵌入式空间”
- 多重特征向量可以防止由于信息丢失而导致的不稳定性
如何选择k?
Eigengap:两个连续特征值之间的差。最稳定的聚类通常由最大eigengap的值给出,
(特征值降序排列)
如:
补充:
- 若
是一个
矩阵,则
的转置记为
,
;矩阵
的复数共轭
仍然是一个
矩阵,其元素定义为
;矩阵
的(复)共轭转置记为
,它是一个
矩阵,共轭转置又叫Hermitian伴随、Hermitian转置或Hermitian共轭。
- 对称矩阵:满足
的正方实矩阵。
- Hermitian矩阵(复共轭对称矩阵):满足
的正方复矩阵。
- 对一个实值矩阵,Hermitian矩阵与对称矩阵等价。
- 实对称矩阵、Hermitian矩阵的所有特征值都是实数。
- 若一个
的矩阵
是奇异的,则它至少有一个特征值为0;若矩阵是非奇异的,则它所有的特征值非零。
- Hermitian矩阵
的Rayleigh商或Rayleigh-Ritz比
是一个标量,定义为
,其中
是待选择的向量,其目的是使Rayleigh商最大化或最小化。
Rayleigh-Ritz定理:Hermitian矩阵
的特征值为
,若
,则
;若
,则
。
寻找最优切分点
Rayleigh Theorem
:
的最小值是拉普拉斯矩阵
的第二小特征值
:
的最优解由
对应的特征向量
给出,称为Fiedler向量
- 可以使用
的符号来决定将节点
分到哪一类别中
Spectral Clusstering Algorithm
三个基本步骤:
- 预处理:利用图的邻接矩阵
,度矩阵
,计算拉普拉斯矩阵
;
- 分解decomposition:计算拉普拉斯矩阵
的特征值-特征向量,其中第二小特征值
对应的特征向量为
;
- 分类grouping:对上述的特征向量
进行分组,如可以利用正负或中位数进行划分。如下图所示,节点123特征向量为正,划分为一组;节点456特征向量为负,划分为一组。
基于motif的谱聚类
Small subgraphs (motifs, graphlets) are building blocks of networks. 将图拆解为一个个子图来重新看待网络,motif给了网络一个新的定义方式,可考虑从motif(而不是边)的角度进行谱聚类。
motif conductance
类比edge cut和conductance,针对motif可以如下定义:
给定一个motif M和一个图G,找到使得motif conductance最小的节点集合S,这是一个NP-hard问题。
motif conductance:
解决方法:motif spectral clustering
- 输入:图G和motif M;
- 将G表示成一个新的带权重的图
;
- 在图
上进行谱聚类;
- 输出聚类结果。
优化motif conductance
- 预处理:
- 分解:基于
使用标准的谱聚类,计算拉普拉斯矩阵
的第二小特征值对应的特征向量(又称为Fiedler向量)
。具体地,计算
,根据
求出
。
- 分组(sweep procedure):将第二小特征值对应的特征向量
中的每个元素按照取值大小排序,得到:
。设
,计算每个
的motif conductance。如下图所示,当
时取得最小的motif conductance。
Motif Cheeger Inequality:,其中
表示我们的算法找到的节点集合S的motif conductance,
表示最优集合
的motif conductance。由此可知,我们算法找到的S是近似于最优解的。
例子
应用1 食物链
佛罗里达湾食物链:节点是在生态系统的物种,边是碳交换(谁吃谁)。
不同的motifs捕捉到不同的能量流动模式,从下图中可看出motif M6取到最小的conductance值,因此该食物链由motif M6构成。
M6以更高的精度揭示了已知的水生生物层(84% vs. 65%)。
应用2 基因调控网络
Nodes are groups of gene in mRNA. Edges are directed transcriptional regulation relationships.
“前馈环(feed forward loops) “的motif代表生物功能。
其他划分图的方法
- METIS
启发式的,但在实践中非常有效。http://glaros.dtc.umn.edu/gkhome/views/metis
- Graclus
基于核k均值。https://www.cs.utexas.edu/users/dml/Software/graclus.html
- Louvain
基于模块化优化。https://perso.uclouvain.be/vincent.blondel/research/louvain.html
- Clique percorlation method
参考链接
知乎笔记:https://zhuanlan.zhihu.com/p/139577332
PPT:http://web.stanford.edu/class/cs224w/slides/05-spectral.pdf