【论文精读】SVM for Clustering

A Support Vector Method for Clustering

原文地址:A Support Vector Method for Clustering

本文介绍了一种基于SVM的聚类方法,核心思想是用高斯核的SVM找到多个能够包围数据的半径最小的超球。使用此方法不用预先确定类别的结构和个数。

Abstract

聚类问题可以用参数化或非参数化的方法处理。参数化方法往往限制于其表达能力(expressive power),即需要预先猜想类别的结构(概率分布)。这篇文章提出一种非参数化的基于SV的方法用来描述高维分布的特性,首先找到一个最小半径的能够包围所有数据的超球,通过减小高斯核的方差(the width parameter of the Gaussian kernel function),可以使超球分类成很多的小部分,每一小部分中包含的点便是一种类别。用软间隔解决异常值问题从而处理不同类别重叠的问题。

Describing Cluster Boundaries with Support Vectors

共有 N N 个数据点{xi}χ χRd χ ⊆ R d Φ Φ χ χ 变换至高维的特征,加入松弛变量 ξj ξ j ,要想求得包围所有数据的最小半径的超球,可用下面的问题描述:

min R2+CΣξjs.t. Φ(xj)a2R2+ξj,ξj0,j m i n   R 2 + C Σ ξ j s . t .   ‖ Φ ( x j ) − a ‖ 2 ≤ R 2 + ξ j , ξ j ≥ 0 , ∀ j

其中 R R 为半径,a为超求的球心,拉格朗日函数:

L=R2Σ(R2+ξjΦ(xj)a2)βjΣξjμj+CΣξj, L = R 2 − Σ ( R 2 + ξ j − ‖ Φ ( x j ) − a ‖ 2 ) β j − Σ ξ j μ j + C Σ ξ j ,

其中拉格朗日乘子 βj0,μj0 β j ≥ 0 , μ j ≥ 0 C C 为惩罚参数。对R,a,ξj分别求偏导并置零得:

Σβj=1,a=ΣβjΦ(xj),βj=Cμj Σ β j = 1 , a = Σ β j Φ ( x j ) , β j = C − μ j

KKT条件:

ξjμj=0,(R2+ξjΦ(xj)a2)βj)=0 ξ j μ j = 0 , ( R 2 + ξ j − ‖ Φ ( x j ) − a ‖ 2 ) β j ) = 0

对于样本点 xi x i

  • ξi>0 ξ i > 0 则样本点在超球外;
  • ξi=0 ξ i = 0 则样本点在超球面上或超球面内,当 βi0 β i ≠ 0
    • 0<βi<C 0 < β i < C 则称样本点是一个支持向量(SV);
    • βi=C β i = C 则称样本点为边界支持向量(bounded SV)

接下来拉格朗日对偶函数:

W=ΣjΦ(xj)2βjΣi,jβiβjΦ(xi)Φ(xj) W = Σ j Φ ( x j ) 2 β j − Σ i , j β i β j Φ ( x i ) ⋅ Φ ( x j )

将上述推导出的条件代入可得约束条件变为:

0βjC 0 ≤ β j ≤ C

将内积运算全部换成如下的高斯核:

K(xi,xj)=eqxixj2, K ( x i , x j ) = e − q ‖ x i − x j ‖ 2 ,

q q 为宽度参数(width parameter,即12σ2),那么拉格朗日对偶函数可写为:

W=ΣjK(xj,xj)βjΣi,jβiβjK(xi,xj) W = Σ j K ( x j , x j ) β j − Σ i , j β i β j K ( x i , x j ) 。

此时数据点到球心的距离:

R2(x)=Φ(xj)a2 R 2 ( x ) = ‖ Φ ( x j ) − a ‖ 2

可化为:

R2(x)=K(x,x)2ΣjβjK(xj,x)+Σi,jβiβjK(xi,xj) R 2 ( x ) = K ( x , x ) − 2 Σ j β j K ( x j , x ) + Σ i , j β i β j K ( x i , x j )

那么超球的半径即为SV到球心的距离。此时闭合轮廓的形状由参数 q q C决定。如下图, q q 增大,轮廓就越贴合样本点。q主要定义了单个样本对整个分类超平面的影响,当 q q 比较小时,单个样本对整个分类超平面的影响比较小,不容易被选择为支持向量,反之,当q比较大时,单个样本对整个分类超平面的影响比较大,更容易被选择为支持向量,或者说整个模型的支持向量也会多。

figure1

而当 C C 减小时,如下图,轮廓边缘变得平滑,SV的数量减少,而bounded SV的数量增多(当C<1时bounded SV才会存在),可以更好地处理异常点。如果把惩罚系数 C C 和RBF核函数的系数q一起看,当 C C 比较大,q比较大时,我们会有更多的支持向量,我们的模型会比较复杂,容易过拟合一些。如果 C C 比较小 ,q比较小时,模型会变得简单,支持向量的个数会少。

figure2

Support Vector Clustering (SVC)

为了将数据点聚类,文中介绍了一种求两点间邻接矩阵的方法:

邻接矩阵

如果两点连线间的所有点均在超球内部,说明两数据点有连接,即位于同一类。

Overlapping clusters(不是很懂)

当存在重叠时,说明bounded SV很多,SVC可以近似地看作Parzen窗概率密度估计(如下公式)。

p(x)=1NΣiK(xi,x) p ( x ) = 1 N Σ i K ( x i , x )

Parzen窗概率密度估计值最大的点便是核心的点。

The iris data

在鸢尾花数据集的数值实验中,SVC表现要优于information theoretic approach和SPC algorithm这两个非参数化的聚类方法。具体实验结果如下:

result

同时,需要注意的是,SVC在低维特征上的表现要优于高维特征,因此最好事先对数据特征进行降维处理,例如PCA。

Varying q q and C

这里将如何寻找最优的 q q C,对于 q q 最好从小到大依次寻找,因为一个比较好的聚类通常含有较少的类别。当SV的数量超出某个范时便可确定参数q C C <script type="math/tex" id="MathJax-Element-72">C</script>。

添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值