推导SVM

1.原始问题

对于线性可分 d d d维训练样本集合 D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x m , y m ) } D=\{(\pmb{x_1}, y_1), (\pmb{x_2}, y_2), ..., (\pmb{x_m}, y_m)\} D={(x1x1x1,y1),(x2x2x2,y2),...,(xmxmxm,ym)} y i ∈ { − 1. + 1 } y_i \in\{-1.+1\} yi{1.+1},求该超平面的方程。
规定样本点不得落在超平面边界上,则由极限的定义,必然存在两个平行的、亦可划分训练集的超平面: w T x + b + 1 = 0 \pmb{w}^T\pmb{x}+b+1=0 wwwTxxx+b+1=0 w T x + b − 1 = 0 \pmb{w}^T\pmb{x}+b-1=0 wwwTxxx+b1=0不妨设证样本在上,负样本在下。则超平面: w T x + b = 0 \pmb{w}^T\pmb{x}+b=0 wwwTxxx+b=0是一个解,输出参数( w , b \pmb{w},b www,b)。
为了得到一个合理的解,我们要求前面两个超平面的距离(”margin“)尽可能远,这个距离在参考高中的”点到直线距离公式“,即: max ⁡ w , b 2 ∣ ∣ w ∣ ∣      s . t .   y i ( w T x + b ) ≥ 1 ,     i = 1 , 2 , 3 , . . . , m \max_{w,b}{\dfrac{2}{||\pmb{w}||}}\ \ \ \ s.t.\ y_i(\pmb{w}^T\pmb{x}+b)\geq1,\ \ \ i=1,2,3,...,m w,bmaxwww2    s.t. yi(wwwTxxx+b)1,   i=1,2,3,...,m
等价于 min ⁡ w , b 1 2 ∣ ∣ w ∣ ∣ 2      s . t .   1 − y i ( w T x i + b ) ≤ 0 ,     i = 1 , 2 , 3 , . . . , m \min_{w,b}{\dfrac{1}{2}||\pmb{w}||^2}\ \ \ \ s.t.\ 1-y_i(\pmb{w}^T\pmb{x}_i+b)\leq0,\ \ \ i=1,2,3,...,m w,bmin21www2    s.t. 1yi(wwwTxxxi+b)0,   i=1,2,3,...,m
需要注意的是,虽然这里的优化目标函数与b无关,但是 w 和 b \pmb{w}和b wwwb同为自变量。可看作目标函数中b的系数为0。

2.对偶问题

写出上式的拉格朗日函数 L ( w , b , α ) = 1 2 ∣ ∣ w ∣ ∣ 2 + ∑ i = 1 m α i ( 1 − y i ( w T x i + b ) ) L(\pmb{w},b,\pmb{\alpha})=\dfrac{1}{2}||\pmb{w}||^2+\sum_{i=1}^{m}\alpha_i(1-y_i(\pmb{w}^T\pmb{x}_i+b)) L(www,b,ααα)=21www2+i=1mαi(1yi(wwwTxxxi+b))其中 α i ≥ 0 \alpha_i\geq0 αi0
( d + 1 ) (d+1) (d+1)个自变量分别求偏导,并令为0:
∂ L ∂ b = ∑ i = 1 m − α i y i = 0 \dfrac{\partial L}{\partial b}=\sum_{i=1}^{m}-\alpha_iy_i=0 bL=i=1mαiyi=0
∂ L ∂ w j = w j − ∑ i = 1 m α i y i x i j = 0 \dfrac{\partial L}{\partial w_j}=w_j-\sum_{i=1}^{m}\alpha_iy_ix_{ij}=0 wjL=wji=1mαiyixij=0
把偏导数的结果带回原拉格朗日函数,消去 w \pmb{w} www b b b:
L ( w , b , α ) = 1 2 ∣ ∣ w ∣ ∣ 2 + ∑ i = 1 m α i ( 1 − y i ( w T x i + b ) ) = ∑ i = 1 m α i + 1 2 ∣ ∣ w ∣ ∣ 2 − w T ∑ i = 1 m α i y i x i = ∑ i = 1 m α i − 1 2 ∣ ∣ w ∣ ∣ 2 = ∑ i = 1 m α i − 1 2 ∑ i = 1 m ∑ j = 1 m α i α j y i y j x i T x j \begin{array}{} L(\pmb{w},b,\pmb{\alpha})&&=\dfrac{1}{2}||\pmb{w}||^2+\sum_{i=1}^{m}\alpha_i(1-y_i(\pmb{w}^T\pmb{x}_i+b))\\ &&=\sum_{i=1}^{m}\alpha_i+\dfrac{1}{2}||\pmb{w}||^2-\pmb{w}^T\sum_{i=1}^{m}\alpha_iy_i\pmb{x}_i\\ &&=\sum_{i=1}^{m}\alpha_i-\dfrac{1}{2}||\pmb{w}||^2\\ &&=\sum_{i=1}^{m}\alpha_i-\dfrac{1}{2}\sum_{i=1}^{m}\sum_{j=1}^{m}\alpha_i\alpha_jy_iy_j\pmb{x}_i^T\pmb{x}_j \end{array} L(www,b,ααα)=21www2+i=1mαi(1yi(wwwTxxxi+b))=i=1mαi+21www2wwwTi=1mαiyixxxi=i=1mαi21www2=i=1mαi21i=1mj=1mαiαjyiyjxxxiTxxxj
得到原问题的对偶问题:优化
max ⁡ α L ( α ) = ∑ i = 1 m α i − 1 2 ∑ i = 1 m ∑ j = 1 m α i α j y i y j x i T x j , \max_{\pmb{\alpha}}{L(\pmb{\alpha})}=\sum_{i=1}^{m}\alpha_i-\dfrac{1}{2}\sum_{i=1}^{m}\sum_{j=1}^{m}\alpha_i\alpha_jy_iy_j\pmb{x}_i^T\pmb{x}_j, αααmaxL(ααα)=i=1mαi21i=1mj=1mαiαjyiyjxxxiTxxxj,
s . t . ∑ i = 1 m α i y i = 0 , α i ≥ 0 \begin{array}{} s.t.\sum_{i=1}^{m}\alpha_iy_i&=0,\\ \alpha_i&\geq0\\ \end{array} s.t.i=1mαiyiαi=0,0
该优化满足KKT条件:
{ α i ≥ 0 1 − y i f ( x i ) ≤ 0 α i ( 1 − y i f ( x i ) ) = 0 \left\{ \begin{array}{rcl} \alpha_i\geq0\\ 1-y_if(\pmb{x}_i)\leq0\\ \alpha_i(1-y_if(\pmb{x}_i))=0\\ \end{array} \right. αi01yif(xxxi)0αi(1yif(xxxi))=0
对于该式的形象解释参见 https://zhuanlan.zhihu.com/p/24638007
对于最原始的线性可分问题的解释到此为止。下面讨论数据线性不可分的情形。主要包括两条线——核函数映射到高维空间使得数据线性可分,或借助软间隔使得线性不可分的效应影响到最小。

3.最大化软间隔

西瓜书的思路是对于一个线性不可分的数据集,先想办法用线性可分的办法来处理,所以先介绍了核方法。但是对于一个线性不可分数据集,我们最直观的想法是“如何忽略个别点的影响,学得一个大体上可以接受的线性分类器”。所以这里先介绍最大化软间隔的方法。
在这里,我们允许某些样本不满足约束   y i ( w T x + b ) ≥ 1 \ y_i(\pmb{w}^T\pmb{x}+b)\geq1  yi(wwwTxxx+b)1。西瓜书先引入loss并选取hinge loss,最后泛化为松弛变量。而此文直接引入松弛变量 ξ i ≥ 0 \xi_i\geq0 ξi0,则原约束放松,改写为 y i ( w T x + b ) ≥ 1 − ξ i ,     i = 1 , 2 , 3 , . . . , m y_i(\pmb{w}^T\pmb{x}+b)\geq1-\xi_i,\ \ \ i=1,2,3,...,m yi(wwwTxxx+b)1ξi,   i=1,2,3,...,m,同时改写优化的目标函数,原问题转化为:
min ⁡ w , b 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 m ξ i s . t .   1 − y i ( w T x i + b ) − ξ i ≤ 0 , − ξ i ≤ 0 , i = 1 , 2 , 3 , . . . , m \begin{array}{rcl} \min_{w,b}{\dfrac{1}{2}||\pmb{w}||^2}+C\sum_{i=1}^{m}\xi_i\\ s.t.\ 1-y_i(\pmb{w}^T\pmb{x}_i+b)-\xi_i\leq0,\\ -\xi_i\leq0,&i=1,2,3,...,m\\ \end{array} minw,b21www2+Ci=1mξis.t. 1yi(wwwTxxxi+b)ξi0,ξi0,i=1,2,3,...,m
其中 C C C为选定的常数。
注:此时若 ξ i &lt; 1 \xi_i&lt;1 ξi<1,则该样本仍可被分类正确,只是距离分类边界足够近而不够鲁棒。若 ξ i &gt; 1 \xi_i&gt;1 ξi>1,则意味着允许错误样本的出现。如果 ξ i = + ∞ \xi_i=+\infty ξi=+,则意味着没有约束,任意的超平面均符合条件。
目标函数的拉格朗日函数为:
L ( w , b , α , ξ , μ ) = 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 m ξ i + ∑ i = 1 m α i ( 1 − y i ( w T x i + b ) − ξ i ) + ∑ i = 1 m − μ i ξ i L(\pmb{w},b,\pmb{\alpha},\pmb{\xi},\pmb{\mu})=\dfrac{1}{2}||\pmb{w}||^2+C\sum_{i=1}^{m}\xi_i+\sum_{i=1}^{m}\alpha_i(1-y_i(\pmb{w}^T\pmb{x}_i+b)-\xi_i)+\sum_{i=1}^{m}-\mu_i\xi_i L(www,b,ααα,ξξξ,μμμ)=21www2+Ci=1mξi+i=1mαi(1yi(wwwTxxxi+b)ξi)+i=1mμiξi
对上述(d+m+1)个自变量求偏导,并令为0:
∂ L ∂ b = ∑ i = 1 m − α i y i = 0 \dfrac{\partial L}{\partial b}=\sum_{i=1}^{m}-\alpha_iy_i=0 bL=i=1mαiyi=0
∂ L ∂ w j = w j − ∑ i = 1 m α i y i x i j = 0 \dfrac{\partial L}{\partial w_j}=w_j-\sum_{i=1}^{m}\alpha_iy_ix_{ij}=0 wjL=wji=1mαiyixij=0
∂ L ∂ ξ i = C − α i − μ i = 0 \dfrac{\partial L}{\partial \xi_i}=C-\alpha_i-\mu_i=0 ξiL=Cαiμi=0
其中 i i i表示样本下标, j j j表示维度下标。
化简结果带回原目标函数,得到相同的对偶问题目标函数:
max ⁡ α , α L ( α , μ ) = ∑ i = 1 m α i − 1 2 ∑ i = 1 m ∑ j = 1 m α i α j y i y j x i T x j , \max_{\pmb{\alpha},\pmb{\alpha}}{L(\pmb{\alpha},\pmb{\mu})}=\sum_{i=1}^{m}\alpha_i-\dfrac{1}{2}\sum_{i=1}^{m}\sum_{j=1}^{m}\alpha_i\alpha_jy_iy_j\pmb{x}_i^T\pmb{x}_j, ααα,αααmaxL(ααα,μμμ)=i=1mαi21i=1mj=1mαiαjyiyjxxxiTxxxj,
s . t . ∑ i = 1 m α i y i = 0 , C ≥ α i ≥ 0 \begin{array}{} s.t.\sum_{i=1}^{m}\alpha_iy_i=0,\\ C\geq\alpha_i\geq0\\ \end{array} s.t.i=1mαiyi=0,Cαi0
满足KKT条件:
{ α i ≥ 0 , μ i ≥ 0 1 − y i f ( x i ) − ξ i ≤ 0 − ξ i ≤ 0 α i ( 1 − y i f ( x i ) − ξ i ) = 0 − μ i ξ i = 0 \left\{ \begin{array}{rcl} \alpha_i\geq0,\mu_i\geq0\\ 1-y_if(\pmb{x}_i)-\xi_i\leq0\\ -\xi_i\leq0\\ \alpha_i(1-y_if(\pmb{x}_i)-\xi_i)=0\\ -\mu_i\xi_i=0 \end{array} \right. αi0,μi01yif(xxxi)ξi0ξi0αi(1yif(xxxi)ξi)=0μiξi=0
可以看到除了对偶变量的约束之外,以上两个优化问题的形式是极其相似的,也都能用SMO算法进行求解。
观察KKT条件:
{ ξ i ≥ 1 − y i f ( x i ) ξ i ≥ 0 \left\{ \begin{array}{rcl} \xi_i\geq1-y_if(\pmb{x}_i)\\ \xi_i\geq0\\ \end{array} \right. {ξi1yif(xxxi)ξi0
hinge loss出现了!!!: l h i n g e ( z ) = m a x ( 0 , 1 − z ) l_{hinge}(z)=max(0,1-z) lhinge(z)=max(0,1z)

4.核方法

待续

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值