支持向量机之对偶学习算法(二)
2015-08-22 10:16
330 查看
接上节
这里讲的是支持向量机的拉格朗日对偶学习算法\color{Red}{对偶学习算法}
对偶学习算法
拉格朗日对偶性问题
原问题
对偶问题
原始问题与对偶问题的关系
KKT条件
对偶学习算法接上
求解colorRedwb
线性可分支持向量机学习算法
支持向量
minw,b12||w||2\color{Red}{\underset {w,b}{min} \frac{1}{2}||w||^2}
s.t.yi(wxi+b)−1≥0,i=1,2,...,N\color{Red}{s.t. y_i(wx_i+b)-1 \geq 0,i=1,2,...,N}
需要求解的是:w,b\color{Red}{w,b}
构建拉格朗日函数(Lagrange function),设对不等式约束的拉格朗日乘子(Lagrange multiplier)是αi≥0,i=1,2,...,N\color{Red}{\alpha {_i} \geq0,i=1,2,...,N}
拉格朗日函数是:
L(w,b,α)=12||w||2−∑Ni=1αiyi(wxi+b)+∑Ni=1αi\color{Red}{L(w,b,\alpha ) = \frac{1}{2}||w||^2 - \sum_{i=1}^N\alpha {_i}y_i(wx_i+b) + \sum_{i=1}^N \alpha _{i}}
其中,α=(α1,α2,α3,...,αN)T\color{Red}{\alpha =(\alpha _1,\alpha_2,\alpha _3,...,\alpha _N)^T}为拉格朗日乘子向量。
minxϵRnf(x)\color{Red}{\underset {x\epsilon R^n}{min}f(x)}
s.t.ci(x)≤0,i=1,2,...,k\color{Red}{s.t.c_i(x) \leq0,i=1,2,...,k}
hj(x)=0,j=1,2,...,l\color{Red}{h_j(x)=0,j=1,2,...,l}
称此约束最优化问题为原始最优化问题或者原始问题.
对于广义拉格朗日函数(generalized Lagrange function):
L(x,α,β)=f(x)+∑ki=1αici(x)+∑lj=1βjhj(x)\color{Red}{L(x,\alpha,\beta ) = f(x)+\sum_{i=1}^k\alpha_ic_i(x)+\sum_{j=1}^l\beta_jh_j(x)}
这里x=(x(1),...,x(n))TϵRn,αi,βj是拉格朗日乘子,αi≥0x=(x^{(1),...,x^{(n)}})^T \epsilon R^n,\alpha_i,\beta_j是拉格朗日乘子,\alpha_i \geq0
考虑关于函数
θP(x)=maxα,β,αi≥0L(x,α,β)\color{Red}{ \theta _P(x) = \underset {\alpha,\beta,\alpha_i\geq0}{max}L(x,\alpha,\beta)}
下标PP表示原问题
对于某个违反约束条件的 xx,存在 ii使得ci(w)≻0c_i(w) \succ 0或者存在jj使得hj(w)≠0h_j(w) \neq 0,就可是θP(x)\theta_P(x)趋向于无穷大。
也就是说:
当存在ii使ci(x)≻0c_i(x) \succ0,令αi→\alpha_i \rightarrow 无穷大,其他的α==0\alpha==0.
当存在jj使得hj(x)≠0h_j(x) \neq 0 存在βj\beta_j使得 βjhj(x)→\beta_jh_j(x) \rightarrow 无情大,其他的β==0\beta==0
上面两个情况都可能使得θP(x)→\theta_P(x) \rightarrow 无穷大
若xx满足约束条件则θP(x)=f(x)\color{Red}{\theta_P(x) = f(x)}
即:
考虑极小化问题
minxθP(x)=minxmaxα,β;αi≥0L(x,α,β)\color{Red}{\underset{x}{min} \theta_P(x) = \underset{x}{min} \underset{\alpha,\beta;\alpha_i \geq0}{max}L(x,\alpha,\beta)}
minxmaxα,β;αi≥0L(x,α,β)称为广义拉格朗日函数的极小极大问题\color{Red}{ \underset{x}{min} \underset{\alpha,\beta;\alpha_i \geq0}{max}L(x,\alpha,\beta)称为广义拉格朗日函数的极小极大问题}
原始问题的最优值:p∗=minxθP(x)\color{Red}{p^*=\underset{x}{min}\theta_P(x)}
θD(α,β)=minxL(x,α,β)\color{Red}{ \theta _D(\alpha,\beta) = \underset {x}{min}L(x,\alpha,\beta)}
在考虑极大化问题:
maxα,β;αi≥0θD(α,β)=maxα,β;αi≥0minxL(x,α,β)\color{Red}{\underset{\alpha,\beta;\alpha_i \geq0}{max} \theta_D(\alpha,\beta)=\underset{\alpha,\beta;\alpha_i \geq0}{max} \underset {x}{min}L(x,\alpha,\beta)}
问题maxα,β;αi≥0minxL(x,α,β)称为广义拉格朗日函数的极大极小问题\color{Red}{\underset{\alpha,\beta;\alpha_i \geq0}{max} \underset {x}{min}L(x,\alpha,\beta)称为广义拉格朗日函数的极大极小问题}
对偶问题的最优值;d∗=maxα,β;αi≥0θD(α,β)\color{Red}{d^*=\underset{\alpha,\beta;\alpha_i \geq0}{max} \theta_D(\alpha,\beta)}
2.原始问题最优值时候的最优解也是对偶问题的最优解
▽xL(x∗,α∗,β∗)=0\color{Red}{\bigtriangledown _xL(x^*,\alpha^*,\beta^*)=0}
▽αL(x∗,α∗,β∗)=0\color{Red}{\bigtriangledown _{\alpha}L(x^*,\alpha^*,\beta^*)=0}
▽βL(x∗,α∗,β∗)=0\color{Red}{\bigtriangledown _{\beta}L(x^*,\alpha^*,\beta^*)=0}
α∗ici(x∗)=0,i=1,2,3,...,k\color{Red}{\alpha_{i}^*c_i(x^*)=0},i=1,2,3,...,k
ci(x∗)≤0,i=1,2,3,...,k\color{Red}{c_i(x^*)\leq0},i=1,2,3,...,k
α∗i≥0,i=1,2,3...,k\color{Red}{\alpha_i^* \geq 0},i=1,2,3...,k
hj(x∗)=0,j=1,2,...,l\color{Red}{h_j(x^*)=0},j=1,2,...,l
关于KKT的一个例子
更多对偶问题的连接
原始问题的对偶问题是极大极小问题:
maxαminw,bL(w,b,α)\color{Red}{\underset{\alpha}{max} \underset{w,b}{min}L(w,b,\alpha)}
先求极小化问题,再求极大化问题
(1)求minw,bL(w,b,α)\color{Red}{\underset{w,b}{min}{L(w,b,\alpha)}}
拉格朗日函数是:
L(w,b,α)=12||w||2−∑Ni=1αiyi(wxi+b)+∑Ni=1αi\color{Red}{L(w,b,\alpha ) = \frac{1}{2}||w||^2 - \sum_{i=1}^N\alpha {_i}y_i(wx_i+b) + \sum_{i=1}^N \alpha _{i}}
其中,α=(α1,α2,α3,...,αN)T\color{Red}{\alpha =(\alpha _1,\alpha_2,\alpha _3,...,\alpha _N)^T}为拉格朗日乘子向量。
将拉格朗日函数L(w,b,α){L(w,b,\alpha)}分布对w,b,αw,b,\alpha求偏导数,并令其等于0。
▽wL(w,b,α)=w−∑Ni=1αiyixi=0\color{Red}{\bigtriangledown _wL(w,b,\alpha) = w - \sum_{i=1}^N \alpha_iy_ix_i = 0 }
▽bL(w,b,α)=∑Ni=1αiyi=0\color{Red}{\bigtriangledown_bL(w,b,\alpha)=\sum_{i=1}^N\alpha_iy_i=0}
即:
w=∑Ni=1αiyixi\color{Red}{w = \sum_{i=1}^N\alpha_iy_ix_i}
∑Ni=1αiyi=0\color{Red}{\sum_{i=1}^N\alpha_iy_i=0}
将上市带入拉格朗日函数中,可得到:
L(w,b,α)=12∑Ni=1∑Nj=1αiαjyiyj<xi,xj>−∑Ni=1αiyi(<∑Nj=1αjyjxj,xi>+b)+∑Ni=1αi\color{Red}{L(w,b,\alpha) = \frac{1}{2}\sum_{i=1}^N\sum_{j=1}^N\alpha_i \alpha_j y_iy_j -\sum_{i=1}^N\alpha_iy_i(<\sum_{j=1}^N\alpha_jy_jx_j,x_i>+b)+\sum_{i=1}^N \alpha_i}
=−12∑Ni=1∑Nj=1αiαjyiyj<xi,xj>+∑Ni=1αi\color{Red}{- \frac{1}{2}\sum_{i=1}^N\sum_{j=1}^N\alpha_i \alpha_j y_iy_j+\sum_{i=1}^N\alpha_i}
说明:
1.<xi,xj>是点乘,对应元素相乘再求和,xi,xjx_i,x_j都是列向量
2.wxwx这里也是点乘的意思,结果是一个数。
(2)求minw,bL(w,b,α)\color{Red}{\underset{w,b}{min}L(w,b,\alpha)}对α\color{Red}{\alpha}的极大值
maxα−12∑Ni=1∑Nj=1αiαjyiyj<xi,xj>+∑Ni=1αi\color{Red}{\underset{\alpha}{max}- \frac{1}{2}\sum_{i=1}^N\sum_{j=1}^N\alpha_i \alpha_j y_iy_j+\sum_{i=1}^N\alpha_i}
s.t.∑Ni=1αiyi=0\color{Red}{s.t. \sum_{i=1}^N\alpha_iy_i=0}
αi≥0,i=1,2,...,N\color{Red}{\alpha_i \geq0,i=1,2,...,N}
上面的极大化问题可以转化成极小化问题:
minα12∑Ni=1∑Nj=1αiαjyiyj<xi,xj>−∑Ni=1αi\color{Red}{\underset{\alpha}{min} \frac{1}{2}\sum_{i=1}^N\sum_{j=1}^N\alpha_i \alpha_j y_iy_j-\sum_{i=1}^N\alpha_i}
s.t.∑Ni=1αiyi=0\color{Red}{s.t. \sum_{i=1}^N\alpha_iy_i=0}
αi≥0,i=1,2,...,N\color{Red}{\alpha_i \geq0,i=1,2,...,N}
满足KKT\color{Red}{KKT}条件存在最优解α∗=(α∗1,α∗2,...,α∗N)T\alpha^*=(\alpha_1^*,\alpha_2^*,...,\alpha_N^*)^T
w∗=∑Ni=1α∗iyixi\color{Red}{w^* = \sum_{i=1}^N\alpha_i^*y_ix_i}
b∗=yj−∑Ni=1α∗iyi<xi,xj>\color{Red}{b^* = y_j-\sum_{i=1}^N\alpha_i^*y_i}
证明:
KKT条件成立:
▽∗wL(w∗,b∗,α∗)=w∗−∑Ni=1α∗iyixi=0\color{Red}{\bigtriangledown _w^*L(w^*,b^*,\alpha^*) = w^* - \sum_{i=1}^N \alpha_i^*y_ix_i = 0 }
▽bL(w∗,b∗,α∗)=∑Ni=1α∗iyi=0\color{Red}{\bigtriangledown_bL(w^*,b^*,\alpha^*)=\sum_{i=1}^N\alpha_i^*y_i=0}
α∗j(yi(<w∗,xi>+b∗)−1)=0,i=1,2,...,N\color{Red}{\alpha_j^*(y_i(+b^*)-1) = 0},i=1,2,...,N
yi(<w∗,xi>+b∗)−1≥0\color{Red}{y_i(+b^*)-1 \geq 0},i=1,2,…,N
α∗i≥0\alpha_i^* \geq 0,i=1,2,…,N
得到: w∗=∑Ni=1α∗iyixi\color{Red}{w^* = \sum_{i=1}^N\alpha_i^*y_ix_i}
之前已经讲过w∗=0w^*=0不是原始问题的最优解
可知道一定存在jj使α∗j≻0\color{Red}{\alpha_j^* \succ 0}
由于α∗j(yj(<w∗,xj>+b∗)−1)=0\color{Red}{\alpha_j^*(y_j(+b^*)-1) = 0}
可知道 yj(<w∗,xj>+b∗)−1=0\color{Red}{y_j(+b^*)-1 = 0}
带入所求的w∗w^*
得到: b∗=yj−∑Ni=1α∗iyi<xi,xj>\color{Red}{b^* = y_j-\sum_{i=1}^N\alpha_i^*y_i}
分离超平面是:
∑Ni=1α∗iyi<x,xi>+b∗=0\color{Red}{\sum_{i=1}^N\alpha_i^*y_i+b^*=0}
分类决策函数:
f(x)=sign(∑Ni=1α∗iyi<x,xi>+b∗)\color{Red}{f(x) = sign(\sum_{i=1}^N\alpha_i^*y_i+b^*)}
输出:分离超平面和分类决策函数
(1)构造并求解约束最优化问题
minα12∑Ni=1∑Nj=1αiαjyiyj<xi,xj>−∑Ni=1αi\color{Red}{\underset{\alpha}{min} \frac{1}{2}\sum_{i=1}^N\sum_{j=1}^N\alpha_i \alpha_j y_iy_j-\sum_{i=1}^N\alpha_i}
s.t.∑Ni=1αiyi=0\color{Red}{s.t. \sum_{i=1}^N\alpha_iy_i=0}
αi≥0,i=1,2,...,N\color{Red}{\alpha_i \geq0,i=1,2,...,N}
求得最优解是:α∗=(α∗1,α∗2,α∗3,...,α∗N)T\color{Red}{\alpha^*=(\alpha_1^*,\alpha_2^*,\alpha_3^*,...,\alpha_N^*)^T}
(2)求w∗,b∗w^*,b^*
w∗=∑Ni=1α∗iyixi\color{Red}{w^* = \sum_{i=1}^N\alpha_i^*y_ix_i}
b∗=yj−∑Ni=1α∗iyi<xi,xj>\color{Red}{b^* = y_j-\sum_{i=1}^N\alpha_i^*y_i}
(3)计算分离超平面
分离超平面是:
<w∗,x>+b=0\color{Red}{+b=0}
分类决策函数:
f(x)=sign(<w∗,x>+b=0)\color{Red}{f(x) = sign(+b=0)}
说明:
1.上面计算的w∗,b∗w^*,b^*只依赖于训练集中的α∗i≻0的样本点(xi,yi)\color{Red}{\alpha_i^*\succ0的样本点(x_i,y_i)}
2.对α∗i≻0所对应的样本点称为支持向量\color{Red}{\alpha_i^* \succ 0所对应的样本点称为支持向量}
对α∗i≻0\alpha_i^* \succ0时候,根据KKT条件可知道
yi(<w∗,xi>+b∗)−1=0\color{Red}{y_i(+b^*)-1=0}
即:
<w∗,xi>+b∗=±1\color{Red}{+b^*= \pm 1}
如上图所示:<w∗,xi>+b∗=±1\color{Red}{+b^*= \pm 1} 是间隔的边界,此时的xix_i就是支持向量点
这里讲的是支持向量机的拉格朗日对偶学习算法\color{Red}{对偶学习算法}
对偶学习算法
拉格朗日对偶性问题
原问题
对偶问题
原始问题与对偶问题的关系
KKT条件
对偶学习算法接上
求解colorRedwb
线性可分支持向量机学习算法
支持向量
对偶学习算法
上节的问题是:minw,b12||w||2\color{Red}{\underset {w,b}{min} \frac{1}{2}||w||^2}
s.t.yi(wxi+b)−1≥0,i=1,2,...,N\color{Red}{s.t. y_i(wx_i+b)-1 \geq 0,i=1,2,...,N}
需要求解的是:w,b\color{Red}{w,b}
构建拉格朗日函数(Lagrange function),设对不等式约束的拉格朗日乘子(Lagrange multiplier)是αi≥0,i=1,2,...,N\color{Red}{\alpha {_i} \geq0,i=1,2,...,N}
拉格朗日函数是:
L(w,b,α)=12||w||2−∑Ni=1αiyi(wxi+b)+∑Ni=1αi\color{Red}{L(w,b,\alpha ) = \frac{1}{2}||w||^2 - \sum_{i=1}^N\alpha {_i}y_i(wx_i+b) + \sum_{i=1}^N \alpha _{i}}
其中,α=(α1,α2,α3,...,αN)T\color{Red}{\alpha =(\alpha _1,\alpha_2,\alpha _3,...,\alpha _N)^T}为拉格朗日乘子向量。
拉格朗日对偶性问题
原问题
假设f(x),ci(x),hj(x)是定义在Rn上的连续可微函数,考虑约束问题:f(x),c_i(x),h_j(x)是定义在R^n上的连续可微函数,考虑约束问题:minxϵRnf(x)\color{Red}{\underset {x\epsilon R^n}{min}f(x)}
s.t.ci(x)≤0,i=1,2,...,k\color{Red}{s.t.c_i(x) \leq0,i=1,2,...,k}
hj(x)=0,j=1,2,...,l\color{Red}{h_j(x)=0,j=1,2,...,l}
称此约束最优化问题为原始最优化问题或者原始问题.
对于广义拉格朗日函数(generalized Lagrange function):
L(x,α,β)=f(x)+∑ki=1αici(x)+∑lj=1βjhj(x)\color{Red}{L(x,\alpha,\beta ) = f(x)+\sum_{i=1}^k\alpha_ic_i(x)+\sum_{j=1}^l\beta_jh_j(x)}
这里x=(x(1),...,x(n))TϵRn,αi,βj是拉格朗日乘子,αi≥0x=(x^{(1),...,x^{(n)}})^T \epsilon R^n,\alpha_i,\beta_j是拉格朗日乘子,\alpha_i \geq0
考虑关于函数
θP(x)=maxα,β,αi≥0L(x,α,β)\color{Red}{ \theta _P(x) = \underset {\alpha,\beta,\alpha_i\geq0}{max}L(x,\alpha,\beta)}
下标PP表示原问题
对于某个违反约束条件的 xx,存在 ii使得ci(w)≻0c_i(w) \succ 0或者存在jj使得hj(w)≠0h_j(w) \neq 0,就可是θP(x)\theta_P(x)趋向于无穷大。
也就是说:
当存在ii使ci(x)≻0c_i(x) \succ0,令αi→\alpha_i \rightarrow 无穷大,其他的α==0\alpha==0.
当存在jj使得hj(x)≠0h_j(x) \neq 0 存在βj\beta_j使得 βjhj(x)→\beta_jh_j(x) \rightarrow 无情大,其他的β==0\beta==0
上面两个情况都可能使得θP(x)→\theta_P(x) \rightarrow 无穷大
若xx满足约束条件则θP(x)=f(x)\color{Red}{\theta_P(x) = f(x)}
即:
考虑极小化问题
minxθP(x)=minxmaxα,β;αi≥0L(x,α,β)\color{Red}{\underset{x}{min} \theta_P(x) = \underset{x}{min} \underset{\alpha,\beta;\alpha_i \geq0}{max}L(x,\alpha,\beta)}
minxmaxα,β;αi≥0L(x,α,β)称为广义拉格朗日函数的极小极大问题\color{Red}{ \underset{x}{min} \underset{\alpha,\beta;\alpha_i \geq0}{max}L(x,\alpha,\beta)称为广义拉格朗日函数的极小极大问题}
原始问题的最优值:p∗=minxθP(x)\color{Red}{p^*=\underset{x}{min}\theta_P(x)}
对偶问题
定义 :θD(α,β)=minxL(x,α,β)\color{Red}{ \theta _D(\alpha,\beta) = \underset {x}{min}L(x,\alpha,\beta)}
在考虑极大化问题:
maxα,β;αi≥0θD(α,β)=maxα,β;αi≥0minxL(x,α,β)\color{Red}{\underset{\alpha,\beta;\alpha_i \geq0}{max} \theta_D(\alpha,\beta)=\underset{\alpha,\beta;\alpha_i \geq0}{max} \underset {x}{min}L(x,\alpha,\beta)}
问题maxα,β;αi≥0minxL(x,α,β)称为广义拉格朗日函数的极大极小问题\color{Red}{\underset{\alpha,\beta;\alpha_i \geq0}{max} \underset {x}{min}L(x,\alpha,\beta)称为广义拉格朗日函数的极大极小问题}
对偶问题的最优值;d∗=maxα,β;αi≥0θD(α,β)\color{Red}{d^*=\underset{\alpha,\beta;\alpha_i \geq0}{max} \theta_D(\alpha,\beta)}
原始问题与对偶问题的关系
1.原始问题的最优值等于对偶问题的最优值2.原始问题最优值时候的最优解也是对偶问题的最优解
KKT条件
设函数f(x)和ci(x)f(x)和c_i(x)是吐函数,hj(x)h_j(x)是放射函数,不等式约束ci(x)c_i(x)是严格可行的,则x∗,α∗,β∗x^*,\alpha^*,\beta^*分别是原始问题和对偶问题的解的充分必要条件是x∗,α∗,β∗x^*,\alpha^*,\beta^*满足下列条件:▽xL(x∗,α∗,β∗)=0\color{Red}{\bigtriangledown _xL(x^*,\alpha^*,\beta^*)=0}
▽αL(x∗,α∗,β∗)=0\color{Red}{\bigtriangledown _{\alpha}L(x^*,\alpha^*,\beta^*)=0}
▽βL(x∗,α∗,β∗)=0\color{Red}{\bigtriangledown _{\beta}L(x^*,\alpha^*,\beta^*)=0}
α∗ici(x∗)=0,i=1,2,3,...,k\color{Red}{\alpha_{i}^*c_i(x^*)=0},i=1,2,3,...,k
ci(x∗)≤0,i=1,2,3,...,k\color{Red}{c_i(x^*)\leq0},i=1,2,3,...,k
α∗i≥0,i=1,2,3...,k\color{Red}{\alpha_i^* \geq 0},i=1,2,3...,k
hj(x∗)=0,j=1,2,...,l\color{Red}{h_j(x^*)=0},j=1,2,...,l
关于KKT的一个例子
更多对偶问题的连接
对偶学习算法(接上)
下面继续原始问题的对偶问题是极大极小问题:
maxαminw,bL(w,b,α)\color{Red}{\underset{\alpha}{max} \underset{w,b}{min}L(w,b,\alpha)}
先求极小化问题,再求极大化问题
(1)求minw,bL(w,b,α)\color{Red}{\underset{w,b}{min}{L(w,b,\alpha)}}
拉格朗日函数是:
L(w,b,α)=12||w||2−∑Ni=1αiyi(wxi+b)+∑Ni=1αi\color{Red}{L(w,b,\alpha ) = \frac{1}{2}||w||^2 - \sum_{i=1}^N\alpha {_i}y_i(wx_i+b) + \sum_{i=1}^N \alpha _{i}}
其中,α=(α1,α2,α3,...,αN)T\color{Red}{\alpha =(\alpha _1,\alpha_2,\alpha _3,...,\alpha _N)^T}为拉格朗日乘子向量。
将拉格朗日函数L(w,b,α){L(w,b,\alpha)}分布对w,b,αw,b,\alpha求偏导数,并令其等于0。
▽wL(w,b,α)=w−∑Ni=1αiyixi=0\color{Red}{\bigtriangledown _wL(w,b,\alpha) = w - \sum_{i=1}^N \alpha_iy_ix_i = 0 }
▽bL(w,b,α)=∑Ni=1αiyi=0\color{Red}{\bigtriangledown_bL(w,b,\alpha)=\sum_{i=1}^N\alpha_iy_i=0}
即:
w=∑Ni=1αiyixi\color{Red}{w = \sum_{i=1}^N\alpha_iy_ix_i}
∑Ni=1αiyi=0\color{Red}{\sum_{i=1}^N\alpha_iy_i=0}
将上市带入拉格朗日函数中,可得到:
L(w,b,α)=12∑Ni=1∑Nj=1αiαjyiyj<xi,xj>−∑Ni=1αiyi(<∑Nj=1αjyjxj,xi>+b)+∑Ni=1αi\color{Red}{L(w,b,\alpha) = \frac{1}{2}\sum_{i=1}^N\sum_{j=1}^N\alpha_i \alpha_j y_iy_j -\sum_{i=1}^N\alpha_iy_i(<\sum_{j=1}^N\alpha_jy_jx_j,x_i>+b)+\sum_{i=1}^N \alpha_i}
=−12∑Ni=1∑Nj=1αiαjyiyj<xi,xj>+∑Ni=1αi\color{Red}{- \frac{1}{2}\sum_{i=1}^N\sum_{j=1}^N\alpha_i \alpha_j y_iy_j+\sum_{i=1}^N\alpha_i}
说明:
1.<xi,xj>是点乘,对应元素相乘再求和,xi,xjx_i,x_j都是列向量
2.wxwx这里也是点乘的意思,结果是一个数。
(2)求minw,bL(w,b,α)\color{Red}{\underset{w,b}{min}L(w,b,\alpha)}对α\color{Red}{\alpha}的极大值
maxα−12∑Ni=1∑Nj=1αiαjyiyj<xi,xj>+∑Ni=1αi\color{Red}{\underset{\alpha}{max}- \frac{1}{2}\sum_{i=1}^N\sum_{j=1}^N\alpha_i \alpha_j y_iy_j+\sum_{i=1}^N\alpha_i}
s.t.∑Ni=1αiyi=0\color{Red}{s.t. \sum_{i=1}^N\alpha_iy_i=0}
αi≥0,i=1,2,...,N\color{Red}{\alpha_i \geq0,i=1,2,...,N}
上面的极大化问题可以转化成极小化问题:
minα12∑Ni=1∑Nj=1αiαjyiyj<xi,xj>−∑Ni=1αi\color{Red}{\underset{\alpha}{min} \frac{1}{2}\sum_{i=1}^N\sum_{j=1}^N\alpha_i \alpha_j y_iy_j-\sum_{i=1}^N\alpha_i}
s.t.∑Ni=1αiyi=0\color{Red}{s.t. \sum_{i=1}^N\alpha_iy_i=0}
αi≥0,i=1,2,...,N\color{Red}{\alpha_i \geq0,i=1,2,...,N}
满足KKT\color{Red}{KKT}条件存在最优解α∗=(α∗1,α∗2,...,α∗N)T\alpha^*=(\alpha_1^*,\alpha_2^*,...,\alpha_N^*)^T
求解w,b\color{Red}{w,b}
设α∗=(α∗1,α∗2,...,α∗N)T\color{Red}{\alpha^*=(\alpha_1^*,\alpha_2^*,...,\alpha_N^*)^T}是对偶问题的最优解,则存在下标j\color{Red}{j},使得α∗j≻0\color{Red}{\alpha_j^* \succ0},则原始问题的最优解:w∗=∑Ni=1α∗iyixi\color{Red}{w^* = \sum_{i=1}^N\alpha_i^*y_ix_i}
b∗=yj−∑Ni=1α∗iyi<xi,xj>\color{Red}{b^* = y_j-\sum_{i=1}^N\alpha_i^*y_i}
证明:
KKT条件成立:
▽∗wL(w∗,b∗,α∗)=w∗−∑Ni=1α∗iyixi=0\color{Red}{\bigtriangledown _w^*L(w^*,b^*,\alpha^*) = w^* - \sum_{i=1}^N \alpha_i^*y_ix_i = 0 }
▽bL(w∗,b∗,α∗)=∑Ni=1α∗iyi=0\color{Red}{\bigtriangledown_bL(w^*,b^*,\alpha^*)=\sum_{i=1}^N\alpha_i^*y_i=0}
α∗j(yi(<w∗,xi>+b∗)−1)=0,i=1,2,...,N\color{Red}{\alpha_j^*(y_i(+b^*)-1) = 0},i=1,2,...,N
yi(<w∗,xi>+b∗)−1≥0\color{Red}{y_i(+b^*)-1 \geq 0},i=1,2,…,N
α∗i≥0\alpha_i^* \geq 0,i=1,2,…,N
得到: w∗=∑Ni=1α∗iyixi\color{Red}{w^* = \sum_{i=1}^N\alpha_i^*y_ix_i}
之前已经讲过w∗=0w^*=0不是原始问题的最优解
可知道一定存在jj使α∗j≻0\color{Red}{\alpha_j^* \succ 0}
由于α∗j(yj(<w∗,xj>+b∗)−1)=0\color{Red}{\alpha_j^*(y_j(+b^*)-1) = 0}
可知道 yj(<w∗,xj>+b∗)−1=0\color{Red}{y_j(+b^*)-1 = 0}
带入所求的w∗w^*
得到: b∗=yj−∑Ni=1α∗iyi<xi,xj>\color{Red}{b^* = y_j-\sum_{i=1}^N\alpha_i^*y_i}
分离超平面是:
∑Ni=1α∗iyi<x,xi>+b∗=0\color{Red}{\sum_{i=1}^N\alpha_i^*y_i+b^*=0}
分类决策函数:
f(x)=sign(∑Ni=1α∗iyi<x,xi>+b∗)\color{Red}{f(x) = sign(\sum_{i=1}^N\alpha_i^*y_i+b^*)}
线性可分支持向量机学习算法
输入: 线性可分训练数据集T={(x1,y1),(x2,y2),...,(xN,yN)}T=\left\{ (x_1,y_1),(x_2,y_2),...,(x_N,y_N)\right\},yϵ(+1,−1)y \epsilon (+1,-1)输出:分离超平面和分类决策函数
(1)构造并求解约束最优化问题
minα12∑Ni=1∑Nj=1αiαjyiyj<xi,xj>−∑Ni=1αi\color{Red}{\underset{\alpha}{min} \frac{1}{2}\sum_{i=1}^N\sum_{j=1}^N\alpha_i \alpha_j y_iy_j-\sum_{i=1}^N\alpha_i}
s.t.∑Ni=1αiyi=0\color{Red}{s.t. \sum_{i=1}^N\alpha_iy_i=0}
αi≥0,i=1,2,...,N\color{Red}{\alpha_i \geq0,i=1,2,...,N}
求得最优解是:α∗=(α∗1,α∗2,α∗3,...,α∗N)T\color{Red}{\alpha^*=(\alpha_1^*,\alpha_2^*,\alpha_3^*,...,\alpha_N^*)^T}
(2)求w∗,b∗w^*,b^*
w∗=∑Ni=1α∗iyixi\color{Red}{w^* = \sum_{i=1}^N\alpha_i^*y_ix_i}
b∗=yj−∑Ni=1α∗iyi<xi,xj>\color{Red}{b^* = y_j-\sum_{i=1}^N\alpha_i^*y_i}
(3)计算分离超平面
分离超平面是:
<w∗,x>+b=0\color{Red}{+b=0}
分类决策函数:
f(x)=sign(<w∗,x>+b=0)\color{Red}{f(x) = sign(+b=0)}
说明:
1.上面计算的w∗,b∗w^*,b^*只依赖于训练集中的α∗i≻0的样本点(xi,yi)\color{Red}{\alpha_i^*\succ0的样本点(x_i,y_i)}
2.对α∗i≻0所对应的样本点称为支持向量\color{Red}{\alpha_i^* \succ 0所对应的样本点称为支持向量}
支持向量
训练集中对应α∗i≻0的样本点(xi,yi)称为支持向量\color{Red}{\alpha_i^*\succ 0 }的样本点(x_i,y_i)称为支持向量对α∗i≻0\alpha_i^* \succ0时候,根据KKT条件可知道
yi(<w∗,xi>+b∗)−1=0\color{Red}{y_i(+b^*)-1=0}
即:
<w∗,xi>+b∗=±1\color{Red}{+b^*= \pm 1}
如上图所示:<w∗,xi>+b∗=±1\color{Red}{+b^*= \pm 1} 是间隔的边界,此时的xix_i就是支持向量点
相关文章推荐
- c++的赋值构造函数以及vector::push_back的问题
- 在MFC中使用SDL2.0(SDL窗口嵌入到MFC中)
- 【UML】——四种关系
- loadView的生命周期
- 【Java EE 学习 28 上】【oracle学习第二天】【子查询】【集合运算】【几种数据库对象】
- 关于大型网站技术演进的思考(二)--存储的瓶颈(2)
- hdoj 3665 Seaside 【裸最短路】
- 一种即时通信中群组邮件通信的方法、装置及系统
- Struts(6)配置文件
- 关于大型网站技术演进的思考(一)--存储的瓶颈(1)
- jQuery实现点击后标记当前菜单位置(背景高亮菜单)效果
- 校验码生成工具
- HDU 4456 CDQ分治
- CSR公布蓝牙“大杀器” CSR Mesh技术细节,号称要“干掉Zigbee”
- them for the primary five fifa ballon
- 最好的Stardict词库下载地址
- Elasticsearch-Spark 体验
- WebSocket 原理,为什么可以实现持久连接?
- UVA10375 Choose and divide 质因数分解
- STL优先级队列