感谢哔哩哔哩阿婆主:shuhuai008 、视频讲解:https://www.bilibili.com/video/av28186618/?p=1
SVM有三宝:间隔、对偶、核技巧(核函数)
三个不同的分类算法:hard-margin SVM、soft-margin SVM、Kenel SVM
SVM起初用来解决二分类问题
为何叫SVM支持向量机?及其有关求解实例:https://blog.csdn.net/Pit3369/article/details/88965457
目录
1、hard-margin SVM(硬间隔)---最大间隔分类器(max margin )
请注意!f(x)=sign(w^T X+b)纯粹是一个判别模型、与概率没有关系!
一、第一步
二、第二步
三、第三步
最终的精髓就是:
P2:硬间隔SVM - 模型求解(对偶问题之引出)
第一步:常约束--->无约束
第二步:无约束问题--->对偶问题
第三步:对偶问题-->求偏导-->进一步化简为无约束问题
P3:硬间隔SVM - 模型求解(对偶问题之KKT条件)
P4---软间隔SVM-模型定义
P5---约束优化+对偶关系证明
约束优化问题(也成为原问题)
对偶问题
×是一类、圈是一类,找出一个超平面wtx+b=0将此分类。sign是个符号函数,括号内部>0,f(w)为+1;括号内部<0,f(w)为-1。
存在许多条超平面可将×与o分类,那么如何找出一个最合适的呢?SVM就是解决此问题的。
什么叫最合适呢?比如那条竖直的超平面,它离o与×距离非常的近,那么它的鲁棒性比较差,容易受到噪音的影响。那么就要找到一个超平面,让它距离两边的距离都足够的大。
推导过程如下:
化简过程:
2.margin是关于超平面的函数,distance是N个点距离该超平面的集合,我们要找出其中的最小值。这里就有疑问?为何要找 出最小值?不应该是找出最大值吗?
其实超平面:距×与o的距离的最小值尽可能地最大化,因为这样的鲁棒性是最好的。
Yi其实包含在Xi内部了,比如二维空间,横坐标X纵坐标Y,也可以写为横坐标X1,纵坐标X2,因为对于N维立体空间,用X1-->Xi表示较为贴切。其实Yi只是一个lable标志,因为随着X1-->Xi的位置不同,Yi只用+1/-1的取值。
||W||表示2范数
化简步骤如下:
1、min是关于Xi的式子,所以可以将(1/||W||)看作常数提至min函数前。
2、对于后面的约束S.t,可以找出一个α>0,其值刚好等于该约束。
化简过程如下:
其中存在一个定理(可以理解是定理):凸二次规划,极小极大等于极大极小。
推到过程如下:
上面的凸优化问题,是对w、b带有约束---目标函数和优化条件,可以借助拉格朗日乘数,把问题转化为无约束的问题(对w和b没有了约束,但对λi有约束条件)。这是因为拉格朗日乘子中λi>=0,后面相乘的式子<=0。
注解:
上面的化简,存在隐含的关系式:,也就是说拉格朗日乘数中λ为自由常数变量,移项后的约束条件为负。在此情况下,对应的最大值才是1/2 W^T W的值。
宁为鸡头,不做凤尾。其实是一种自我安慰,瘦死的骆驼比马大。凤中凤尾>=鸡中鸡头。
注解:也就是,使得上界最小,下界最大。
为了求其最小值,分别对w、b求偏导,解出w和b的值。(此处疑问,为何一阶导为0,解出就是最小值?因为函数是凸函数,凸优化问题,二阶导大于0,所以极值点就是极小值点)
注解:对于第一个式子中,此处就十分准确的体现了为何前面要引入系数1/2.
将偏导=0,解出的关于w、b的式子代入,化简步骤如下:
注解:lambda(i)是一个n维向量。
注解:
软间隔:在硬间隔的基础上,允许一点点的错误。
注解:
引入ξi,可进行如下化简:
注解:
注解:
注解:
原问题:
对偶问题:
弱对偶性的证明: