手撕SVM

即便使用率已经不高了,但是面试时手推SVM依然是传统。
百度三面时就问了SVM所以还是要手撕
SVM三宝: 间隔,对偶,核技巧


blibli视频课共9课

分类算法 : 硬间隔;软间隔;kernel

hard-margin SVM

模型定义

超平面 W t x + b W^t x + b Wtx+b
判别模型 f ( x ) = s i g n ( W t + b ) f(x) = sign(W^t + b) f(x)=sign(Wt+b)
在这里插入图片描述
无限条线,如何选取使得测试误差最小(而非训练误差)
y i = 1 或 − 1 y_i = 1或 -1 yi=11
最大间隔分类器 m a x ⋅ m a r g i n ( W i b ) max · margin(W_i b) maxmargin(Wib)
y i ( W t x i + b ) > 0 y_i (W^t x_i + b) > 0 yi(Wtxi+b)>0即二者同号
margin定义为离超平面最近的点的距离

margin(Wi b) = min distance(Wi b xi)

点到直线距离distance:
在这里插入图片描述
所以我们得到margin为margin(Wi b) = min (1/||w||) | Wt xi + b|
想要最大的margin
max min(1/||w||) || Wt xi + b||
在 yi(Wt x + b) > 0的限制下

(1)右侧绝对值和yi同号,因而去掉绝对值,加入yi
在这里插入图片描述
(2) W 与x不相关,可以挪到min外面(里面这个min是固定W后从x里找min)
在这里插入图片描述
(min()后面的部分是数据点,常量,可以缩放,实际上就是找最大的1/w)
min()后面部分总存在一个正数最小值r ,因而用正数最小值替代min()后面y和x的式子,并且我们缩放使得r=1,约束就转化为:
在这里插入图片描述
max(w,b) 1/||w||
min(yi (WT x + b) = 1)
其中第二个式子可以转化为yi(Wx + b) >=1
因而最终变为
1)min(w,b) 1 / 2 ∗ W T W 1/2*W^T W 1/2WTW
2) y i ( W T X i + b ) > = 1 y_i (W^T X_i +b) >= 1 yi(WTXi+b)>=1 (对所有i=1…N)
变为凸优化问题,共N个约束,二次的目标函数
稍微变换一下形式
1) m i n ( w , b ) 1 / 2 ∗ W T W min(w,b) 1/2*W^T W min(w,b)1/2WTW
2) 1 − y i ( W T X i + b ) < = 0 1-y_i (W^T X_i +b) <= 0 1yi(WTXi+b)<=0(对所有N个yi)

下面开始求解

转化之前,对w,b是有约束的
第二个约束可以用拉格朗日乘子方程结合在一起,
转化为对wb的无约束的条件
在这里插入图片描述
λi >= 0
构造完拉格朗日乘子式之后,我们可以转化为对w和b的无约束
在这里插入图片描述
拉格朗日方程中,我们先看后半部分
有可能>0 也有可能<=0,我们分别看一下

  1. 1 − y i ( W T X i + b ) 1-y_i (W^T X_i +b) 1yi(WTXi+b) >0
    它的最大值是正无穷,λi可以取到正无穷,无意义
  2. 1 − y i ( W T X i + b ) 1-y_i (W^T X_i +b) 1yi(WTXi+b) <= 0
    最大值一定存在 m a x L = 1 / 2 ∗ W T W + 0 maxL = 1/2*W^T W + 0 maxL=1/2WTW+0

λ>0 , 后面部分有 >0 <=0两种情况,>0是最大值为无穷大,不存在
所以只讨论后面部分<=0的情况
则最大值为 λ = 0时的值即为 min(w,b) 1/ 2 * ||W||
上面两种情况合起来
在这里插入图片描述
上图中即得到原问题

对偶问题

max(λ) min(w,b) L(w,b,λ)
λ >=0

从逻辑上
min max(L) >= max min(L)
这是一个弱对偶关系
(想要一个二者相等的强对偶关系)
这里面上述等式是强对偶关系,二者相等(凸二次的)
因而现在要求
max(λ) min(w,b) L(w,b,λ)
λ >=0
先求后半部分 min(w,b) L(w,b,λ)
先对b求偏导,再对w求偏导,令其为0
在这里插入图片描述
再对w求偏导,令其为0
在这里插入图片描述
yi是实数 x是向量 (考虑拆解转置)
x j T x i = = x i T x j x_j^T x_i == x_i^T x_j xjTxi==xiTxj
得到上述式子的简化
在这里插入图片描述
因而对偶问题简化为:
在这里插入图片描述

KKT条件

原问题与对偶问题具有强对偶关系的 充要条件 满足KKT条件
本问题中的KKT条件为
在这里插入图片描述
slackness complementory互补松弛条件(KKT第二行)
在这里插入图片描述
支持向量上的点,λ 有值,非支持向量上的点λ 都为0
KKT第一行第一个求导得到W
在这里插入图片描述
现在求b*
假设存在一个k,有这么一个样本xk yk满足
1-yk (WT Xk + b) = 0
因为yk = ± 1
左右两边都乘以yk
在这里插入图片描述
(水友说具体的k带入支持向量上面的点就行)

超平面即为 sign(W x + b)

soft-margin SVM

kernel SVM


1.1 线性可分:

二维面上两类点可被直线完全分开(高维则是超平面)

1.2超平面,最大间隔超平面

wx+b=0
二维里就是a1 x1+a2x2+ b=0

  1. 两类样本分别在超平面两边
  2. 两侧距离超平面最近的样本点到超平面距离最大化
    两侧距离超平面最近的样本点,就是支持向量
    SVM要最大化margin
    在这里插入图片描述

1.4SVM的最优化问题

Wx+b=0
在这里插入图片描述
由于两边到s

svm距离分别为d,因而红蓝两类点到svm距离分别大于d或者小于-d
在这里插入图片描述
x是变量,||W|| x d是常量
因而可以放进w和b里面进行缩放
在这里插入图片描述
在这里插入图片描述
现在是将x看做变量,找到x的约束条件
在这里插入图片描述
得到最优化的如下问题:
在这里插入图片描述

2对偶问题

2.1约束条件下目标函数如何求解最优化

在这里插入图片描述
上述问题可以使用拉格朗日子乘法,将带有约束的优化问题转化为拉格朗日函数的无约束优化问题。
在这里插入图片描述
其中拉格朗日乘子λ>0
在这里插入图片描述

2.2 对偶问题

在这里插入图片描述
变成了无约束的条件。

2.3 对偶问题

在这里插入图片描述
最大里最小的,至少比 最小里的最大的。这是个弱对偶关系
强对偶关系时二者取等号
在这里插入图片描述
满足如下三点时强对偶性是成立的。
在这里插入图片描述

2.3 KKT约束条件

原问题具有强对偶性的充分必要条件是具有KKT条件
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值