支持向量机课(SVM)(四)

在感知机一节中说到,我们在线性可分的情况下,寻找一个超平面使得

一部分实例$\sum_{i=1}^{n}w _{i}\cdot x_{i}>0$,

另一部分实例$\sum_{i=1}^{n}w _{i}\cdot x_{i}<0$

但是感知机的解不唯一,所以会出现这样的情况

我们应该如何选择一个最佳的解呢?

首先定义几何间隔为:

$d=\frac{y\left | w\cdot x_{i}+b \right |}{\left \| w \right \|_{2}}$

其实就是感知机损失函数在固定分子之前的形式

定义函数间隔为:

$y_{i}(w\cdot x_{i}+b)$

几何间隔d才是真正的点到超平面的距离

支持向量

图中过样本点的虚线表示的就是支持向量(support vector)

中间的实线就是超平面$y_{i}(w\cdot x_{i}+b)=0$

一般设置支持向量为 $y_{i}(w\cdot x_{i}+b)=+1/-1$

SVM希望所有的点到超平面的距离都大于1,公示表示为

max $ d=\frac{1}{\left \| w \right \|_{2}}\sum_{x_{i}\subseteq M}^{ }y_{i}(w\cdot x_{i}+b) $

并且 $s.t y_{i}(w\cdot x_{i}+b≥1$

与感知机不同,我们固定d的分子为1,

又最大化$\frac{1}{\left \| w_{2} \right \|_{2}}$,等同于最小化$\frac{1}{2}\left \| w^{2} \right \|_{2}$   


tips

要加1/2 和 平方 单纯的为了求导的方便


所以优化公式变为:

min $\frac{1}{2}\left \| w^{2} \right \|_{2}$ 

 $s.t y_{i}(w\cdot x_{i}+b≥1$

建立拉格朗日函数,将不等于约束变成无约束优化问题

$L(w,b,a)=\frac{1}{2}\left \| w^{2} \right \|_{2}-\sum a_{i}\left [ y\left ( w\cdot x+b \right )-1 \right ]且a_{i}> 1 $

这里i= 1,2,,,m,即样本个数。下文为了编辑公式方便不再赘述。

(这里不明白的为什么ai>0,请看KKT条件一文)

所以优化目标变成:

$min\underbrace{w,b} max\underbrace{a_{i}\geq 0}L(w,b,a)$


这里为什么要max ai 


优化 L(w,b,a)

求w,b的最小值,对L求偏导

$\frac{\partial L}{\partial w}=0\Rightarrow w = \sum a_{i}y_{i}x_{i}$

$\frac{\partial L}{\partial b}=0\Rightarrow b = \sum a_{i}y_{i}$

这里w可由a表示,带入方程,我们可要求出max a便可求得w,b暂时先不管。

定义:$\psi (\alpha )=min\underbrace{w,b}(w,b,a)$

将$w = \sum a_{i}y_{i}x_{i}$带入

得到

(公式太过庞大,编辑公式太繁琐,so..手写)

猜你喜欢

转载自www.cnblogs.com/super-yb/p/10841027.html
今日推荐