SVM

一、SVM

SVM可概括为:间隔、对偶、核方法。

1、数据

D a t a = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . ( x N , y N ) } Data=\{(x_1,y_1),(x_2,y_2),...(x_N,y_N)\} Data={(x1,y1),(x2,y2),...(xN,yN)},两分类问题。

2、思想

最大间隔分类器:可能有多个分类器,寻找使得间隔最大的分类器。

3、模型

硬分类: y = s g n ( w T x + b ) y=sgn(w^Tx+b) y=sgn(wTx+b),为判别函数模型。
总体思想:
如何表示间隔 ⇒ \Rightarrow 间隔 ⇒ \Rightarrow 目标 m a x    m a r g i n , s . t    y i ( w T x i + b ) > 0 , i = 1 , 2 , . . . , N max~~ margin,s.t~~y_i(w^Tx_i+b)>0,i=1,2,...,N max  margin,s.t  yi(wTxi+b)>0,i=1,2,...,N
⇒   h o w   t o   d e f i n e   m a r g i n : ⇒   m a r g i n ( w , b ) = m i n i = 1 , 2 , . . . , N   d i s t a n c e ( w , b , x i )                                = m i n   1 ∣ ∣ w ∣ ∣ 2 ∣ w T x i + b ∣                                = m i n   1 ∣ ∣ w ∣ ∣ 2 y i ( w T x i + b ) 可 理 解 为 m a r g i n 为 样 本 点 到 分 类 面 中 的 最 小 的 距 离 ⇒   m a x   m a r g i n = m a x   m i n i = 1 , 2 , . . , N 1 ∣ ∣ w ∣ ∣ 2 y i ( w T x i + b ) \Rightarrow~how~to~define~margin:\\\Rightarrow~margin(w,b)=\underset{i=1,2,...,N~}{min}distance(w,b,x_i)\\~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=min~\frac{1}{||w||_2}|w^Tx_i+b|\\~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=min~\frac{1}{||w||_2}y_i(w^Tx_i+b)\\可理解为margin为样本点到分类面中的最小的距离\\\Rightarrow~max~margin=max~\underset{i=1,2,..,N}{min}\frac{1}{||w||_2}y_i(w^Tx_i+b)  how to define margin: margin(w,b)=i=1,2,...,N mindistance(w,b,xi)                              =min w21wTxi+b                              =min w21yi(wTxi+b)margin max margin=max i=1,2,..,Nminw21yi(wTxi+b)

因 为 y i ( w T x i + b ) > 0 , 则 存 在 r > 0   s . t   y i ( w T x i + b ) = r 因为y_i(w^Tx_i+b)>0,则存在r>0~s.t~y_i(w^Tx_i+b)=r yi(wTxi+b)>0,r>0 s.t yi(wTxi+b)=r

⇒ 因 为 w 和 b 可 等 比 例 缩 放 \Rightarrow因为w和b可等比例缩放 wb

⇒ 即 系 数 不 影 响 \Rightarrow即系数不影响

⇒ 所 以 总 有 w , b   s . t   y i ( w T x i + b ) = 1 成 立 \Rightarrow所以总有w,b~s.t~y_i(w^Tx_i+b)=1成立 w,b s.t yi(wTxi+b)=1

⇒ 即 m a r g i n 上 的 点 s . t   y i ( w T x i + b ) = 1 , 从 几 何 看 如 图 : \Rightarrow即margin上的点s.t~y_i(w^Tx_i+b)=1,从几何看如图: margins.t yi(wTxi+b)=1

SVM间隔 所 以 m a x   m a r g i n = m a x   m i n 1 ∣ ∣ w ∣ ∣ 2 y i ( w T x i + b ) ⇒ = m a x 2 ∣ ∣ w ∣ ∣ 2 ⇒ = m i n 1 2 ∣ ∣ w ∣ ∣ 2 ⇒ 一 般 习 惯 进 行 求 M i n , 因 为 很 多 规 划 问 题 的 标 准 型 为 m i n , 使 用 M i n , 则 很 多 方 法 可 以 直 接 使 用 。 所以max~margin=max~min\frac{1}{||w||^2}y_i(w^Tx_i+b)\\\Rightarrow=max\frac{2}{||w||_2}\\\Rightarrow=min\frac{1}{2}{||w||_2}\\\Rightarrow一般习惯进行求Min,因为很多规划问题的标准型为min,\\使用Min,则很多方法可以直接使用。 max margin=max minw21yi(wTxi+b)=maxw22=min21w2Minmin使Min使

所 以 S V M : y = s g n ( w T x + b ) ⇒ w 的 求 解 ⇒   m i n   1 2 ∣ ∣ w ∣ ∣ 2 2 ⇒ s . t   y i ( w T x i + b ) ≥ 1 ⇒ 根 本 就 是 可 能 存 在 多 个 分 类 器 , 目 标 是 寻 找 到 m a r g i n   m a x 的 所以SVM:y=sgn(w^Tx+b)\\\Rightarrow w的求解\\\Rightarrow~min~\frac{1}{2}||w||_2^2\\\Rightarrow s.t~y_i(w^Tx_i+b)\ge1\\\Rightarrow根本就是可能存在多个分类器,目标是寻找到margin~max的 SVM:y=sgn(wTx+b)w min 21w22s.t yi(wTxi+b)1margin max

4、策略

目标: m i n 1 2 ∣ ∣ w ∣ ∣ 2 2 s . t    y i ( w T x i + b ) ≥ 1 min\frac{1}{2}||w||_2^2\\s.t~~y_i(w^Tx_i+b)\ge1 min21w22s.t  yi(wTxi+b)1

⇒ \Rightarrow 凸二次优化,直接求解难

⇒ \Rightarrow 低维可行,但在高维,特比是对非线性进行核方法时,空间可能是无穷维,所以不直接求解

⇒ \Rightarrow 原问题难,使用对偶

⇒ \Rightarrow 类似优化问题的一般求解思路:
有约束优化 → L a g r a n g e 乘 子 法 \xrightarrow[]{Lagrange乘子法} Lagrange 无约束的优化问题(无约束指的是对原来参数的无约束) → 强 对 偶 \xrightarrow[]{强对偶} 对偶问题 ⇒   b r i d g e \Rightarrow~bridge  bridge

4.1有约束转化为无约束

使用Lagrange乘子法:
y i ( w T x i + b ) ≥ 1 ⇒ 1 − y i ( w T x i + b ) ≤ 1 y_i(w^Tx_i+b)\ge1\Rightarrow1-y_i(w^Tx_i+b)\le1 yi(wTxi+b)11yi(wTxi+b)1

L ( w , b , α ) = 1 2 w T w + ∑ i = 1 N α i ( 1 − y i ( w T x i + b ) ) , 其 中 α i ≥ 0 \mathcal{L}(w,b,\alpha)=\frac{1}{2}w^Tw+\sum\limits_{i=1}^N\alpha_i(1-y_i(w^Tx_i+b)),其中\alpha_i\ge0 L(w,b,α)=21wTw+i=1Nαi(1yi(wTxi+b))αi0

看问题 m i n w , b   m a x w L ( w , b , α ) , α i ≥ 0 ⇔ ? m i n   1 2 w T w    s . t    y i ( w T x i + b ) ≥ 1 \underset{w,b}{min}~\underset{w}{max}\mathcal{L}(w,b,\alpha),\alpha_i\ge0\xLeftrightarrow[]{?}min~\frac{1}{2}w^Tw~~s.t~~y_i(w^Tx_i+b)\ge1 w,bmin wmaxL(w,b,α)αi0? min 21wTw  s.t  yi(wTxi+b)1

判断是否等价的原因是:前者很容易写出对偶问题。

当 y i ( w T x i + b ) < 1 时 , 1 − y i ( w T x i + b ) > 0 , 则 m a x α L ( w , b , α ) = ∞ 当y_i(w^Tx_i+b)<1时,1-y_i(w^Tx_i+b)>0,则\underset{\alpha}{max}\mathcal{L}(w,b,\alpha)=\infin yi(wTxi+b)<11yi(wTxi+b)>0αmaxL(w,b,α)=

当 y i ( w T x i + b ) ≥ 1 时 , 1 − y i ( w T x i + b ) ≤ 0 , 则 m a x α L ( w , b , α ) = 1 2 w T w 当y_i(w^Tx_i+b)\ge1时,1-y_i(w^Tx_i+b)\le0,则\underset{\alpha}{max}\mathcal{L}(w,b,\alpha)=\frac{1}{2}w^Tw yi(wTxi+b)11yi(wTxi+b)0αmaxL(w,b,α)=21wTw

所 以 m i n w , b   m a x α L ( w , b , α ) = m i n w , b ( ∞ , 1 2 w T w ) = m i n w 1 2 w T w 所以\underset{w,b}{min}~\underset{\alpha}{max}\mathcal{L}(w,b,\alpha)=\underset{w,b}{min}(\infin,\frac{1}{2}w^Tw)=\underset{w}{min}\frac{1}{2}w^Tw w,bmin αmaxL(w,b,α)=w,bmin(,21wTw)=wmin21wTw
其 中 蕴 含 了 条 件 y i ( w T x I + b ) ≥ 1 。 其中蕴含了条件y_i(w^Tx_I+b)\ge1。 yi(wTxI+b)1

所以上述两个问题时等价的,因此将有约束的问题转化为无约束问题。

4.2对偶

此时转化为无约束问题仍然是对w,b求解,难 ⇒ \Rightarrow 对偶问题。
m i n w , b   m a x L ( w , b , α ) α                        的 对 偶 问 题 为 : m a x α   m i n w , b L ( w , b , α ) \underset{w,b}{min}~\underset{\alpha~~~~~~~~~~~~~~~~~~~~~~}{max\mathcal{L(w,b,\alpha)}}的对偶问题为:\underset{\alpha}{max}~\underset{w,b}{min}\mathcal{L}(w,b,\alpha) w,bmin α                      maxL(w,b,α)αmax w,bminL(w,b,α)

因为线性约束下的凸二次优化的对偶问题为强队偶,所以上述对偶问题的解就是原问题的解。

4.3求对偶问题

因为原问题是凸二次优化问题,所以该对偶问题为强对偶问题,所以KKT条件为充要条件,即直接使导数为0求得的解为全局最优解,并不是局部最优解。
对偶问题为: m a x α   m i n w , b   L ( w , b , α ) = 1 2 w T w + ∑ i = 1 N α i ( 1 − y i ( w T x i + b ) ) \underset{\alpha}{max}~\underset{w,b}{min}~\mathcal{L}(w,b,\alpha)=\frac{1}{2}w^Tw+\sum\limits_{i=1}^N\alpha_i(1-y_i(w^Tx_i+b)) αmax w,bmin L(w,b,α)=21wTw+i=1Nαi(1yi(wTxi+b))

首先使用KKT条件求解 m i n w , b L ( w , b , α ) ⇒ ∂ L ( w , b , α ) ∂ w = − ∑ i = 1 N α i y i = 0 ⇒ ∑ i = 1 N α i y i = 0 ⇒ ∂ L ( w , b , α ) ∂ w = w − ∑ i = 1 N α i x i y i = 0 ⇒ w ∗ = ∑ i = 1 N α i x i y i \underset{w,b}{min}\mathcal{L}(w,b,\alpha)\\\Rightarrow\frac{\partial{\mathcal{L(w,b,\alpha)}}}{\partial{w}}=-\sum\limits_{i=1}^N\alpha_iy_i=0\Rightarrow\sum\limits_{i=1}^N\alpha_iy_i=0\\\Rightarrow\frac{\partial{\mathcal{L}(w,b,\alpha)}}{\partial{w}}=w-\sum\limits_{i=1}^N\alpha_ix_iy_i=0\Rightarrow w^*=\sum\limits_{i=1}^N\alpha_ix_iy_i w,bminL(w,b,α)wL(w,b,α)=i=1Nαiyi=0i=1Nαiyi=0wL(w,b,α)=wi=1Nαixiyi=0w=i=1Nαixiyi
将上述结果带入 L ( w , b , α ) 中 得 到 : ⇒ L ( α ) = − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j x i T x j + ∑ i = 1 N α i                              s . t    α i ≥ 0 \mathcal{L}(w,b,\alpha)中得到:\\\Rightarrow\mathcal{L}(\alpha)=-\frac{1}{2}\sum\limits_{i=1}^N\sum\limits_{j=1}^N\alpha_i\alpha_jy_iy_jx_i^Tx_j+\sum\limits_{i=1}^N\alpha_i\\~~~~~~~~~~~~~~~~~~~~~~~~~~~~s.t~~\alpha_i\ge0 L(w,b,α)L(α)=21i=1Nj=1NαiαjyiyjxiTxj+i=1Nαi                            s.t  αi0
问题转化为:
m a x α L ( α ) , s . t    α i ≥ 0 \underset{\alpha}{max}\mathcal{L}(\alpha),s.t~~\alpha_i\ge0 αmaxL(α),s.t  αi0

再根据互补松弛条件:
α i ( 1 − y i ( w T x i + b ) ) = 0 { y i ( w T x i + b ) > 1 ⇒ α i = 0 y i ( w T x i + b ) = 1 ⇒ α i ≥ 0 \alpha_i(1-y_i(w^Tx_i+b))=0\left\{\begin{array}{l}y_i(w^Tx_i+b)>1\Rightarrow\alpha_i=0\\y_i(w^Tx_i+b)=1\Rightarrow\alpha_i\ge0\end{array}\right. αi(1yi(wTxi+b))=0{yi(wTxi+b)>1αi=0yi(wTxi+b)=1αi0
找到某样本 x k x_k xk α k ≠ 0 , \alpha_k\ne0, αk=0 y k ( w T x k + b ) = 1 ⇒ b = y k − w T x k y_k(w^Tx_k+b)=1\Rightarrow b=y_k-w^Tx_k yk(wTxk+b)=1b=ykwTxk
因为 w ∗ = ∑ i = 1 N α i y i x i , 所 以 w 只 是 由 α i ≠ 0 w^*=\sum\limits_{i=1}^N\alpha_iy_ix_i,所以w只是由\alpha_i\ne0 w=i=1Nαiyixiwαi=0的样本组成,称这些样本为支持向量。

5、算法

(1)求解问题 m a x α − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j x i T x j + ∑ i = 1 N α i                                     s . t     α i ≥ 0                                      ∑ i = 1 N α i y i = 0 \underset{\alpha}{max}-\frac{1}{2}\sum\limits_{i=1}^N\sum\limits_{j=1}^N\alpha_i\alpha_jy_iy_jx_i^Tx_j+\sum\limits_{i=1}^N\alpha_i\\~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~s.t~~~\alpha_i\ge0\\~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\sum\limits_{i=1}^N\alpha_iy_i=0 αmax21i=1Nj=1NαiαjyiyjxiTxj+i=1Nαi                                   s.t   αi0                                    i=1Nαiyi=0
(2) w ∗ = ∑ i = 1 N α i x i y i , b = y k − w ∗ x k = y k − ∑ i = 1 N α i x i y i x k w^*=\sum\limits_{i=1}^N\alpha_ix_iy_i,b=y_k-w^*x_k=y_k-\sum\limits_{i=1}^N\alpha_ix_iy_ix_k w=i=1Nαixiyi,b=ykwxk=yki=1Nαixiyixk

二、soft SVM

1、soft SVM

思想:因为数据有噪声,所以不需要严格分类,soft svm即允许一点点错误,从loss function看:
l o s s f u n c t i o n = ∑ i = 1 N I ( y i ( w T x i + b ) ) < 1 , 不 连 续 ⇒ l o s s   f u n c t i o n 为 距 离 ⇒ l o s s f u n c t i o n = { i f   y i ( w T x i + b ) ≥ 1 ⇒   l o s s = 0 i f   y i ( w T x i + b ) < 1 ⇒   l o s s = 1 − y i ( w T x i + b ) loss function=\sum\limits_{i=1}^NI(y_i(w^Tx_i+b))<1,不连续\\\Rightarrow loss~function为距离\\\Rightarrow loss function=\left\{\begin{array}{l}if~y_i(w^Tx_i+b)\ge1\Rightarrow~loss=0\\if~y_i(w^Tx_i+b)<1\Rightarrow~loss=1-y_i(w^Tx_i+b)\end{array}\right. lossfunction=i=1NI(yi(wTxi+b))<1loss functionlossfunction={if yi(wTxi+b)1 loss=0if yi(wTxi+b)<1 loss=1yi(wTxi+b)

⇒ h i n g e   l o s s   f u n c t i o n ⇒ 则 ξ i = 1 − y i ( w T x i + b ) ⇒ s o f t   S V M ⇒   m i n   1 2 w T w + C ∑ i = 1 N ξ i ( C ≥ 0 )           s . t   y i ( w T x i + b ) ≥ 1 − ξ i                                   ξ i ≥ 0 \Rightarrow hinge~loss~function\\\Rightarrow则\xi_i=1-y_i(w^Tx_i+b)\\\Rightarrow soft~SVM\\\Rightarrow~min~\frac{1}{2}w^Tw+C\sum\limits_{i=1}^N\xi_i(C\ge0)\\~~~~~~~~~s.t~y_i(w^Tx_i+b)\ge1-\xi_i\\~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\xi_i\ge0 hinge loss functionξi=1yi(wTxi+b)soft SVM min 21wTw+Ci=1Nξi(C0)         s.t yi(wTxi+b)1ξi                                 ξi0

⇒ 对 偶 问 题 ⇒   m a x   − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j x i T x j + ∑ i = 1 N α i                 s . t ∑ i = 1 N α i y i = 0 ( K K T , 对 b 求 导 )                              α i , β i ≥ 0 ( L a g r a n g e 乘 子 法 系 数 要 求 )                           α i + β i = C ( K K T , 对 ξ i 求 导 ) \Rightarrow对偶问题\\\Rightarrow~max~-\frac{1}{2}\sum\limits_{i=1}^N\sum\limits_{j=1}^N\alpha_i\alpha_jy_iy_jx_i^Tx_j+\sum\limits_{i=1}^N\alpha_i\\~~~~~~~~~~~~~~~s.t\sum_{i=1}^N\alpha_iy_i=0(KKT,对b求导)\\~~~~~~~~~~~~~~~~~~~~~~~~~~~~\alpha_i,\beta_i\ge0(Lagrange乘子法系数要求)\\~~~~~~~~~~~~~~~~~~~~~~~~~\alpha_i+\beta_i=C(KKT,对\xi_i求导)  max 21i=1Nj=1NαiαjyiyjxiTxj+i=1Nαi               s.ti=1Nαiyi=0(KKTb)                            αi,βi0(Lagrange)                         αi+βi=C(KKT,ξi)

从 几 何 理 解 ξ i ( 这 里 考 虑 正 样 本 , 负 样 本 类 似 ) : 从几何理解\xi_i(这里考虑正样本,负样本类似): ξi():

点 x i 到 直 线 w T x + b = 1 的 距 离 d 为 : ∣ w T x i + b − 1 ∣ w 点x_i到直线w^Tx+b=1的距离d为:\frac{|w^Tx_i+b-1|}{\sqrt{w}} xi线wTx+b=1dw wTxi+b1

对 于 S V M 中 有 l o s s 的 样 本 点 y i ( w T x i + b ) < 1 , 即 d = 1 − ( w T x i + b ) w 对于SVM中有loss的样本点y_i(w^Tx_i+b)<1,即d=\frac{1-(w^Tx_i+b)}{\sqrt{w}} SVMlossyi(wTxi+b)<1d=w 1(wTxi+b)

因 为 y i ( w T x i + b ) ≥ 1 − ξ i ⇒ 1 − y i ( w T x i + b ) ≤ ξ i ⇒   d ≤ ξ i w ⇒ d 与 ξ i 成 正 比 ⇒ 可 将 ξ i 理 解 为 样 本 到 m a r g i n 的 距 离 因为y_i(w^Tx_i+b)\ge1-\xi_i\Rightarrow1-y_i(w^Tx_i+b)\le\xi_i\\\Rightarrow~d\le\frac{\xi_i}{\sqrt{w}}\\\Rightarrow d与\xi_i成正比\\\Rightarrow可将\xi_i理解为样本到margin的距离 yi(wTxi+b)1ξi1yi(wTxi+b)ξi dw ξidξiξimargin

2、softSVM vs hardSVM

hard SVMsoft SVM
思想在多个可能的解中找到s.t margin max的允许一点点错误
原问题 m i n 1 2 w T w s . t y i ( w T x i + b ) ≥ 1 min \frac{1}{2}w^Tw\\s.ty_i(w^Tx_i+b)\ge1 min21wTws.tyi(wTxi+b)1 m i n 1 2 w T w + C ∑ i = 1 N ξ i s . t   y i ( w T x i + b ) ≥ 1 − ξ i ξ i ≥ 0 min\frac{1}{2}w^Tw+C\sum\limits_{i=1}^N\xi_i\\s.t~y_i(w^Tx_i+b)\ge1-\xi_i\\\xi_i\ge0 min21wTw+Ci=1Nξis.t yi(wTxi+b)1ξiξi0
无约束问题 m i n w , b m a x α 1 2 w T w + ∑ i = 1 N α i ( 1 − y i ( w T x i + b ) ) s . t   α i ≥ 0 \underset{w,b}{min}\underset{\alpha}{max}\frac{1}{2}w^Tw+\sum\limits_{i=1}^N\alpha_i(1-y_i(w^Tx_i+b))\\s.t~\alpha_i\ge0 w,bminαmax21wTw+i=1Nαi(1yi(wTxi+b))s.t αi0 m i n w , b m a x α , β 1 2 w T w + C ∑ i = 1 N ξ i + ∑ i = 1 N α i ( 1 − ξ i − y i ( w T x i + b ) ) − ∑ i = 1 N β i ξ i α i , β ≥ 0 \underset{w,b}{min}\underset{\alpha,\beta}{max}\frac{1}{2}w^Tw+C\sum\limits_{i=1}^N\xi_i+\sum\limits_{i=1}^N\alpha_i(1-\xi_i-y_i(w^Tx_i+b))-\sum\limits_{i=1}^N\beta_i\xi_i\\\alpha_i,\beta_\ge0 w,bminα,βmax21wTw+Ci=1Nξi+i=1Nαi(1ξiyi(wTxi+b))i=1Nβiξiαi,β0
对偶问题 m a x α − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j x i T x j + ∑ i = 1 N α i s . t   α i ≥ 0 ∑ i = 1 N α i y i = 0 \underset{\alpha}{max}-\frac{1}{2}\sum\limits_{i=1}^N\sum\limits_{j=1}^N\alpha_i\alpha_jy_iy_jx_i^Tx_j+\sum\limits_{i=1}^N\alpha_i\\s.t~\alpha_i\ge0\\\sum\limits_{i=1}^N\alpha_iy_i=0 αmax21i=1Nj=1NαiαjyiyjxiTxj+i=1Nαis.t αi0i=1Nαiyi=0 m a x α , β − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j x i T x j + ∑ i = 1 N α i s . t   α i , β i ≥ 0 ( L a g r a n g e ) ∑ i = 1 N α i y i = 0 ( K K T , ∂ L ∂ b ) α i + β i = C ( K K T , ∂ L ∂ ξ ) \underset{\alpha,\beta}{max}-\frac{1}{2}\sum\limits_{i=1}^N\sum\limits_{j=1}^N\alpha_i\alpha_jy_iy_jx_i^Tx_j+\sum\limits_{i=1}^N\alpha_i\\s.t~\alpha_i,\beta_i\ge0(Lagrange)\\\sum\limits_{i=1}^N\alpha_iy_i=0(KKT,\frac{\partial{L}}{\partial{b}})\\\alpha_i+\beta_i=C(KKT,\frac{\partial{L}}{\partial{\xi}}) α,βmax21i=1Nj=1NαiαjyiyjxiTxj+i=1Nαis.t αi,βi0(Lagrange)i=1Nαiyi=0(KKT,bL)αi+βi=C(KKT,ξL)
问题求解 w ∗ = ∑ i = 1 N α i y i x i b = y k − ∑ i = 1 N α i y i x i x k w^*=\sum\limits_{i=1}^N\alpha_iy_ix_i\\b=y_k-\sum\limits_{i=1}^N\alpha_iy_ix_ix_k w=i=1Nαiyixib=yki=1Nαiyixixk w ∗ = ∑ i = 1 N α i y i x i 0 < α k < C ⇒ b = y k − ∑ i = 1 N α i y i x i x k w^*=\sum\limits_{i=1}^N\alpha_iy_ix_i\\0<\alpha_k<C\Rightarrow b=y_k-\sum\limits_{i=1}^N\alpha_iy_ix_ix_k w=i=1Nαiyixi0<αk<Cb=yki=1Nαiyixixk
几何解释在这里插入图片描述在这里插入图片描述各标号的意义:(1): y i ( w T x i + b ) > 1 , l o s s = 0 ⇒ ξ i = 0 , α i = 0 ⇒ β i = C ( 2 ) : y i ( w T x i + b ) = 1 , l o s s = 0 ⇒ ξ i = 0 , α i > 0 ⇒ β i > 0 ⇒ 0 < α i < C ( s u p p o r t   v e c t o r ) ( 3 ) : 0 < y i ( w T x i + b ) < 1 , l o s s > 0 ⇒ 1 > ξ i > 0 ⇒ β i = 0 ⇒ α i = C ( 4 ) ( 5 ) : y i ( w T x i + b ) < 0 , l o s s > 1 ⇒ ξ i > 1 ⇒ β i = 0 ⇒ α i = C s o f t   S V M 中 ξ i 为 L o s s , 可 理 解 为 1 − y i ( w T x i + b ) y_i(w^Tx_i+b)>1,loss=0\Rightarrow\xi_i=0,\alpha_i=0\\\Rightarrow\beta_i=C\\(2):y_i(w^Tx_i+b)=1,loss=0\Rightarrow\xi_i=0,\alpha_i>0\\\Rightarrow\beta_i>0\\\Rightarrow0<\alpha_i<C(support~vector)\\(3):0<y_i(w^Tx_i+b)<1,loss>0\\\Rightarrow1>\xi_i>0\\\Rightarrow\beta_i=0\\\Rightarrow\alpha_i=C\\(4)(5):y_i(w^Tx_i+b)<0,loss>1\\\Rightarrow\xi_i>1\\\Rightarrow\beta_i=0\\\Rightarrow\alpha_i=C\\soft~SVM中\xi_i为Loss,可理解为1-y_i(w^Tx_i+b) yi(wTxi+b)>1,loss=0ξi=0,αi=0βi=C(2):yi(wTxi+b)=1,loss=0ξi=0,αi>0βi>00<αi<C(support vector)(3):0<yi(wTxi+b)<1,loss>01>ξi>0βi=0αi=C(4)(5):yi(wTxi+b)<0,loss>1ξi>1βi=0αi=Csoft SVMξiLoss,1yi(wTxi+b)

3、C & margin大小

3.1从margin与loss的关系看

margin越大,分得越严格,越容易产生loss。
(1) C 小 ⇒ 大 m a r g i n ⇒ 小 C ⇒ ξ i 大 , 即 可 以 忍 受 较 大 的 l o s s , 即 可 以 分 得 严 格 些 也 行 , 即 m a r g i n 要 大 。 C小\Rightarrow大margin\\\Rightarrow小C\\\Rightarrow\xi_i大,即可以忍受较大的loss,即可以分得严格些也行,即margin要大。 CmarginCξilossmargin
(2) C 大 ⇒ 小 m a r g i n ⇒ 大 C ⇒ ξ 小 , 即 可 以 忍 受 的 l o s s 小 , 分 得 松 一 些 , m a r g i n 小 。 C大\Rightarrow小margin\\\Rightarrow大C\\\Rightarrow\xi_小,即可以忍受的loss小,分得松一些,margin小。 CmarginCξlossmargin

3.2从几何看

从几何看,若分类面为 y ( w T x + b ) = 1 − ξ ⇒ m a r g i n , 两 线 = { w T x + b = 1 − ξ w T x + b = − ( 1 − ξ ) ⇒ m a r g i n = ∣ 2 − 2 ξ ∣ w ⇒ 因 为 ξ > 0 , 即 可 取 ξ > 1 ⇒ { C 大 , ξ 小 , 则 可 能 ξ < 1 , 则 m a r g i n 小 C 小 , ξ 大 , 则 可 能 ξ > 1 , 则 m a r g i n 大 y(w^Tx+b)=1-\xi\\\Rightarrow margin,两线=\left\{\begin{array}{l}w^Tx+b=1-\xi\\w^Tx+b=-(1-\xi)\end{array}\right.\\\Rightarrow margin=\frac{|2-2\xi|}{\sqrt{w}}\\\Rightarrow因为\xi>0,即可取\xi>1\\\Rightarrow\left\{\begin{array}{l}C大,\xi小,则可能\xi<1,则margin小\\C小,\xi大,则可能\xi>1,则margin大\end{array}\right. y(wTx+b)=1ξmargin,线={wTx+b=1ξwTx+b=(1ξ)margin=w 22ξξ>0ξ>1{C,ξξ<1marginC,ξξ>1margin

三、核方法

(1)非线性带来高维转换。
(2)对偶带来内积。
核函数(计算角度): K ( x , y ) = < ϕ ( x ) , ϕ ( y ) > K(x,y)=<\phi(x),\phi(y)> K(x,y)=<ϕ(x),ϕ(y)>
核方法(思想角度): 不 用 求 具 体 ϕ , 使 用 K ( x , y ) 即 可 不用求具体\phi,使用K(x,y)即可 ϕ使K(x,y)
核方法的关键概念:核函数和正定核。

1、核函数

K : X × X ∣ → R , ∀ x , z ∈ X 则 K ( x , z ) 为 核 函 数 , 本 质 为 一 个 二 元 变 量 的 函 数 。 K:\mathcal{X}\times\mathcal{X}|\rightarrow\mathcal{R},\forall x,z\in\mathcal{X}\\则K(x,z)为核函数,本质为一个二元变量的函数。 K:X×XR,x,zXK(x,z)

2、正定核

2.1基本定义

d e f i n a t i o n 1 : K : X × X ∣ → R , ∀ x , z ∈ X , 有 K ( x , z ) , 即 K 为 核 函 数 。 如 果 ∃ ϕ : X ∣ → R , ϕ ∈ H ( h i l l b e r t   s p a c e ) , s . t   K ( x , z ) = < ϕ ( x ) , ϕ ( z ) > 则 称 K ( x , z ) 为 正 定 核 函 数 。 defination1:K:\mathcal{X}\times\mathcal{X}|\rightarrow\mathcal{R},\forall x,z\in\mathcal{X},有K(x,z),即K为核函数。\\如果\exists\phi:\mathcal{X}|\rightarrow\mathcal{R},\phi\in\mathcal{H}(hillbert ~space),s.t~K(x,z)=<\phi(x),\phi(z)>\\则称K(x,z)为正定核函数。 defination1:K:X×XR,x,zX,K(x,z)Kϕ:XR,ϕH(hillbert space),s.t K(x,z)=<ϕ(x),ϕ(z)>K(x,z)
此为正定核的本质定义,需要找到映射 ϕ \phi ϕ

2.2计算简便定义

d e f i n a t i o n 2 : K 为 核 函 数 , 若 K 满 足 下 述 条 件 , 则 K 为 正 定 核 : ( 1 ) 对 称 性 : K ( x , z ) = K ( z , x ) ( 2 ) 正 定 性 : ∀ N 个 元 素 , x 1 , x 2 , . . . , x N ∈ X , 其 G r a m   M a t r i x ( K = [ K ( x i , x j ) ] ) 为 半 正 定 矩 阵 defination2:K为核函数,若K满足下述条件,则K为正定核:\\(1)对称性:K(x,z)=K(z,x)\\(2)正定性:\forall N个元素,x_1,x_2,...,x_N\in\mathcal{X},其Gram~Matrix(K=[K(x_i,x_j)])为半正定矩阵 defination2:KKK1K(x,z)=K(z,x)2:N,x1,x2,...,xNX,Gram MatrixK=[K(xi,xj)]
此定义更容易实际操作。

3、补充

3.1Hilbert space

Hilbert space是完备的(即对极限封闭),可能是无线维的,被赋予内积的线性空间(满足加法、乘法等封闭性)。
内积: { 对 称 性 ⇒ < f , g > = < g , f > 正 定 性 ⇒ < f , f > ≥ 0 , 当 且 仅 当 f = 0 取 等 线 性 ⇒ < r 1 f 1 + r 2 f 2 , g > = r 1 < f 1 , g > + r 2 < f 2 , g > \left\{\begin{array}{l}对称性\Rightarrow<f,g>=<g,f>\\正定性\Rightarrow<f,f>\ge0,当且仅当f=0取等\\线性\Rightarrow<r_1f_1+r_2f_2,g>=r_1<f_1,g>+r_2<f_2,g>\end{array}\right. <f,g>=<g,f><f,f>0,f=0线<r1f1+r2f2,g>=r1<f1,g>+r2<f2,g>

3.2半正定矩阵

半正定矩阵的判定:
(1)M为半正定矩阵,则其所有特征值大于等于0。
(2)M为半正定矩阵,则 ∀ α 有 α T M α ≥ 0 \forall\alpha有\alpha^TM\alpha\ge0 ααTMα0

对核函数的分析,抓住其本质,关键为内积操作。

四、核SVM

原问题: m i n   1 2 w T w                 s . t   y i ( w T x i + b ) ≥ 1 min~\frac{1}{2}w^Tw\\~~~~~~~~~~~~~~~s.t~y_i(w^Tx_i+b)\ge1 min 21wTw               s.t yi(wTxi+b)1
对偶: m a x α ∑ i = 1 N α i − 1 2 ∑ i = 1 N ∑ i = 1 N α i α j y i y j x i T x j                               s . t   α i ≥ 0                            ∑ i = 1 N y i α i = 0 \underset{\alpha}{max}\sum\limits_{i=1}^N\alpha_i-\frac{1}{2}\sum\limits_{i=1}^N\sum\limits_{i=1}^N\alpha_i\alpha_jy_iy_jx_i^Tx_j\\~~~~~~~~~~~~~~~~~~~~~~~~~~~~~s.t~\alpha_i\ge0\\~~~~~~~~~~~~~~~~~~~~~~~~~~\sum\limits_{i=1}^Ny_i\alpha_i=0 αmaxi=1Nαi21i=1Ni=1NαiαjyiyjxiTxj                             s.t αi0                          i=1Nyiαi=0
求出 α i ⇒ w ∗ = ∑ i = 1 N α i y i x i , b = y k − ∑ i = 1 N α i y i x i x k \alpha_i\Rightarrow w^*=\sum\limits_{i=1}^N\alpha_iy_ix_i,b=y_k-\sum\limits_{i=1}^N\alpha_iy_ix_ix_k αiw=i=1Nαiyixi,b=yki=1Nαiyixixk

核SVM:
(1)得到对偶问题:
m a x α ∑ i = 1 N α i − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j K ( x i , x j )                        s . t   α i ≥ 0                     ∑ i = 1 N α i y i = 0 \underset{\alpha}{max}\sum\limits_{i=1}^N\alpha_i-\frac{1}{2}\sum\limits_{i=1}^N\sum\limits_{j=1}^N\alpha_i\alpha_jy_iy_jK(x_i,x_j)\\~~~~~~~~~~~~~~~~~~~~~~s.t~\alpha_i\ge0\\~~~~~~~~~~~~~~~~~~~\sum\limits_{i=1}^N\alpha_iy_i=0 αmaxi=1Nαi21i=1Nj=1NαiαjyiyjK(xi,xj)                      s.t αi0                   i=1Nαiyi=0
(2)求解得到 α ∗ \alpha^* α,一般使用SMO算法。
(3)根据 α ∗ \alpha^* α,得 w ∗ = ∑ i = 1 N α i y i x i , 找 到 S V , 样 本 ( x k , y k ) ⇒ b = y k − ∑ i = 1 α i y i K ( x i , x k ) w^*=\sum\limits_{i=1}^N\alpha_iy_ix_i,找到SV,样本(x_k,y_k)\Rightarrow b=y_k-\sum\limits_{i=1}\alpha_iy_iK(x_i,x_k) w=i=1Nαiyixi,SV,(xk,yk)b=yki=1αiyiK(xi,xk)
(4)得到平面 w ∗ T x + b = 0 w^{*T}x+b=0 wTx+b=0,则判别函数为: f ( x ) = s g n ( w ∗ T x + b ) f(x)=sgn(w^{*T}x+b) f(x)=sgn(wTx+b)

参数取值对SVM拟合效果的影响

SVM中的两个关键思想:
(1)线性可分时允许一点点误差 ⇒ s o f t   S V M ⇒ 参 数 C 相 当 于 正 则 化 因 子 , 平 衡 经 验 误 差 与 模 型 复 杂 度 \Rightarrow soft~SVM\\\Rightarrow参数C相当于正则化因子,平衡经验误差与模型复杂度 soft SVMC
(2)非线性可分 ⇒ 核 方 法 ⇒ 核 技 巧 ⇒ 核 函 数 ⇒ k e r n a l   f u n c t i o n 的 参 数 选 取 也 影 响 S V M 的 拟 合 效 果 \Rightarrow核方法\Rightarrow核技巧\Rightarrow核函数\Rightarrow kernal~function的参数选取也影响SVM的拟合效果 kernal functionSVM

常见的核函数:
(1)、线性核: K ( x , y ) = x ⋅ y + c K(x,y)=x\cdot y+c K(x,y)=xy+c
(2)、多项式核: K ( x , y ) = ( a x T y + c ) d K(x,y)=(ax^Ty+c)^d K(x,y)=(axTy+c)d
(3)、RBF(高斯核): K ( x , y ) = e x p ( − 1 2 σ 2 ∣ ∣ x − y ∣ ∣ 2 2 ) K(x,y)=exp(-\frac{1}{2\sigma^2}||x-y||^2_2) K(x,y)=exp(2σ21xy22)
(4)、sigmod核: K ( x , y ) = t a n h ( a x T y + c ) K(x,y)=tanh(ax^Ty+c) K(x,y)=tanh(axTy+c)

具体参数对SVM拟合的影响:

参数C

平衡经验误差与模型复杂度,C小则允许有较大经验误差,模型不复杂;C大则允许的误差小,模型复杂。
模型复杂度在线性与非线性SVM中的具体表现形式不同:

非线性线性
C取值大loss小,希望分对,经验误差小,可能过拟合希望loss小,即margin小,尽可能所有分对
C取值小loss大,经验误差大,分类超平面光滑,可能迁拟合loss大,即margin大,有一些在margin里,有loss

核超参数的影响

R B F : K ( x , y ) = e x p ( − ∣ ∣ x − y ∣ ∣ 2 2 2 σ 2 ) = e x p ( − γ ∣ ∣ x − y ∣ ∣ 2 2 ) , 其 中 γ = 1 2 σ 2 RBF:K(x,y)=exp(-\frac{||x-y||^2_2}{2\sigma^2})=exp(-\gamma||x-y||_2^2),其中\gamma=\frac{1}{2\sigma^2} RBF:K(x,y)=exp(2σ2xy22)=exp(γxy22),γ=2σ21
σ 2 即 高 斯 分 布 的 方 差 , 方 差 大 则 图 像 越 扁 平 , 反 之 亦 然 。 \sigma^2即高斯分布的方差,方差大则图像越扁平,反之亦然。 σ2

虽RBF为两个样本的内积,看似均值变化,但其实 K ( x , y ) K(x,y) K(x,y)中定住 y y y K ( x , y ) K(x,y) K(x,y)反映了 x x x y y y为中心的影响,其中 γ \gamma γ表示影响范围的大小:

{ γ 大 则 σ 2 小 , 图 像 越 瘦 高 , 样 本 影 响 半 径 小 γ 小 则 σ 2 大 , 图 像 越 扁 平 , 样 本 影 响 半 径 大 \left\{\begin{array}{l}\gamma大则\sigma^2小,图像越瘦高,样本影响半径小\\\gamma小则\sigma^2大,图像越扁平,样本影响半径大\end{array}\right. {γσ2γσ2

γ \gamma γ对SVM分类程度的影响:

{ γ 大 , 则 σ 2 小 , S V 的 影 响 半 径 小 , 小 到 只 能 影 响 自 己 , 过 拟 合 γ 小 , 则 σ 2 大 , S V 的 影 响 半 径 大 , 大 到 任 意 选 中 的 S V 的 影 响 区 域 包 含 整 个 训 练 集 , 可 能 欠 拟 合 , 分 类 面 光 滑 \left\{\begin{array}{l}\gamma大,则\sigma^2小,SV的影响半径小,小到只能影响自己,过拟合\\\gamma小,则\sigma^2大,SV的影响半径大,大到任意选中的SV的影响区域包含整个训练集,可能欠拟合,分类面光滑\end{array}\right. {γσ2,SVγσ2,SVSV

因此:
{ 欠 拟 合 ⇒ 增 大 γ 和 C 过 拟 合 ⇒ 减 小 γ 和 C \left\{\begin{array}{l}欠拟合\Rightarrow增大\gamma和C\\过拟合\Rightarrow减小\gamma和C\end{array}\right. {γCγC

五、SMO

SMO即次序最小化优化,是最快的二次规划算法,特别针对线性SVM和数据稀疏时性能更优,此处用于求解SVM的对偶问题。

SMO算法:
(1)、对 x i x_i xi计算 E ( x i ) = ∑ j = 1 N α j y j x j x i + b − y i E(x_i)=\sum\limits_{j=1}^N\alpha_jy_jx_jx_i+b-y_i E(xi)=j=1Nαjyjxjxi+byi

(2)、选 α 1 \alpha_1 α1,从违反KKT中选,首先考虑 0 < α i < C 0<\alpha_i<C 0<αi<C中的

(3)、选 α 2 , s . t   ∣ E 1 − E i ∣ 最 大 的 α i \alpha_2,s.t~|E_1-E_i|最大的\alpha_i α2,s.t E1Eiαi

(4)、 α 2 n e w = α 2 o l d + y 2 ( E 1 − E 2 ) η ( l a b e l + e r r o e + k e r n a l ) , η = K 11 + K 22 − 2 K 12 \alpha_2^{new}=\alpha_2^{old}+\frac{y_2(E_1-E_2)}{\eta}(label+erroe+kernal),\eta=K_{11}+K_{22}-2K_{12} α2new=α2old+ηy2(E1E2)(label+erroe+kernal),η=K11+K222K12

(5)、剪枝: y 1 α 1 + y 2 α 2 = − ∑ i = 3 N y i α i = k y_1\alpha_1+y_2\alpha_2=-\sum\limits_{i=3}^Ny_i\alpha_i=k y1α1+y2α2=i=3Nyiαi=k
在这里插入图片描述 k = y 1 α 1 o l d + y 2 α 2 o l d k=y_1\alpha_1^{old}+y_2\alpha_2^{old} k=y1α1old+y2α2old

所以 y 1 ≠ y 2 , L = m a x ( 0 , − k ) , H = m i n ( c , c − k ) y 1 = y 2 , L = m a x ( 0 , k − c ) , H = m i n ( k , c ) y_1\ne y_2,L=max(0,-k),H=min(c,c-k)\\y_1=y_2,L=max(0,k-c),H=min(k,c) y1=y2L=max(0,k),H=min(c,ck)y1=y2L=max(0,kc),H=min(k,c)

所以 α 2 n e w = { L , α 2 n e w < L α 2 n e w , L ≤ α 2 n e w ≤ H H , α 2 n e w > H \alpha_2^{new}=\left\{\begin{array}{l}L,\alpha_2^{new}<L\\\alpha_2^{new},L\le\alpha_2^{new}\le H\\H,\alpha_2^{new}>H\end{array}\right. α2new=L,α2new<Lα2new,Lα2newHH,α2new>H

(6)、根据 y 1 α 1 n e w + y 2 α 2 n e w = y 1 α 1 o l d + y 2 α 2 o l d 求 α 1 n e w y_1\alpha_1^{new}+y_2\alpha_2^{new}=y_1\alpha_1^{old}+y_2\alpha_2^{old}求\alpha_1^{new} y1α1new+y2α2new=y1α1old+y2α2oldα1new

(7)、更新b:
0 < α 1 n e w < C , 则 b n e w = y 1 − ∑ i = 3 N α i y i x i − α 1 n e w y 1 K 11 − α 2 n e w y 2 K 21 因 为 E 1 = ∑ j = 1 N α j y j K ( x 1 , x j ) + b o l d − y 1 ⇒ y 1 − ∑ i = 3 N α i y i x i = − E 1 + α 1 o l d y 1 K 11 + α 2 o l d y 2 K 21 + b o l d 0<\alpha_1^{new}<C,则b_{new}=y_1-\sum\limits_{i=3}^N\alpha_iy_ix_i-\alpha_1^{new}y_1K_{11}-\alpha_2^{new}y_2K_{21}\\因为E_1=\sum\limits_{j=1}^N\alpha_jy_jK(x_1,x_j)+b_{old}-y_1\\\Rightarrow y_1-\sum\limits_{i=3}^N\alpha_iy_ix_i=-E_1+\alpha_1^{old}y_1K_{11}+\alpha_2^{old}y_2K_{21}+b_{old} 0<α1new<C,bnew=y1i=3Nαiyixiα1newy1K11α2newy2K21E1=j=1NαjyjK(x1,xj)+boldy1y1i=3Nαiyixi=E1+α1oldy1K11+α2oldy2K21+bold

0 < α 2 n e w < C 0<\alpha_2^{new}<C 0<α2new<C,同上。

若两个都不在 ( 0 , C ) (0,C) (0,C),则 b 1 n e w b_1^{new} b1new b 2 n e w b_2^{new} b2new以及他们之间的数都满足KKT,取 b n e w = b 1 n e w + b 2 n e w 2 b_{new}=\frac{b_1^{new}+b_2^{new}}{2} bnew=2b1new+b2new

重新计算 E ( x i ) E(x_i) E(xi),进行下一轮,直到达到精度或者迭代次数。

SMO算法的 α 1 \alpha_1 α1的选择时违反KKT条件的原因是:违反KKT,说明其违反约束条件,先从 0 < α i < C 0<\alpha_i<C 0<αi<C中选择因为相应的样本为SV,其对SVM的影响大,从其开始,更快接近目标。
α 2 \alpha_2 α2 m a x ∣ E 1 − E 2 ∣ max|E_1-E_2| maxE1E2:希望优化后的 α 1 \alpha_1 α1 α 2 \alpha_2 α2尽可能多地改变,因为 ∣ E 1 − E 2 ∣ |E_1-E_2| E1E2越大,说明两者误差差别大,会使 α 1 , α 2 \alpha_1,\alpha_2 α1,α2改变很大。

fighting!
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值