SVM拓展和SVR支持向量回归

软间隔

在建立SVM模型时,假定正负样本是线性可分的。但是,实际有些时候,样本不是完全线性可分的,会出现交错的情况,例如下图。

这时,如果采用以下模型

minw,b{ 12w22},subject toyi(wTxi+b)1 m i n w , b { 1 2 ‖ w ‖ 2 2 } , s u b j e c t   t o y i ( w T x i + b ) ≥ 1

可能就没有可行解。针对这种情况,允许某些样本不满足约束 yi(wTxi+b)1 y i ( w T x i + b ) ≥ 1 , 但是在最大化间隔的同时,不满足约束的样本应尽可能少,优化目标可以写为:

minw,b12w2+Cmi=1l0/1(yi(wTxi+b)1)(4-1) (4-1) m i n w , b 1 2 ‖ w ‖ 2 + C ∑ i = 1 m l 0 / 1 ( y i ( w T x i + b ) − 1 )

其中 l0/1 l 0 / 1 是0/1损失函数,

L0/1(z)={ 10if z<0otherwise L 0 / 1 ( z ) = { 1 if z<0 0 otherwise

从(4-1)可以看到,当C为无穷大时,所有样本必须满足约束 yi(wTxi+b)1 y i ( w T x i + b ) ≥ 1 才可行。当C取有限值时,允许一些样本不满足约束。

l0/1 l 0 / 1 非凸非连续,数学性质不好,因此常用其他函数替代,称为替代损失函数(surrogate loss function)。一些常用的替代损失函数有:

hinge损失: lhinge(z)=max(0,1z) l h i n g e ( z ) = m a x ( 0 , 1 − z )

指数损失exponential loss: lexp(z)=exp(z) l e x p ( z ) = e x p ( − z )

对率损失 logistic loss: llog(z)=log(1+exp(z)) l l o g ( z ) = l o g ( 1 + e x p ( − z ) )

如果采用hinge损失,则(4-1)变为:

minw,b12w2+Cmi=1max(0,1yi(wTxi+b))(4-2) (4-2) m i n w , b 1 2 ‖ w ‖ 2 + C ∑ i = 1 m m a x ( 0 , 1 − y i ( w T x i + b ) )

引入松弛变量 ξi ξ i (也叫容忍度),C为参数,需要根据经验调整。可以得到

minw,bsubject to{ 12w22+Ci=1Nξi},yi(wTxi+b)1ξi;i=1,...,Nξi0(4)(5)(6)(4-3) (4-3) (4) m i n w , b { 1 2 ‖ w ‖ 2 2 + C ∑ i = 1 N ξ i } , (5) s u b j e c t   t o y i ( w T x i + b ) ≥ 1 − ξ i ; i = 1 , . . . , N (6) ξ i ≥ 0

这个是一个QP问题。

可以看到,当 ξi=0 ξ i = 0 时, yi(wTxi+b)1 y i ( w T x i + b ) ≥ 1 ,样本点被正确分类,且距离大于支撑向量。

1ξi>0 1 ≥ ξ i > 0 时, yi(wTxi+b)0 y i ( w T x i + b ) ≥ 0 即,样本点被正确分类,但是距离有可能小于支撑向量 yi(wTx

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
支持向量回归(Support Vector Regression, SVR)是一种基于支持向量机(Support Vector Machine, SVM)的机器学习算法,用于解决回归问题。SVRSVM在基本思想上相似,都是通过求解一个最优超平面来进行分类或回归。 SVR的目标是寻找一个超平面,使得所有样本点与该超平面之间的距离尽可能小,并且误差小于一个给定的阈值。与SVM中通过最大化间隔来确定超平面不同,SVR的目标是尽量将所有样本点落在间隔带内。 在SVR中,使用了核函数来处理非线性问题,将低维输入空间映射到高维特征空间中,通过在高维空间中构建超平面来解决线性不可分的问题。常用的核函数有线性核、多项式核和径向基核等。通过选择合适的核函数和核函数参数,可以提高回归算法的性能。 SVR的优点包括: 1. 模型具有良好的泛化能力,能够处理小样本、非线性和高维数据。 2. 可以通过调整软间隔带的宽度来控制模型的复杂度和容忍度。 3. 具有较高的训练速度和预测速度。 然而,SVR也存在一些缺点: 1. 对参数的选择敏感,需要通过交叉验证等方法进行调优。 2. 在处理大规模数据时,计算复杂度较高。 3. 对异常值比较敏感,可能会影响模型的性能。 总而言之,SVR是一种强大的回归算法,可以应用于各种回归问题。通过合理选择核函数和参数,可以提高模型对数据的拟合效果。然而,在使用SVR时需要注意参数调优和异常值处理,以提高模型的性能和稳定性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值