SVM百家争鸣之多分类超球支持向量机

基本思想是对于一个分类有一个超球,m个分类就有m个超球,求出最优的m个超球就可以了,待分类的样本与m个超球的中心比较,如果在其中一个超球里面,则属于这个超球队分类,当然还有重叠的部分,具体下面再讨论。

先看一个表达式:

第一个表达式就是球的方程。 其中表示样本点,上标m表示第m个种类,可以暂且不管m,表示第m个种类的超球中心,表示第m个种类的超球半径,表示松弛因子,对一些非常偏离球中心的点很敏感,所以要允许一些点在超球的外面,就是起这个作用的,当然要大于等于0。我们的目标是要尽量使超球小和松弛变量的和最小,因为这样才是最优的分类,因此目标函数是:

是某个常数,起控制对错分样本惩罚的程度的作用,实现在球的大小和错分样本之间的折中。这样,目标就是最小化min。以后的问题跟求解标准SVM没有什么区别,都是转化为对偶问题。具体如下:

先设它的Lagrange函数为:

因为Lagrange因子都大于等于0,所以max=,所以原问题min通过转化变为min()max(),这里要注意的是min和max括号里面表示的是对哪个参数求最大最小,min和max是对不同的参数,min是对这三个参数,而max是对这两个参数,再者只要满足kkt条件,max和min可以互换,即max和min谁先谁后求得到结果是一样的。所以原问题变为:max()min(),先求

min(),对三个参数的导并令他们为0:


原文中还有一个等式没给出:

把上面三个等式代入原式,经过计算化简,我这里写了一些关键的化简步骤:


得到最后的对偶问题:


求出超球后,便是分类了,分类函数就是计算待分类的样本点到各个超球的距离:


当fm最小的那个超球即为这个样本的分类。这里也有一个不太准确的地方,如果两个超球有重叠,上面的判断函数就不一定准确。吴强等人提出了子超球的概念,目的为解决超球重叠区域分类不准确的问题。大概的思想是在重叠区域再训练两个子超球,以此来分类重叠区域的样本。看图:


子超球就是把U1和U2重叠的区域再训练两个超球,用来判断重叠区域的样本,怎么训练呢?以U1为例,在重叠区域有两种样本,一种是经过判别函数,把原本是属于U1的点判给U2了,称这种点为同类错误样本点,一种是经过判别函数,把原本不属于U1的点判给U1了,称这种点为异类错误样本点,然后再使用上面的方法对这两种类别的点(同类错误样本点和异类错误样本点)进行训练,得到子超球。以后处在重叠区域的点都需要经过子超球来判断,而不仅仅是经过母超球的决策函数来判断了。具体请参考原论文。


参考:

《用球结构的支持向量机解决多分类问题》   朱美琳等

《球结构支持向量机的改进算法及仿真研究》   吴强等

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值