• 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). 

        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) 聚类效果依赖于相似矩阵,不同的相似矩阵得到的最终聚类效果可能很不同。

  • 相关阅读:
    如何获取SQL Server数据库连接字符串的某些部分
    .NET同步原语Barrier简介
    模版引擎RazorEngine简介
    如何使用SQL Server实现SignalR的横向扩展
    SignalR的客户端.NET Client介绍
    一个简单的SignalR例子
    看视频学SignalR—在微软虚拟学院学习SignalR
    看视频学Bootstrap—在微软虚拟学院学习Bootstrap
    C# 窗口与控件的相关操作
    opencv——常见的操作
  • 原文地址:https://www.cnblogs.com/dulun/p/12070171.html
Copyright © 2020-2023  润新知