取自周志华的西瓜书
1. 间隔与支持向量
给定训练样本集
,分类学习最基本的想法就是基于数据集D在样本空间中找到一个划分超平面,将不同类别的样本分开。但能将训练样本分开的划分超平面可能有很多,如图1所示,我们应该努力去找到哪一个呢?
直观上看,应该去找位于两类训练样本“正中间”的划分超平面,即图1中加粗的那个,因为该划分超平面对训练样本局部扰动的“容忍”性最好。例如,由于训练集的局限性或者噪声的因素,训练集外的样本可能比图1中的训练样本更接近两个类的分隔界,这将使很多划分超平面出现错误,而加粗的超平面影响最小。换言之,这个划分超平面所产生的分类结果是最鲁棒的,对未见示例的泛化能力更强。
在样本空间中,划分超平面可通过如下线性方程来描述:
其中 为法向量,决定了超平面的方向; 为位移项,决定了超平面与原点之间的距离。显然,划分超平面可被法向量 和位移 确定,下面将其记为 。样本空间中任意点到 的距离可写为
假设超平面 能将训练样本正确分类,即对于 ,若 ,则有 ;若 ,则有 。令
(3)
公式(3)称为最大间隔假设, 表示样本为正样本, 表示样本为负样本,式子前面选择大于等于+1,小于等于-1只是为了计算方便,原则上可以为任意常数,但无论是多少,都可以通过对 的变换使其为+1和-1,此时将公式(3)左右乘以 ,得到如下
实际上等价于: ,训练集中的所有样本都应该满足此公式。
如图2所示,距离超平面最近的这几个样本点使公式(3)的等号成立,它们被称为“支持向量”(support vector),两个异类支持向量到超平面距离之和为
它被称为“间隔”(margin)。
欲找到具有“最大间隔”(maximum margin)的划分超平面,也就是要找到能满足公式(3)中约束的参数 和 ,使得 最大,即
显然,为了最大化间隔,仅需要最大化 ,这等价于最小化 。于是,公式(5)可重写为
这就是支持向量机(Support Vector Machine, 简称SVM)的基本型。
2. 对偶问题
未完待续……