SVM 支持向量机
线性可分SVM : hard margin
距离
- 函数间隔: w⋅x+b几何间隔:1||w||(w⋅x+b)
推导 模型 y=sign(wx+b)
- 超平面: w⋅x+b=0
- 函数间隔: yi(w⋅xi+b)≥margin ,
- 令margin=1,并做归一化.得margin的几何距离 1||w|| ,并使这个几何距离最大(注:||w||为L2范式)
- 可表示为以下 凸二次规划问题:
max1||w||s.t.yi(w⋅xi+b)≥1
- 等价于:
min12||w||2s.t.yi(w⋅xi+b)≥1注: ||w||2=∑i=1Kw2i,K 为特征数量
优化求解
可跳过这段, 直接看 更加一般的线性SVM模型 链接
拉格朗日乘子法
- 广义拉格朗日函数:
L(w,b,α)=12||w||2−∑i=1Nαiyi(w⋅xi+b)+∑i=1Nαi原始问题 and 对偶问题:
原始问题的解: minw,b maxα≥0 L(w,b,α)
对偶问题的解: maxα≥0 minw,b L(w,b,α)
目标函数,不等式条件函数为v凸函数,所以对偶问题的解α* ,与原始问题的解w* , b*,满足KKT条件)
KKT条件:
▽wL(w,b,α)=w−∑i=1Nαiyixi=0▽bL(w,b,α)=−∑i=1Nαiyi=0▽αL(w,b,α)=0如(3)式所示,含有α的项为0,所以偏导=0αi[yi(w⋅xi+b)−1]=0yi(w⋅xi+b)−1≥0αi≥0(1)(2)(3) 对偶互补条件(4)(5)
由(1)式得: w=∑i=1Nαiyixi 至少有一个 αj>0( αi 全为0时, w=0 不是原问题的解,所以至少有一个 αj>0 )
对于 αj>0 的那个j数据点 (xj,yj) 待入(3)式有: yj(w⋅xj+b)−1=0
(yj)2=1上式乘以yj,得到:
b=yj−w⋅xj=yj−(∑i=1Nαiyixi)⋅xj=yj−∑i=1Nαiyi(xi⋅xj)
转化为求解α问题,通过对偶问题求解 α :
先求极小 minw,bL(w,b,α) 部分:
KKT式(1),(2) 代回 L(w,b,α) 得:
minw,bL(w,b,α)=−12∑i=1N∑j=1Nαiαjyiyj(xi⋅xj)+∑i=1Nαi
再求极大 max 部分:
maxα−12∑i=1N∑j=1Nαiαjyiyj(xi⋅xj)+∑i=1Nαis.t.αi≥0,i=1,1,2,⋯N
转化为求极小
minα12∑i=1N∑j=1Nαiαjyiyj(xi⋅xj)−∑i=1Nαi
s.t.∑i=1Nαiyi=0αi≥0,i=1,2,3,⋯N
∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗
线性SVM :soft margin
∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗
线性不可分SVM : kernel trick + soft margin
∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗
........
reference:
<<统计学习方法>> 李航