SVM(Support Vector Machine)读书笔记二(支持向量和Kernel方法)

在一个线性不可分的样本中,用添加多次项特征可以将两类样本分开,具体原理请参考 这里,用SVM分类器也是同样道理。如果两类样本交叉越多,需要越高次的特征,模型就越复杂,这在存储上和计算资源上都是很大的开销。SVM用kernel方法就解决了这个问题,kernel方法是将高维度的计算放到低维度来做,最后得到的是高纬度上的模型。具体原理请看下面的推导。

特征转换

如果样本在低纬度空间不可分,那么可以将样本的特征从低维度空间投影到高纬度空间,如下图所示
这里写图片描述
而一般从低纬度空间向高纬度空间投影的方法就是往已有的特征中添加多项式特征项,再来看下面一个图
这里写图片描述
上面三个图中,在( x1 , x2 )这个空间中,两类样本线性不可分,即在( x1 , x2 )空间中的所有线性模型都无法将这两类样本区分开。如果把这个空间投影到比如( x1 , x2 , x21 , x21x2 , x21x22 , x21x32 , x31x2 ,…)这样的一个空间中就变得线性可分了(当然有过拟合的风险),在这个高纬度的空间中的超平面表现在( x1,x2 )空间中就是图三所示的一条曲线,图二则是将( x1,x2 )投影到二次项组成的4维空间中。

SVM的对偶问题

假设已经通过 ϕ(x) 将样本投影到了能够将两类样本分开的 z 空间,那么需要解决的优化问题为:

minw,b12wTw;s.t.yn(wTϕ(x)+b)1,n=1...N

上一篇中讲到可以用二次规划解这个问题,只要把Q,p,A,c丢进解二次规划的软件里就可以得到解,这里对应的特征是投影之后的高纬度特征。

Q=[00Td0dId];p=0;A=y1ynxT1y2y2xT2.......ynynxTn,c=1

问题是,这里的Q是和投影之后的维度有关的,如果投影到的空间是很高维甚至无穷维,这个问题就没法解了。为了解这个问题,就需要把原来的问题转化成它的对偶形式,让这个问题的求解和转换后的维度没有关系,只和输入的样本的个数有关。

SVM的求解是一个带约束的最佳化问题:

minw12wTw;s.t.yn(wTxn+b)1,n=1,2...N

解上面这个带约束的最佳化问题可参考Lagrange乘子法(可参考https://en.wikipedia.org/wiki/Lagrange_multiplier),把约束放进式子中,写成Lagrange表达式为:

L(b,w,α)=12wTw+i=1i=Nαi(1yn(wTzn+b))

首先,用 Lagrange 乘子法可以将上面的最优化问题写成下面的形式:
minw,bmaxαL(b,w,α)=minw,b12wTw+maxαi0,i=1..Ni=1i=Nαi(1yn(wTzn+b))

这里,为什么这个最优化问题和上面的n个不等式约束的优化问题是等价的呢?
上面优化过程中,先固定住w,b,根据 α 来进行最大化,在w,b满足 (1yn(wTzn+b
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值