【学习笔记】斯坦福大学公开课(机器学习) 之支持向量机

支持向量机SVM (Support Vector Machines)

在之前的算法中,我们是根据样本来预测出数据的标记(即结果)的概率,那么SVM算法是通过找到数据中的区分边际从而实现数据分类。

边际(Margins)

从margins来认识SVM,首先我们想想之前的算法,比如logistic regression算法,它得到的是样本对应各个标记的概率,概率越大,说明该样本有更多可能分类成该标记。如 果我们需要把这个概率提升,即在根据模型进行分类后就明确指示出是哪一类呢?比如当 θTx>>0 时(注意是”远大于”,即离边际的距离很远), y=1 而不是得到结果 p(y=1)=69% 之类的概率,此时就可以明确的看到根据特征值预测出的分类结果。那么这里的边际就是所说的 θTx=0
我们再从图像上来认识下边际:
这里写图片描述
比如上图中,x和o是两种不同的数据分类。我们会找到分割两种数据的线(边际),A,B,C三个数据都在边际的一侧,所以都属于“x”类,但是A与边际的距离远远大于B和C,那么A属于”x”类的概率就更高。

标记(Notation)

为了更方便的讨论SVM,需要换一种方式来表示标记,我们使用 y{1,1} 来做标记,并且把参数的向量形式,写成 w,b 参数形式:

hw,b(x)=g(wTx+b).

其中, g(z)=1  if z0 ,否则就是 g(z)=1
注意到函数 g ,我们的分类器直接预测出标记是1还是-1,而不会去预测样本为各类标记的概率(如logistic regression)。

函数间隔和几何间隔(Functional and geometric margins)

已知一个训练样本(x(i),y(i)),我们可以定义一个关于 (w,b) 的函数间隔:

γ (i)=y(i)(wTx+b)

y(i)=1 时,会让函数间隔比较大,所以就会需要让 wT+b 成为一个很大的正数。相反的 y(i)=1 时,我们需要 wT+b 成为一个很大的负数。函数间隔越大,那么就可以得到一个更正确,更可信的预测结果。
对于一个关于 g(z) 的线性分类器来说,有一个关于函数间隔很不好的性质:当我们用 2w 来代替 w 2b来代替 b 时,就会有g(wTx+b)=g(2wT+2b),这并不会改变我们预测出的 hw,b(x) ,因为 hw,b(x) 的值只取决于 g(wTx+b) 的符合,而不与它的大小无关。这样看来,我们把函数间隔改成任意大,都不会对我们的实际效果造成影响,这样看来我们需要做出一些改变,比如做一些归一化 ||w||2=1
已知训练样本 S={(x(i),y(i));i=1,2,3m} ,我们定义这个训练样本 S 的函数距离是样本空间中各个样本到判断边界距离中最短的距离。符号记为:
γ=mini=1,2,mγ (i)

下面来看下几何间隔:
这里写图片描述

看上图,已经把关于 (w,b) 的,沿着向量 w 判定边界划出来了。注意到,w的方向与判定边界是成垂直状态。点A,一个被标记为1的训练样本,它到判定边界的距离是线段AB,我们用符号 γ(i) 来表示。
我们如何求出 γ(i) ?我们知道, w/||w|| 表示一个单位向量,A点用 x(i) 表示,而点B就可以通过向量运算得到 x(i)γ(i)w/||w|| ,而这点又在判断边界的直线上,即是满足判断边界的方程 wT+b=0 ,所以就有下面的方程:

wT(x(i)γ(i)w||w||)+b=0

那么,每个点到判断边界的距离就是:
γ(i)=wTx(i)+b||w||=(w||w||)Tx(i)+b||w||

上面就是把判断边界正数一侧的样本的几何距离,更一般的,给定样本及标记 (x(i),y(i)) ,我们得到几何距离:
γ(i)=y(i)((w||w||)Tx(i)+b||w||)

我们注意到,当 ||w||=1 的时候,几何距离与函数距离是相同的。
与函数距离类似,我们也把各个样本的几何距离中,最短的距离写成:
γ=mini=1,2,mγ (i)

最优边界分类器(The optimal margin classifi er)

从上面的论述来看,现在我们需要一个分类器,若要把训练样本分类,则需要分类器,一条线(几何距离),把样本很好的分割成不同类别的标记。
这个问题可以转化为找到一个超平面,使得样本空间中的样本到该平面的距离最大,即:

maxγ,w,bγ||w||     s.t. y(i)(wTx(i)+b)γ,i=1,2m

这里就是说我们需要最大化 γ||w|| ,在叙述函数距离的时候,我们发现, w,b 的等比变化并不会影响超平面的位置,那么就可以让 γ=1
所以原来的式子就变为 1||w|| ,我们要将这个式子最大化,等同于我们需要将 ||w||2 最小化即:
minγ,w,b12||w||2     s.t. y(i)(wTx(i)+b)1,i=1,2m

这个就是在线性约束条件下的,二次优化问题。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值