ω支持向量机简介
支持向量机(Support Vector Machine, SVM)是一类按监督学习(supervised learning)方式对数据进行二元分类的广义线性分类器(generalized linear classifier),其决策边界是对学习样本求解的最大边距超平面(maximum-margin hyperplane)(百度百科)
间隔和支持向量
因为分类学习的基本想法就是在训练集D{(x1,y1),(x2,y2),...,(xm,ym)}的样本空间中找到一个划分超平面将不同类别的样本分开。因此我们的目的就是在众多划分超平面中找到一个最好的划分平面(如下图)。
图1:存在多个划分超平面将两类训练样本分开
从上图可以看出红色的划分超平面应该是效果最好的,因为该划分超平面对样本局部扰动的“容忍”性最好。因为由于训练集的局限性或噪声的因素,训练集之外的样本可能更加接近两个类的分隔界,这就会使得许多的划分超平面出现错误,而红色的超平面影响最小,也就是说这个划分超平面所产生的分类结果是最“鲁棒”的,泛化能力最强的。
鲁棒性(Robust):强壮和健壮的意思,在这里是指训练后的模型对异常数据进行分类仍然能够得到较好的结果
泛化能力:学得模型适用于没在训练集中出现的样本的新样本的能力,称为泛化能力
在样本空间中,划分超平面可以用如下线性方程来描述: ωTx + b = 0
其中ω=(ω1,ω2....ωd)为法向量,决定了超平面的方向;b为位移项,决定了原点和超平面的距离,因此划分超平面可被法向量ω和位移b确定
例如在三维平面中,平面方程可以表示为:Ax+By+Cz+D=0 因此平面的法向量为(A,B,C),原点到平面的距离为D,点到平面的距离推导如下图
因此,样本空间中任意一点到超平面(ω,b)的距离为:
假设超平面能够将训练样本正确分类,即对于(xi,yi)∈D ,如果yi = +1 , ωTx + b>0,如果yi = -1 , ωTx + b<0 。
同时,因为对超平面进行缩放,总能得到下面的式子:
支持向量:如下图所示的,有部分点恰好使得上面的式子的等号成立,这些点就被称为支持向量。
间隔:两个异类支持向量之和到超平面的距离γ就被称为间隔。
支持向量分类就是为了找到具有“最大间隔”的划分超平面,也就是说找到约束中的ω和b使得间隔γ最大,因此可以得到如下式子:
间隔从式子中看只与ω有关,但是b在约束中也会影响ω的值。
上面的式子可以重写为如下式子,这就是支持向量机的基本型。
对偶问题