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