谱聚类Spectral Clustering

本文介绍了谱聚类的基本原理,包括相似度图的构建方法、拉普拉斯矩阵的性质及谱聚类算法流程,并探讨了从图分割角度理解谱聚类。

1.介绍

与传统的算法相比,谱聚类有许多优点;结果通常比传统的方法要好而且应用简单,可以通过标准线性代数方法解决。

2.Similarity Graphs相似度图

G=(V,E)
图中的每个节点vi代表一个数据点,如果数据点xixj的相似度sij是正的并且比一个确定的threshold值大的话,两个顶点就是连接的,si,j代表边的权重。聚类可以看做是:我们想要找到图的分割使不同簇之间的边有着低权重,而在簇中的边有着高权重(也就是在不同簇中的点彼此不相似,而相同簇中的点是相似的)

2.1Graph notation

假设G是个无向图,图的带权邻接矩阵是W=wi,ji,j=1,...,n,wi,j>0;W是一个对称矩阵
顶点vi的度:

di=j=1nwi,j

度矩阵D是一个对角矩阵,对角线上的元素是d1,d2,...,dn
顶点的子集:AV,则A¯=V\A
I=(f1,...,fn)Rn fi=1如果viA
对于两个不相连的子集A,BV:
W(A,B)=iA,jBwij

|A|=A
vol(A)=iAdi
子集A的含义是A中任意两个顶点都可以通过一条路径连接起来;如果A与A¯是完全不相同的则A被称作A connected compoent
2.2不同的Similarity Graphs

构造相似图的目标是建模数据点的局部近邻关系。
The ϵ-neighbor graph:
将paiwise distances小于 ϵ的点连接起来,所以所有点之间的距离都差不都是一样的距离(最多 ϵ)。所以边的权重不会整合关于数据点的更多的信息。期通常被看做是无向图。
k-nearest neighbor graphs
The fully connected graph:将所有的点都用正similarity连接起来,每个边的权重是si,j.这个构造只有当similarity function模拟局部近邻关系的时候才是有用的。例如Gaussian similarity function s(xi,sj)=exp(||xixj||2/(2σ2)),其中参数σ控制近邻的宽度,这个参数与ϵ-neighbor graph中的ϵ作用类似。
Similarity graph的选择不影响谱聚类的结果。

3 Laplacians拉普拉斯图的属性

当使用矩阵的特征向量时,我们不必要假设它们是normalized的,因为一个常数向量I和aI可以被看做是同一个特征向量。“前k个特征向量”指的是最小的k个特征值对应的特征向量。

3.1 The unnormalized graph Laplacian

L=DW

Proposition 1:L满足下列特性:
1.对于每个向量fRn,
fLf=1/2i,j=1nwij(fifj)2

2.L是一个对称并正的半正定矩阵
3.L的最小特征值是0,对应的特征向量是I,对应元素都是1
4.L有n个非负实数值的特征向量0=λ1λ2...λn
Proof:
L的对称性是由于W和D的对称性,其是半正定矩阵的原因是fLf=1/20,fRn
注意unnormalized拉普拉斯图不依赖于邻接矩阵的对角元素。在所有非对角位置上与W一致的邻接矩阵产生相同的unnormalized graph L。也就是说,图中的self-edges不改变对应的L。
Propositon 2:L的multiplicity k的特征值0等同于图中的connnected components A1,...,Ak的数量,特征向量0的特征空间是这些components的indicator vectors IA1,...,IAk.

4.谱聚类

Unnormalized spectral clustering
输入:Similarity矩阵S(n*n),簇数目K

  • 通过第二部分介绍的方法构造一个相似图。W是带权邻接矩阵
  • 计算unnormalized Laplacian L
  • 计算L的前k个特征向量u1,...,uk
  • 矩阵U(n*k),特征向量作为列
  • 向量yiRki=1,...,n是U的第i行
  • 将点yi使用K-means方法聚类为C1,...,Ck
  • 输出A1,...,AkAi={j|yjCi}

5.图分割视角

在这个部分,将谱聚类近似为图分割问题。给定一个有着邻接矩阵W的similarity graph,最简单直接构造图分割的方法就是解决mincut问题,就是选择A1,...,Ak通过最小化:

cut(A1,...,Ak)=12i=1kW(Ai,Ai¯)

特别的,当k=2时,这是一个十分简单并且可以被有效解决的问题。然而在实际中不会产生令人满意的分割。原因是在许多问题中,mincut的解将单独一个点分割出来,当然这不是我们想要的聚类结果,一个解决这个问题的方法是直接要求子集A1,...,Ak是有着合理的大小的。两个最常用的目标函数是RatioCut和normalized cut Ncut。在RatioCut中,子集A的大小通过A中的顶点数度量:
RatioCut(A1,...,Ak)=12i=1kcut(Ai,Ai¯)|Ai|

Ncut(A1,...,Ak)=12i=1kcut(Ai,Ai¯)vol(Ai)

Ai的值不是很小时时候目标函数得到一个小的值,ki=1(1/|Ai|)取得最小值当所有的Ai一致时,Ncut也是同理。所以这两个目标函数的目标就是使得所有的聚类是平衡的(分别通过顶点数或边的权重来度量)。但是,加入了平衡条件使得之前的解决mincut问题变成了NP难问题。
谱聚类是解决这个问题的轻松的一种方式,我们将看到解决Ncut是归一化的谱聚类问题,RatioCut是非归一化的谱聚类问题。

对relaxtion approach方法的批评

Spectral relaxation如此受关注的原因不是因为它会产生特别好的解,而是由于他是一个容易解的标准的线性代数问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值