SVM模型就是用一个超平面H把正负样本分开的模型,如图1所示。
1、超平面的定义
假设w→w→是垂直超平面H的法向量,x−−→x−→是一个负样本,x+−→x+→是一个正样本,x−−→x−→、x+−→x+→在向量w→w→的投影点分别是A,B。所有的样本满足公式(1)。
w→||w→||∗x−−→⩽|OC|⩽w→||w→||∗x+−→(1)w→||w→||∗x−→⩽|OC|⩽w→||w→||∗x+→(1)
即
w→||w→||∗x−−→−|OC|⩽0⩽w→||w→||∗x+−→−|OC|(2)w→||w→||∗x−→−|OC|⩽0⩽w→||w→||∗x+→−|OC|(2)
进一步可以转化为
w→∗x−−→+b⩽0⩽w→∗x+−→+b(3)w→∗x−→+b⩽0⩽w→∗x+→+b(3)
所以,当样本满足公式(4)时候,则判定为正样本,反之,是负样本。其中,公式(4)中满足等式的点落在超平面H中。
w→⋅x→+b⩾0(4)w→⋅x→+b⩾0(4)

2、训练样本满足的约束
由前面的分析可知,超平面H可以有无数条,然而,我们定义具有最大间隔的超平面才是最优的。如图.1所示,最大间隔指的是虚线H1与H2之间的距离。其中,H1,H,H2是平行的,并且H1到H的距离与H2到H的距离相等。由公式(4),并且向量w→w→可以伸缩,可得
{w→⋅x+−→+b⩾1w→⋅x−−→+b⩽−1(5){w→⋅x+→+b⩾1w→⋅x−→+b⩽−1(5)
即为了得到最优的分割超平面H,我们要求训练的正样本和负样本满足公式(5),然后去求解最大的间隔。其中,落在虚线H1,H2的点使得公式(5)的等号成立,这些点称为支持向量。假设样本点的标签值y∈{+1,−1}y∈{+1,−1}。代入公式(5),有
{y+i(w→⋅x+−→+b)⩾1y−i(w→⋅x−−→+b)⩾1(6){yi+(w→⋅x+→+b)⩾1yi−(w→⋅x−→+b)⩾1(6)
公式(6)可以合并为通用的样本形式
yi(w→⋅x→+b)⩾1(7)yi(w→⋅x→+b)⩾1(7)
即所有的训练样本都满足公式(7),其几何意义如图.1,所有的样本点都在虚线两侧,不允许跨过虚线。注意,预测样本的时候,是允许样本点跨越虚线区域的,因为判断的分界线是超平面H。
3、最大间隔的表示
如图.2所示,最大间隔等于正样本支持向量与负样本支持向量构成的向量x+−→−x−−→x+→−x−→在法向量w→w→上的投影长度d。
投影长度d如公式(8)所示.
d=(x+−→−x−−→)⋅w→||w→||(8)d=(x+→−x−→)⋅w→||w→||(8)
由于这里的x+−→和x−−→x+→和x−→是支持向量,满足公式(9)
yi(w→⋅x→+b)=1(9)yi(w→⋅x→+b)=1(9)
把公式(9)代入公式(8),可得
d=2||w→||d=2||w→||
即求解最大间隔表示如下:
⎧⎩⎨⎪⎪⎪⎪⎪⎪max2||w→||s.tyi(w→⋅x→+b)−1=0{max2||w→||s.tyi(w→⋅x→+b)−1=0
等价于求解
⎧⎩⎨⎪⎪⎪⎪min12||w→||2s.tyi(w→⋅x→+b)−1=0{min12||w→||2s.tyi(w→⋅x→+b)−1=0
其中,s.t 代表约束条件.