热门标签 | HotTags
当前位置:  开发笔记 > 人工智能 > 正文

[机器学习]支持向量机1

间隔和支持向量给定训练样本集D{(x1,y1),(x2,y2),,(xm,ym)},yi∈{−1,+1}rolepresenta

间隔和支持向量

给定训练样本集D={(x1,y1),(x2,y2),...,(xm,ym)},yi∈{−1,+1}" role="presentation"> { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x m , y m ) } , y i { 1 , + 1 } 。分类学习最基本的思想就是基于训练集D在样本空间中找到一个划分超平面,将不同类别的样本分开,但是能将训练样本分开的划分超平面可能有很多,哪一个是最好的呢?
这里写图片描述

直观上看,应该取找位于两类样本“正中间”的划分超平面,即B1" role="presentation"> B 1 ,因为该划分超平面对训练样本局部扰动的“容忍”性最好。例如,由于训练集的局限性或噪声的因素,训练集外的样本可能比上图中训练样本更接近两个类的分割界,这将使许多划分超平面出现错误,而B1" role="presentation"> B 1 的超平面受影响最小。换言之,这个划分超平面所产生的分类结果是最鲁棒的,对未见的示例泛化能力最强。

在样本空间中,划分超平面可通过如下线性方程来描述:

wTx+b=0" role="presentation"> w T x + b = 0

下面我们将其记为( ω" role="presentation"> ω ,b)。样本空间中任意点 x" role="presentation"> x 到超平面( ω" role="presentation"> ω ,b)的距离可写成
r=ωTx+b||ω||" role="presentation"> r = ω T x + b | | ω | |


这个公式具体可以用点到直线的距离来解释:点P(x0,y0" role="presentation"> x 0 , y 0 )到直线Ax+By+c=0" role="presentation"> A x + B y + c = 0 的距离为

|Ax0+By0+c|A2+B2" role="presentation"> | A x 0 + B y 0 + c | A 2 + B 2

假设超平面(&#x03C9;,b" role="presentation"> ω , b )能将训练样本正确分类,即对于(&#x03C9;i,yi)&#x2208;D" role="presentation"> ( ω i , y i ) D ,若yi=+1" role="presentation"> y i = + 1 , 则有&#x03C9;Txi+b>0" role="presentation"> ω T x i + b > 0 ; 若yi=&#x2212;1" role="presentation"> y i = 1 ,则有&#x03C9;Txi+b<0" role="presentation"> ω T x i + b < 0