模式识别 —— 第六章 支持向量机(SVM)与核(Kernel)

模式识别 —— 第六章 支持向量机(SVM)与核(Kernel)

开始之前先推荐一个个人感觉把SVM讲的特别好的课程视频(尤其是转对偶问题那一部分),浙大胡浩基老师手写板书讲的,真的草履虫都能看懂!

点一下 嗖~就过去

硬间隔与软间隔区别如下:

硬间隔
完全分类准确,只在数据是线性可分离的时候才有效。其损失函数不存在,损失值为0。但它对异常值非常敏感,无法很好的泛化。

软间隔
要避免这些问题,最好使用更灵活的模型。目标是尽可能在保持最大间隔宽度和限制间隔违例之间找到良好的平衡,这就是软间隔分类。

所以软间隔允许一定量的样本分类错误;优化函数包括两个部分,一部分是点到平面的间隔距离,一部分是误分类的损失个数;C是惩罚系数,误分类个数在优化函数中的权重值;权重值越大,误分类的损失惩罚的越厉害。

硬间隔(Hard-Margin)

我们想找到一个超平面让其线性可分,数学表述如下:
在这里插入图片描述
a式子与b式子合并可得到下面的统一表示。

现在我们想让在这个分界线(面)附近的点(即支持向量)离它尽量远一点。由点到直线距离公式来使得Margin最大。
在这里插入图片描述
然后我们想办法将最大化Margin转化为下面这个优化问题:
在这里插入图片描述
怎么转化的呢?首先我们有两个事实条件:
在这里插入图片描述
之后:
在这里插入图片描述

此时,对于非支持向量那就相当于 ∣ w T x 0 + b ∣ > 1 \lvert w^Tx_0+b \rvert >1 wTx0+b>1
把y写进去来代替绝对值符号的作用就可以得到新的限制条件 y ( w T x 0 + b ) ≥ 1 y(w^Tx_0+b) \geq 1 y(wTx0+b)1

最后我们为了后续求导方便,我们可以在目标函数处多加一个 1 2 \frac{1}{2} 21,如下:

在这里插入图片描述
这样就变成了一个凸优化的问题,即要么无解、要么只有一个极值。因此局部极值就是最值。

软间隔(Soft-Margin)

在这里插入图片描述
SVM对训练集里面的每个样本 ( x i , y i ) (x_i,y_i) (xi,yi)引入了一个松弛变量 ξ i ≥ 0 ξ_i≥0 ξi0,使函数间隔加上松弛变量大于等于1,也就是说条件变量改为如下:

y i ( w ∙ x i + b ) ≥ 1 − ξ i yi(w∙xi+b)≥1−ξi yi(wxi+b)1ξi

加入松弛变量 ξ i ξ_i ξi后,损失函数就需要改写为:
m i n 1 2 ∣ ∣ w i ∣ ∣ 2 + C ∑ i = 1 n ξ i min\frac12||w_i||^2+C\sum_{i=1}^nξ_i min21∣∣wi2+Ci=1nξi

s . t . y i ( w T x i + b ) ≥ 1 − ξ i ( i = 1 , 2 , . . . m ) s.t. \quad y_i(w^Tx_i+b)≥1−ξ_i(i=1,2,...m) s.t.yi(wTxi+b)1ξi(i=1,2,...m)

ξ i ≥ 0 ( i = 1 , 2 , . . . m ) ξ_i≥0(i=1,2,...m) ξi0(i=1,2,...m)

这里,C>0为惩罚参数,可以理解为我们一般回归和分类问题正则化时候的参数。C越大,对误分类的惩罚越大,C越小,对误分类的惩罚越小。

也就是说,我们希望 1 2 ∣ ∣ w i ∣ ∣ 2 \frac12||w_i||^2 21∣∣wi2尽量小,误分类的点尽可能的少。C是协调两者关系的正则化惩罚系数。在实际应用中,需要调参来选择。

核kernel

对于在低维线性不可分的数据,在映射到了高维以后,就变成线性可分的了。例如:
在这里插入图片描述

左边是在二维空间的投影,我们没办法找到一条直线将两个类别区分开。但是如果我们将二维空间映射到三维空间的话,我们就可以找到一个超平面在三维中线性可分。

就像是三体中狄奥伦娜能进入四维空间后轻易的取人脑子一样。

维度越高线性可分就越容易。但是映射成的高维维度是爆炸性增长的,这个计算量实在是太大了,而且如果遇到无穷维的情况,就根本无从计算了。这就要用到我们的核函数了。

核函数的价值在于它虽然也是将特征进行从低维到高维的转换,但核函数好在它在低维上进行计算,而将实质上的分类效果(利用了内积)表现在了高维上,这样避免了直接在高维空间中的复杂计算,真正解决了SVM线性不可分的问题。

线性核函数
线性核函数(Linear Kernel)其实就是內积,如下:
K ( x , y ) = x ∙ y K(x,y)=x∙y K(x,y)=xy

多项式核函数
多项式核函数(Polynomial Kernel)是线性不可分SVM常用的核函数之一,公式如下:
K ( x , y ) = ( γ x ∙ y + r ) d K(x,y)=(γx∙y+r)^d K(x,y)=(γxy+r)d

高斯核函数
高斯核函数(Gaussian Kernel),在SVM中也称为径向基核函数(Radial Basis Function,RBF),它是非线性分类SVM最主流的核函数。libsvm默认的核函数就是它。公式如下:

K ( x , y ) = e − ∣ ∣ x − y ∣ ∣ 2 2 σ 2 K(x,y)=e^{-\frac{||x-y||^2}{2\sigma ^2}} K(x,y)=e2σ2∣∣xy2

对偶问题

这部分建议看视频部分的讲解,讲的真的超级棒!

这里我们采用的是拉格朗日乘子将其转化成对偶问题,思路如下:

在这里插入图片描述

硬间隔优化问题的对偶转变

按照上述思路,首先我们将限制条件转换成 a ( x ) ≤ 0 a(x) \leq 0 a(x)0的形式:
在这里插入图片描述
之后我们构建拉格朗日常数:
在这里插入图片描述
因为是求最值,所以我们求导进行回代:
在这里插入图片描述

考点

这是我们这学期的期末考试题,老师提前透露的。也是类似上面的推导,只不过要简单一点再。

就是如果目标函数不是 w T x i + b w^Tx_i + b wTxi+b而是 w T x i w^Tx_i wTxi,请进行对偶问题的转换。其实是变简单了,不用对b进行求导回代了。解法如下:

在这里插入图片描述
可恶啊,背面画着图透过来了。算了,凑合看吧,其实结果是一样的。

软间隔优化问题的对偶转变

在这里插入图片描述在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值