谱聚类
Spectral Clustering
谱聚类是一种基于图论和线性代数的聚类方法,利用数据点之间的相似性来进行聚类。对比 k-means 算法,谱聚类对数据分布的适应性更强,能够有效地处理非凸形状的数据集,同时聚类的计算量也小很多。
定义
对于图
在谱聚类中,相似度矩阵的构建方法直接影响最终聚类效果,常见的三种策略如下:
- 全连接法
- ε-近邻法
- k-近邻法
一般采用全连接法,即所有点对计算相似度,这个时候图
对于图中的每一个点
可以得到一个
假设聚类的目标为
我们的目标就是求解:
但这种容易出现问题:选择一个权重最小的边缘点进行分割就可以最小化目标,但我们希望的是
两个常用的解决方法为:
- RatioCut
- NCut
RatioCut 直接用子集元素个数来衡量集合大小,而 NCut 则用了子集内所有元素的度来衡量大小。
拉普拉斯矩阵
拉普拉斯矩阵 (Laplacian Matrix) ,也称为基尔霍夫矩阵,是图的一种矩阵表示形式,对于图
其标准化形式为:
对于任意的向量
RatioCut 求解
引入
所有
有:
对于
例子
顶点集
边权重
计算:
有:
矩阵的迹
矩阵的迹表示的是特征值的和
则我们的优化目标为:
这是一个NP-hard
问题
argmin
argmin 函数用于找到使某个函数取得最小值的自变量(参数)
如对于函数
参考论文A short theory of the Rayleigh-Ritz method
引入瑞利商极小化
我们的目标等价于找到
选择
其中
最后,对 k-means
聚类,得到最终划分。
NCut 求解
类似的,有:
有:
对于
优化目标为:
令:
则原问题转换为:
求出 k-means
聚类即可。