机器学习笔记(二)

4.SVM

SVM(支持向量机)

包括:线性可分支持向量机(硬间隔最大化);
线性支持向量机(近似线性可分,软间隔最大化)
非线性支持向量机(kernel trick)

如图所示的分类演示。代码来源:机器学习实战。
机器学习实战演示代码

图中圈出来的正是所谓的支持向量。SVM是一种决策机器,只提供分类的结果,并不提供后验概率。

补充一下(PRML):分类问题划分为2个阶段,推断阶段和决策阶段。推断阶段,我们使用训练数据学习后验概率模型。决策阶段使用这些后验概率进行分类。还有一种方式,同时解决两个问题,简单学习一个函数,做判断。该函数又称为判别函数。
相应的直接使用判别函数的有很多缺点,而使用后验概率有一下优点(具体见PRML 1.5节):
1、最小化风险。
2、拒绝选项
3、补偿先验概率

线性分类问题模型如:

y(x,w)=wTx+b (把b截距项拿出来)

假设空间是线性可分的,分离超平面 wTx+b=02w1x1+w2x2+b=0

相应的决策函数 f(x)=sign(wTx+b) wTx+b>0 去正例(y=+1),反之取负例(y=-1)。

如图很明显的,我们现在想让 wTx+b=1 wTx+b=1 之间的距离最大化。

并且,对于所有的样本 y(wTx+b)>=1 (限制条件)。最小取1的点,即支持向量点。使分类效果更好,实际上是使两条平行线之间的距离最大,两平行线间的距离公式:即

l=|1(1)|||w||=2||w||

即转换成求w模的最小值。也是 min12||w||2

分类间隔

引入拉格朗日函数, an >=0是拉格拉日乘子,限制条件 y(wTx+b)>=1 ,根据拉格朗日对偶性,原问题的对偶问题是极大极小问题,即先求 L(w,b,a) 对w,b的极小值,再求对 an 的极大值。
步骤1
求极小:

L(w,b,a)=12||w||2+Nn=1an{y(wTx+b)1}

L(w,b,a) 的导数为0 ,对我们要求的分界面参数,求导等于0,得到:

w=Nn=1anynxn

0=Nn=1anyn

代入原式。得到:

minw,bL(w,b,a)=12Mm=1Nn=1amanymyn(xmxn)+Nn=1an

步骤2:求 minw,bL(w,b,a) 对a的极大值。注意限制条件:

  1. 0=Nn=1anyn

  2. an >=0

具体推导,见统计学习方法。
常用SMO,算法来寻找a值。统计学习方法(P128)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值