谱聚类算法(Spectral Clustering)的简单介绍

  谱聚类(spectral clustering)是广泛使用的聚类算法,数据分布的适应性很强,(对于非簇状分布的数据也能起到很好的效果)聚类效果也很优秀,同时聚类的计算量也小很多,被大家广泛使用。

1、谱聚类概述

  谱聚类的基本思想很简单,利用从数据中得到的特征矩阵实现聚类,依靠两个部分完成聚类工作,第一个部分为图的构造,第二个部分对构造好的图,诱导出拉普拉斯矩阵并做特征分解,求特征向量,将数据嵌入到特征向量空间,进而实现聚类。

  在介绍谱聚类之前先简单的回顾下图论和拉普拉斯矩阵的有关知识。

2、图论和拉普拉斯矩阵回顾

  在这里仅简单的介绍下无向图中关于度矩阵、邻接矩阵和拉普拉斯矩阵。

概念介绍

1、无向图 边上的权重和两点的方向无关: W i j = W j i W_{ij} =W_{ji} Wij=Wji
2、度矩阵: d i = ∑ j = 1 n w i j d_i=\sum\limits_{j=1} ^n w_{ij} di=j=1nwij

假定这里有一张无向图。
无向图
它的邻接矩阵W为:

在这里插入图片描述
度矩阵D为:
在这里插入图片描述
3、对应图的拉普拉斯矩阵:
L = D − W L=D-W L=DW
在这里插入图片描述
  拉普拉斯矩阵是图论中用到的一种重要矩阵,给定一个有n个顶点的图 G=(V,E),其拉普拉斯矩阵被定义为 L = D-A,D其中为图的度矩阵,A为图的邻接矩阵。

  拉普拉斯具有很好的性质

  • 1)拉普拉斯矩阵是对称矩阵,这可以由D和W都是对称矩阵而得。
  • 2)由于拉普拉斯矩阵是对称矩阵,则它的所有的特征值都是实数。
  • 3)对于任意的向量f,我们有
    在这里插入图片描述
  1. 拉普拉斯矩阵是半正定的,且对应的n个实数特征值都大于等于0

邻接矩阵的构建

  通常通过对样本点距离度量的相似矩阵S来获得邻接矩阵W。
  所谓的相似矩阵其实就是两样本间的距离,即
s i j = ∥ x i − x j ∥ 2 s_{ij}=\| x_i -x_j \|^2 sij=xixj2
  构建邻接矩阵W的方法有三个:ϵ-邻近法K邻近法全连接法。其中前两个属于局部连接,并且聂飞平大佬还提出自适应近邻构造法(CAN)

  其中全连接法来建立邻接矩阵是最普遍的,而在全连接法中使用高斯核RBF最多:
在这里插入图片描述

归一化拉普拉斯矩阵构建

L ~ = D − 1 2 L D − 1 2 = I − D − 1 2 W D − 1 2 \tilde{L}= D^{-\frac{1}{2}}LD^{-\frac{1}{2}}=I-D^{-\frac{1}{2}}WD^{-\frac{1}{2}} L~=D21LD21=ID21WD21

通过Ncut切图的方法,可以得到如下的式子。
在这里插入图片描述
  然后就可以求出 L ~ \tilde{L} L~ 的最小的前k个特征值,求出特征向量,并标准化,得到特征矩阵F, 再对F进行一次传统的聚类(K-Means)算法,最终就完成了聚类任务。


切图的方式有Ncut和RatioCut,在这里Ncut的方法的效果比较好,用的居多。致于它的证明方法可以看这位博主写的谱聚类详细介绍


下面以总结谱聚类算法流程。

输入:样本集 D = ( x 1 , x 2 . . . . x n ) D=(x_1,x_2....x_n) D=(x1,x2....xn).
输出: 簇划分 C = ( c 1 , c 2 . . . . . c n ) C=(c_1,c_2.....c_n) C=(c1,c2.....cn).

  1. 根据输入的相似矩阵的生成方式构建样本的相似矩阵S。
  2. 根据相似矩阵S构建邻接矩阵W,构建度矩阵D。
  3. 计算出拉普拉斯矩阵L。
  4. 构建标准化后的拉普拉斯矩阵 L ~ = D − 1 2 L D − 1 2 \tilde{L}= D^{-\frac{1}{2}}LD^{-\frac{1}{2}} L~=D21LD21
  5. 计算 L ~ \tilde{L} L~最小的k个特征值所各自对应的特征向量f。
  6. 将各自对应的特征向量f组成的矩阵按行标准化,最终组成n×k维的特征矩阵F。
  7. 对矩阵F进行K-Means聚类。
  8. 得到簇划分 C = ( c 1 , c 2 . . . . . c n ) C=(c_1,c_2.....c_n) C=(c1,c2.....cn).

由于时间不充分,文章有些部分写的比较糟糕,大家有什么问题可以在底下留言,一起讨论。

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值