您的位置:首页 > 其它

SVM目标函数的由来

2017-02-07 16:17 197 查看
1. SVM是什么

SVM分类的原理就是找到一个超平面(假设数据是线性可分的),这个超平面满足两个要求:

1. 所有数据点被完美地分成两类

2. 所有数据点离超平面距离越远越好

2. 若干定义

为了量化以上要求,我们先定义一些概念:

feature:x

class:y=+1 or −1

function margin: γ^=y(wTx+b)

geometrical margin: γ~=γ^∥w∥

3. 如何满足两个条件

(1) 要满足条件1,很简单,只需要满足yi(wTxi+b)>0,i=1,2,...

(2) 要满足条件2,比较复杂,我们可以这样做:

条件2等效于:让离超平面最近的点的geometrical margin越大越好。

假设最近点的geometrical margin为γ~,那么自然其他点的geometrical margin都会大于γ~。

所以条件2

=maxγ~ s.t. yi(wTxi+b)∥w∥=γ^i∥w∥=γ~i≥γ~,i=1,2,...

=maxγ^∥w∥ s.t. yi(wTxi+b)=γ^i≥γ^,i=1,2,...

若固定γ^=1则条件2

=max1∥w∥ s.t. yi(wTxi+b)≥1,i=1,2,...

其实条件2已经包含条件1,

至此,得出SVM的目标函数就是条件2:

max1∥w∥ s.t. yi(wTxi+b)≥1,i=1,2,...

备注:

此处还可以知道为什么超平面会处于支持向量中间位置?因为如果γ~还不够大,那么超平面会往大的方向移动一点,一直移动到中间位置γ~时达到最大,如果移动超过了中间位置,那么γ~会又变小,因为此时距离超平面最近的点已经不是原来的那个点了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  svm