谱聚类|机器学习推导系列(二十)

简介: 谱聚类|机器学习推导系列(二十)

一、概述


对于下图所示的数据进行聚类,可以采用GMM或者K-Means的方法:


FV@CADUC1X`%S}$YYY(QQKO.png

                                     数据


然而对于下图所示的数据,单纯的GMM和K-Means就无效了,可以通过核方法对数据进行转换,然后再进行聚类:


(D5Y~T~}MGK(~7@1(Y22`IS.png

                                          数据    


如果直接对上图所示的数据进行聚类的话可以考虑采用谱聚类(spectral clustering)的方法。


总结来说,聚类算法可以分为两种思路:


①Compactness,这类有 K-means,GMM 等,但是这类算法只能处理凸集,为了处理非凸的样本集,必须引⼊核技巧。

②Connectivity,这类以谱聚类为代表。


二、基础知识


  1. 无向权重图


谱聚类的方法基于带权重的无向图,图的每个节点是一个样本点,图的边有权重,权重代表两个样本点的相似度。

$K_4D)_VEP~O}3@D5UYADJH.png

CLLFR6N{PE47H~L0FKY)53E.png


  1. 邻接矩阵

Y$KF@O6LBYAW1PA@PZ_ZKHW.png

E{NE$IL%)1UPZT%%4%9%XYA.png

上述方法是不用先建立图而直接获得邻接矩阵,在编程实现时能够更加简便,构建的邻接矩阵也就表明了哪些样本点之间有边连接。也可以采用先建立图然后再在图上有边的数据点上保留权重获得邻接矩阵的方法。


  • 全连接法

HAP`$N_$3XUF`1LU~5[`AW6.png

在实际应用时选择全连接法建立邻接矩阵是最普遍的,在选择相似度度量时径向基核函数是最普遍的。


  1. 拉普拉斯矩阵


Z0Q@E]W49YGXXJRAO[CRY5J.png

①对称性。


②由于其对称性,则它的所有特征值都是实数。

③对于任意向量EP`KH_C3%]O5BTF3$37`4KG.png,有:


YD{JCD$%VP2KLKIP4H9)~CR.png


这一性质利用拉普拉斯矩阵的性质很容易可以得到:


V~%OAF6TOO_XJKZA8K1GL]X.png

RQFQ$V[AO7F)WQX]%FG]VCF.png


每个子图就相当于聚类的一个类,找到子图内点的权重之和最高,子图间的点的权重之和最低的切图就相当于找到了最佳的聚类。实现这一点的一个很自然的想法是最小化ATB[_7N3@W_10L58SJU1V3M.png。然而这种方法存在问题,也就是最小化的ATB[_7N3@W_10L58SJU1V3M.png对应的切图不一定就是符合要求的最优的切图,如下图:


Z`]KLVM3F_W]J8T4A13({14.png

                                  举例


]3VCB[9R5X$64G65OY8582L.png

接下介绍谱聚类使用的切图方法。


三、谱聚类之切图聚类


ML%RM6UKA}1WXDMXK3AUV65.png

VE}ZCK$O}_REPQ{[NMKYGWX.png

CM6H%4~V_MP7TL%Y@%QGDHM.png

GT}4HDA(V9~AMBPYWP4{682.png

%SXIFY`YTGYTY8%{NJ95)%X.png

$@}VM}O`VL]KSQR}(LKHR0A.png

9PIN6LKLBAV{~)I8EABK3]8.png

S$KBCJ`GPX4Y)X@G%P3%CEQ.png


四、总结


  1. 算法流程

9N{Q$PGXC(LM}[A56HPI3_J.png

  1. 优缺点


谱聚类的优点有:


①谱聚类只需要数据之间的相似度矩阵,因此对于处理稀疏数据的聚类很有效。这点传统聚类算法比如K-Means很难做到。


②由于使用了降维,因此在处理高维数据聚类时的复杂度比传统聚类算法好。


谱聚类的缺点有:


①如果最终聚类的维度非常高,则由于降维的幅度不够,谱聚类的运行速度和最后的聚类效果均不好。


②聚类效果依赖于相似矩阵,不同的相似矩阵得到的最终聚类效果可能很不同。


参考资料


ref:谱聚类(spectral clustering)原理总结

相关文章
|
机器学习/深度学习
受限玻尔兹曼机|机器学习推导系列(二十五)
受限玻尔兹曼机|机器学习推导系列(二十五)
775 0
受限玻尔兹曼机|机器学习推导系列(二十五)
|
机器学习/深度学习 算法 数据挖掘
100天搞定机器学习|day44 k均值聚类数学推导与python实现
100天搞定机器学习|day44 k均值聚类数学推导与python实现
100天搞定机器学习|day44 k均值聚类数学推导与python实现
|
机器学习/深度学习 人工智能 移动开发
【机器学习】线性分类——高斯判别分析GDA(理论+图解+公式推导)
【机器学习】线性分类——高斯判别分析GDA(理论+图解+公式推导)
368 0
【机器学习】线性分类——高斯判别分析GDA(理论+图解+公式推导)
|
机器学习/深度学习 人工智能 算法
【机器学习】线性分类——线性判别分析LDA(理论+图解+公式推导)
【机器学习】线性分类——线性判别分析LDA(理论+图解+公式推导)
348 0
【机器学习】线性分类——线性判别分析LDA(理论+图解+公式推导)
|
机器学习/深度学习 算法
100天搞定机器学习|day38 反向传播算法推导
100天搞定机器学习|day38 反向传播算法推导
100天搞定机器学习|day38 反向传播算法推导
|
机器学习/深度学习
MCMC-1|机器学习推导系列(十五)
MCMC-1|机器学习推导系列(十五)
362 0
MCMC-1|机器学习推导系列(十五)
|
机器学习/深度学习 算法
变分推断|机器学习推导系列(十四)
变分推断|机器学习推导系列(十四)
213 0
变分推断|机器学习推导系列(十四)
|
机器学习/深度学习 算法
Sigmoid信念网络|机器学习推导系列(二十八)
Sigmoid信念网络|机器学习推导系列(二十八)
276 0
Sigmoid信念网络|机器学习推导系列(二十八)
|
机器学习/深度学习 算法
近似推断|机器学习推导系列(二十七)
近似推断|机器学习推导系列(二十七)
152 0
近似推断|机器学习推导系列(二十七)
|
机器学习/深度学习 算法
配分函数|机器学习推导系列(二十六)
配分函数|机器学习推导系列(二十六)
288 0
配分函数|机器学习推导系列(二十六)
下一篇
无影云桌面