Spectral clustering谱聚类

Basic knowledge: 

degree matrix; similarity matrix, and Adjacency matrix;

无向带权图模型 G=<V,E>G=<V,E>,每一条边上的权重wij为两个顶点的相似度,从而可以定义相似度矩阵W,此外还可以定义度矩阵D和邻接矩阵A,从而有拉普拉斯矩阵 L=DA;

距离度量与邻接矩阵
  邻接矩阵某种程度上反映了图中各结点之间的相似性,普通的邻接矩阵元素非0即1,谱聚类中的邻接矩阵用KNN来计算。具体来说,遍历每一个结点xi,根据相似度(或距离)矩阵找出它的kk个最接近的点,构成xixi的邻域NiNi,然后按以下规则之一构造邻接矩阵。


Methodology: 

1. similarity matrix S; 通过样本点距离度量的相似矩阵S来获得邻接矩阵W. 

构建邻接矩阵WW的方法有三类。ϵϵ-邻近法,K邻近法和全连接法。

2. Laplacians matrix,

拉普拉斯矩阵L=DW

 输入:样本集D=(x1,x2,...,xn)(x1,x2,...,xn),相似矩阵的生成方式, 降维后的维度k1k1, 聚类方法,聚类后的维度k2k2

    输出: 簇划分C(c1,c2,...ck2)C(c1,c2,...ck2). 

扫描二维码关注公众号,回复: 8246538 查看本文章

    1) 根据输入的相似矩阵的生成方式构建样本的相似矩阵S

    2)根据相似矩阵S构建邻接矩阵W,构建度矩阵D

    3)计算出拉普拉斯矩阵L

    4)构建标准化后的拉普拉斯矩阵D1/2LD1/2D−1/2LD−1/2

    5)计算D1/2LD1/2D−1/2LD−1/2最小的k1k1个特征值所各自对应的特征向量ff

    6) 将各自对应的特征向量ff组成的矩阵按行标准化,最终组成n×k1n×k1维的特征矩阵F

    7)对F中的每一行作为一个k1k1维的样本,共n个样本,用输入的聚类方法进行聚类,聚类维数为k2k2。

    8)得到簇划分C(c1,c2,...ck2)C(c1,c2,...ck2).    

谱聚类算法的主要优点有:

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

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

    谱聚类算法的主要缺点有:

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

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

猜你喜欢

转载自www.cnblogs.com/dulun/p/12070171.html
今日推荐