支持向量機

硬間隔:app

超平面經過以下方程描述:函數

  $w^{T}x+b=0$3d

則任意一點到超平面的距離:blog

  $r=\frac {|w^{T}x+b|} {||w||}$數學

假設超平面(w,b)能將訓練樣本正確分類,即對於$(x_{i},y_{i})\subset D$,若$y_{i}=+1$,則有$w^{T}x_{i}+b>0$,若$y_{i}=-1$,則有$w^{T}x_{i}+b<0$。令io

  $\left\{\begin{matrix}w^{T}x_{i}+b \geq 1,y_{i}=+1\\ w^{T}x_{i}+b \leq  1,y_{i}=-1\end{matrix}\right.$變量

由於$w^{T}x+b$前面能夠乘以一個常數而超平面不變,全部令$w^{T}x+b=1$,則最大化im

  $\gamma = \frac {2}{||w||}$db

即:img

  $\underset{w,b}{max} \frac {2}{||w||}$

  $s.t. \ y_{i}(w^{T}x_{i}+b)\geq 1,i=1,2,...,m$

等價於:

  $\underset{w,b}{min} \frac {1}{2}||w||^{2}$

  $s.t. \ y_{i}(w^{T}x_{i}+b)\geq 1,i=1,2,...,m$

 

對偶問題:

  $L(w,b,a)=\frac{1}{2}||w||^{2}+\sum_{i=1}^{m}a_{i}(1-y_{i}(w^{T}x_{i}+b))$

對w和b求導:

  $w=\sum_{i=1}^{m}a_{i}y_{i}x_{i}$

  $0=\sum_{i=1}^{m}a_{i}y_{i}$

把上式代入$L(w,b,a)$ 得:

  $\frac{1}{2}(\sum_{i=1}^{m}a_{i}y_{i}x_{i})^{2}+\sum_{i=1}^{m}a_{i}-\sum_{i=1}^{m}a_{i}y_{i}x_{i}\sum_{i=1}^{m}a_{i}y_{i}x_{i}+\sum_{i=1}^{m}a_{i}y_{i}b$

  $=\sum_{i=1}^{m}a_{i}-\frac{1}{2}\sum_{i=1}^{m}\sum_{j=1}^{m}a_{i}a_{j}y_{i}y_{j}x_{i}x_{j}$

再根據拉格朗日對偶性:

  $\underset{a}{max}\sum_{i=1}^{m}a_{i}-\frac{1}{2}\sum_{i=1}^{m}\sum_{j=1}^{m}a_{i}a_{j}y_{i}y_{j}x_{i}x_{j}$

  $s,t, \ \sum_{i=1}^{m}a_{i}y{i}=0,a_{i}\geq 0,i=1,2...m$

解出$a$後,求出$w,b$便可獲得模型:

  $f(x)=w^{T}w+b=\sum_{i=1}^{m}a_{i}y_{i}x_{i}^{T}x+b$

 

核函數:

樣本是線性不可分的,那麼能夠將樣本從原始空間映射到一個更高維的空間,使得樣本線性可分。因此線性模型表示爲:

  $f(x)=w^{T}\phi(x)+b$

即目標函數爲:

  $\underset{w,b}{min}\frac{1}{2}||w||^{2}$

  $s.t. \ y_{i}(w^{T}\phi (x_{i})+b)\geq 1,i=1,2,...,m$

對偶問題:

  $\underset{a}{max}\sum_{i=1}^{m}a_{i}-\frac{1}{2}\sum_{i=1}^{m}\sum_{j=1}^{m}a_{i}a_{j}y_{i}y_{j}\phi (x_{i})\phi (x_{j})$

  $s,t, \ \sum_{i=1}^{m}a_{i}y{i}=0,a_{i}\geq 0,i=1,2...m$

求解上式涉及到$\phi (x_{i})\phi (x_{j})$,這是樣本$\phi (x_{i}),\phi (x_{j})$映射到特徵空間以後的內積,因爲特徵空間維數可能很高,甚至多是無窮維,所以直接計算$\phi (x_{i})\phi (x_{j})$一般是困難的,所以設想這樣的函數:

  $\kappa(x_{i},x_{j})=<\phi (x_{i}),\phi (x_{j})>=\phi (x_{i})\phi (x_{j})$

所以對偶問題能夠重寫爲:

  $\underset{a}{max}\sum_{i=1}^{m}a_{i}-\frac{1}{2}\sum_{i=1}^{m}\sum_{j=1}^{m}a_{i}a_{j}y_{i}y_{j}\kappa(x_{i},x_{j})$

  $s,t, \ \sum_{i=1}^{m}a_{i}y{i}=0,a_{i}\geq 0,i=1,2...m$

組合核函數:

1.若$\kappa_{1},\kappa_{2}$爲核函數,則對於任意的正數$\gamma_{1},\gamma_{2}$,其線性組合$\gamma_{1}\kappa_{1}+\gamma_{2}\kappa_{2}$也是核函數。

2.若$\kappa_{1},\kappa_{2}$爲核函數,則核函數的直積$\kappa_{1}\otimes \kappa_{2}(x,z)=\kappa_{1}(x,z)\kappa_{2}(x,z)$也是核函數。

3.若$\kappa_{1}$爲核函數,則對於任意函數$g(x)$,$\kappa(x,z)=g(x)\kappa_{1}(x,z)g(z)$也是核函數。

 

軟間隔與正則化:

  上面是假設訓練樣本在樣本空間或特徵空間中是線性可分的,即存在一個超平面能將不一樣類的樣本徹底分開,然而現實中每每很難肯定合適的核函數將不一樣類的樣本徹底分開。因而引進「軟間隔」。運行一些不符合條件的樣本。即$y_{i}(w^{T}x_{i}+b)< 1$

即目標函數爲:

  $\underset{w,b}{min}\frac{1}{2}||w||^{2}+C\sum_{i=1}^{m}\iota_{0/1}(y_{i}(w^{T}x_{i}+b)-1)$

其中$C>0$是一個常數,$\iota_{0/1}$是損失函數:

  $\iota_{0/1}(z)=\left\{\begin{matrix}1,if\ z<0\\ 0,otherwise\end{matrix}\right.$

由於$\iota_{0/1}$不連續,數學性質很差,不太容易求解,可使用其餘損失函數:

hinge損失函數:$\iota_{hinge}(z)=max(0,1-z)$

指數損失函數:$\iota_{exp}(z)=exp(-z)$

對率損失函數:$\iota_{log}(z)=log(1+exp(-z))$

 

若採用hinge損失函數則:

  $\underset{w,b}{min}\frac{1}{2}||w||^{2}+C\sum_{i=1}^{m}max(0,1-y_{i}(w^{T}x_{i}+b))$

引入鬆弛變量$\xi_{i}\geq 0$則:

  $\underset{w,b}{min}\frac{1}{2}||w||^{2}+C\sum_{i=1}^{m}\xi_{i}$

  $s.t. \ y_{i}(w^{T}x_{i}+b)\geq 1-\xi_{i},\ \xi_{i}\geq 0,i=1,2,...,m$

拉格朗日函數,其中$a_{i}\geq 0,\mu_{i}\geq 0$是拉格朗日乘子:

  $L(w,b,a,\xi,\mu)=\frac{1}{2}||w||^{2}+C\sum_{i=1}^{m}\xi_{i}+\sum_{i=1}^{m}a_{i}(1-\xi_{i}-y_{i}(w^{T}x_{i}+b))-\sum_{i=1}^{m}\mu_{i}\xi_{i}$

 求導得:

  $w=\sum_{i=1}^{m}a_{i}y_{i}x_{i}$

  $0=\sum_{i=1}^{m}a_{i}y_{i}$

  $C=a_{i}+\mu_{i}$

代入拉格朗日函數得對偶問題:

  $\underset{a}{max}\sum_{i=1}^{m}a_{i}-\frac{1}{2}\sum_{i=1}^{m}\sum_{j=1}^{m}a_{i}a_{j}y_{i}y_{j}x_{i}x_{j}$

  $s,t, \ \sum_{i=1}^{m}a_{i}y{i}=0,0\leq a_{i}\leq C,i=1,2...m$

相關文章
相關標籤/搜索