西瓜书读书笔记 task05
第6章 支持向量机
6.1 间隔与支持向量
支持向量机(Support Vector Machine)是最常用的机器学习算法之一.
首先我们从最简单的SVM开始回顾. 假设一个特征空间中有若干二分类样本, 且它们是线性可分的,那么在能够将其正确分类的无数个超平面中,我们应该挑选怎样的超平面呢?如下图

直观上看,应该去找位于两类训练样本"正中间"的划分超平面,这个划分超平面所产生的分类结果是最鲁棒的,对未见示例的泛化能力最强.

任一点x到超平面(w,b)的距离可写为

假设超平面能够分类正确,令:

此时, 距离超平面最近的这几个训练样本刚好使上式的等号成立,它们就被称作支持向量,两个异类的支持向量到超平面的距离和为:

它被称为"间隔" (margin)
欲找到具有"最大间隔" (maximum margin) 的划分超平面,也就是找到上述方程中满足约束参数的w和b,使得r最大

这就是支持向量机 (Support Vector Machine,简称 SVM) 的基本型.
6.2 对偶问题
对上述式子使用拉格朗日乘子法可得到其"对偶问题" (dual problem). 具
体来说,对上述式子的每条约束添加拉格朗日乘子ai>=0,则该问题的拉格朗日
函数可写为

将上式子w带入 即可将L(w,b,a)中的w和b消去得对偶问题

求解得模型

6.3 核函数
我们假设训练样本是线性可分的,即存在一个划分超平面能将训练样本正确分类.然而在现实任务中?原始样本空间内 也许并不存在一个能正确划分两类样本的超平面例如图 6.3 中的" 异或 " 问题就不是线性可分的

可将样本从原始空 间 映射到-个更高维的特征空间,使得样本在这个特征空间内 线性可分. 例如在图 6.3 中 , 若将原始的二维空间 映射到一个合适的三维空间 ,就能找到一个合适的划分超平面 . 幸运的是,如果原始空间是有限维 , 即属性数有限?那么一定存在一个高维特征空间使样本可分。


有了这样的函数,我们就不必直接去计算高维甚至无穷维特征空间中的内积,可以重写为:



6.4 软间隔与正则化
在前面的讨论中 ,我们牛 '直假定训练样本在样本空间或特征空间中是线性可分的?即存在 d个超平面能将不同类的样本完全划分开 . 然而,在现实任务中往往很难确定合适的核函数使得训练样本在特征空 间 中线性可分;退一步说,即使恰好找到了 某个核函数使训练集在特征空间中线性可分?也很难断定这个貌似线性可分的结果不是由于过拟合所造成的 .缓解该 问题的一个办法是允许支持向 量机在一些样本上出错.为此,要引入"软间隔" (soft margin)的概念, 如图 6.4所示






6.5 支持向量回归
我们考虑回归问题,给定样本D={(x1,y1),(x2,y2),...,(xm,ym))}


将以上四个式子代入拉格朗日函数,得到SVR的对偶问题


6.6 核方法

表示应理对损失函数没有限制,对正则化工页 Q 仅要求单调递增,甚至不要求 Q 是凸函数,意味着对于一般的损失函数和正则化项,优化问题 (6.57) 的最优解 h*(x) 都可表示为核函数 κ(X , Xi) 的线性组合;这显示出核函数的巨大威力.人们发展出一系列基于核函数的学习方法,统称为"核方法" (kernel methods). 最常见的,是通过"核化" (即引入核函数)来将线性学习器拓展为非线性学习器.下面我们以线性判别分析为例来演示如何通过核化来对其进行非线性拓展,从而得副"核线性判别分析" (Kernelized Linear DiscriminantAnalysis,简称 KLDA).

浙公网安备 33010602011771号