谱聚类算法由于其算法流程简单、计算简洁与 Kmeans 算法相比不容易陷入局部最优解,能够对高维度、非常规分布的数据进行聚类。谱聚类算法是利用图谱理论来进行算法分析,思想是把数据分析问题看成是图的最优分割问题,将数据样本看成是各个数据点,然后将数据点描绘成一个图表,根据图表关系计算出相应的相似矩阵,找到一种最优分割方法计算出相似矩阵的最小特征向量,最后利用相应算法得出最后的聚类结果。
谱聚类算法是将样本点看成为一个个顶点,将顶点之间用带权的边连接起来,带权的边可以看成是顶点之间的相似度。聚类从而可以看成如何分割这些带权的边,继而将聚类问题转化为怎么进行图分割的问题,但是如果这样的话新的问题又产生了,那就是怎样找到一种最优方法来划分这个图,才能使同组之间的样本权重尽可能高,不同组的权重尽可能的低。权重太低的边是多余的就要舍去,常用保留边的方法是要建立最邻近图谱,在最邻近图谱中每个顶点只与K 个相似度最高的点连接,其余的边是要舍弃的边。
建立最邻近图谱的方法就是把聚类问题转化为图分割的问题,转化之后就存在两个问题:(1)数据点与数据点之间的相似度的定义;(2)建立最邻近图谱之后要从哪条边或者从哪些边分割最优。
数据点之间的相似程度由边的权重表示,常用方法的有余弦相似度、高斯函数。
余弦相似度
高斯函数