谱聚类算法


谱聚类算法(Spectral Clustering)

谱聚类(Spectral Clustering, SC)是一种基于图论的聚类方法——将带权无向图划分为两个或两个以上的最优子图,使子图内部尽量相似,而子图间距离尽量距离较远,以达到常见的聚类的目的。其中的最优是指最优目标函数不同,可以是割边最小分割——如图1的Smallest cut(如后文的Min cut), 也可以是分割规模差不多且割边最小的分割——如图1的Best cut(如后文的Normalized cut)。
img
图1 谱聚类无向图划分——Smallest cut和Best cut

理论基础

对于如下空间向量item-user matrix:
img
如果要将item做聚类,常常想到k-means聚类方法,复杂度为o(tknm),t为迭代次数,k为类的个数、n为item个数、m为空间向量特征数:

1 如果M足够大呢?

2 K的选取?

3 类的假设是凸球形的?

4 如果item是不同的实体呢?

5 Kmeans无可避免的局部最优收敛?

 ……

1.1 图的表示

如果我们计算出item与item之间的相似度,便可以得到一个只有item的相似矩阵,进一步,将item看成了Graph(G)中Vertex(V),歌曲之间的相似度看成G中的Edge(E),这样便得到我们常见的图的概念。
对于图的表示(如图2),常用的有:
邻接矩阵:E,e_{ij}表示vi和vi的边的权值,E为对称矩阵,对角线上元素为0,如图2-2。

Laplacian矩阵:L = D – E, 其中di (行或列元素的和),如图2-3。


文章作者: 大杯柠檬加冰
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 大杯柠檬加冰 !
  目录