SVM:軟間隔SVM(原理)

示意圖1

在這裏插入圖片描述
ξi>1yiωTxi+bytrueypred\xi_i>1時,y_i和\omega^Tx_i+b異號,即y_{true}≠y_{pred}\Rarr錯分類

示意圖2

值得注意的是:distance(Margin)=2ωdistance(Margin)=\frac 2 {\parallel\omega\parallel}

設兩條直線方程爲Ax+By+C1=0,Ax+By+C2=0Ax+By+C_1=0,Ax+By+C_2=0,則其距離公式d=C1C2(A2+B2)d=\frac{|C_1-C_2|}{\sqrt{(A^2+B^2)}}

因此,下圖更準確。但是下述分析均沿上圖展開。
在這裏插入圖片描述
ξi(xi,yi)ωTx+b=±1\xi_i表示(x_i,y_i)到\omega^Tx+b=±1的距離。
ξi>2ω(xi,yi)因此當\xi_i>\frac 2 {\parallel\omega\parallel}時,(x_i,y_i)位於敵軍區域\Rarr錯分類

此處需要注意,還有另外一種看法,認爲ξiω\frac {\xi_i} {\parallel\omega\parallel}才代表(xi,yi)ωTx+b=±1(x_i,y_i)到\omega^Tx+b=±1的距離。如本文中展示的最後一個圖。

二分類問題描述

Data={(xi,yi)}i=1N,xiRp,yi{1,+1}Data=\{(x_i, y_i)\}_{i=1}^N,x_i\in\R^p,y_i\in\{-1,+1\}

1. 硬間隔SVM

hard-margin SVM在數據中存在噪聲或數據不可分時,可能會失效。
hardmargin SVM={minω,b12ωTω s.t. yi(ωTxi+b)1,i=1,...,Nhard-margin\space SVM=\begin{cases}{min \atop \omega,b}{\frac 1 2}\omega^T\omega\space \\s.t.\space y_i(\omega^Tx_i+b)\geqslant1,i=1,...,N \end{cases}

2. 軟間隔SVM

soft-margin SVM的思想是:允許出現錯誤,因此加Loss項。
(1)softmargin SVM={minω,b12ωTω +Losss.t. yi(ωTxi+b)1,i=1,...,N(1)soft-margin\space SVM=\begin{cases}{min \atop \omega,b}{\frac 1 2}\omega^T\omega\space+Loss \\s.t.\space y_i(\omega^Tx_i+b)\geqslant1,i=1,...,N \end{cases}
Loss使用Hinge loss:Loss=max{0,1yi(ωTxi+b)}Loss=max\{0,1-y_i(\omega^Tx_i+b)\}

(1)Hinge Loss

Hinge loss表示距離。
{yi(ωTxi+b)1Loss=0滿s.t.(xi,yi)marginyi(ωTxi+b)<1Loss=1yi(ωTxi+b)滿s.t.(xi,yi)margin\begin{cases}如果y_i(\omega^Tx_i+b)\geqslant1,令Loss=0\Larr滿足s.t.,即(x_i,y_i)在margin外 \\如果y_i(\omega^Tx_i+b)<1,令Loss=1-y_i(\omega^Tx_i+b)\Larr不滿足s.t.,(x_i,y_i)在margin內 \end{cases}
即,
Loss=max{0,1yi(ωTxi+b)}Loss=max\{0,1-y_i(\omega^Tx_i+b)\}
Z=yi(ωTxi+b),Loss=max{0,1Z}{Z=y_i(\omega^Tx_i+b)},則Loss=max\{0,1-Z\}
此時,{1Z>0Z<11Z0Z1\begin{cases}1-Z>0時,Z<1\\1-Z\leqslant0時,Z\geqslant1\end{cases}是連續函數
在這裏插入圖片描述

Q:0/1損失爲什麼不可行?
S:Loss0/1=i=1NI{yi(ωTxi+b)<1}=s.t.(xi,yi)Loss_{0/1}=\displaystyle\sum_{i=1}^NI\{y_i(\omega^Tx_i+b)<1\}=違反s.t.的(x_i,y_i)數量
這個函數是不連續的,跳躍的,其數學性質將導致求導時出現很多問題。
Z=y(ωTx+b)Loss0/1={1,Z<10,otherwise令Z=y(\omega^Tx+b),則Loss_{0/1}={\begin{cases}1, Z<1\\0,otherwise\end{cases}}
SVM 0-1 Loss

(2)鬆弛向量

(2){minω,b12ωTω +Ci=1Nmax{0,1yi(ωTxi+b)},Cs.t. yi(ωTxi+b)1,i=1,...,N(2)\begin{cases}{min \atop \omega,b}{\frac 1 2}\omega^T\omega\space+C\displaystyle\sum_{i=1}^Nmax\{0,1-y_i(\omega^Tx_i+b)\},C爲超參數,類似於正則化 \\s.t.\space y_i(\omega^Tx_i+b)\geqslant1,i=1,...,N \end{cases}

但是往往不建議寫成上式的maxmax形式。通常引入鬆弛向量ξ\xi
ξi=1yi(ωTxi+b),ξi0\xi_i=1-y_i(\omega^Tx_i+b),\xi_i\geqslant0

因爲ξiω{\frac {\xi_i} {\parallel\omega\parallel}}表示距離,因此 ξi0\xi_i\geqslant0
(1)(xi,yi=1)ωTxi+b=1(x_i,y_i=1)到\omega^Tx_i+b=1的距離;
(2)(xi,yi=1)ωTxi+b=1(x_i,y_i=-1)到\omega^Tx_i+b=-1的距離。
(3)1ξiω(xi,yi)ωTxi+b=0\frac {\mid1-\xi_i\mid} {\parallel\omega\parallel}表示(x_i,y_i)到\omega^Tx_i+b=0的距離。
要注意距離,對距離的描述要×1ω×\frac 1{\parallel\omega\parallel}
在這裏插入圖片描述
此外,從數學上,ξ<0滿s.t,Loss=0\xi<0時滿足s.t,Loss=0,就是硬間隔了。

  1. 對於支持向量,ξi=0yi(ωTxi+b)=1滿s.t.\xi_i=0\Rarr y_i(\omega^Tx_i+b)=1,滿足s.t.
  2. 對於噪聲點,ξi>0yi(ωTxi+b)<1滿s.t.{ξi>1yiωTxi+b0ξi1(xi,yi)margin\xi_i>0\Rarr y_i(\omega^Tx_i+b)<1,不滿足s.t.\\\begin{cases}\xi_i>1時,y_i與\omega^Tx_i+b符號相反\Rarr分類錯誤\\ 0\leqslant\xi_i\leqslant1時,分類正確,但是(x_i,y_i)在margin內\end{cases}

(3)最終優化形式

(3){minω,b12ωTω+Ci=1Nξis.t. yi(ωTxi+b)1ξi      ξi0(3)\begin{cases}{min\atop\omega,b}{\frac 1 2}\omega^T\omega+C\displaystyle\sum_{i=1}^N\xi_i \\s.t.\space y_i(\omega^Tx_i+b)\geqslant1-\xi_i \\\space\space\space\space\space\space\xi_i\geqslant0 \end{cases}

1ξi(xi,yi)ωTxi+b=0\mid1-\xi_i\mid表示(x_i,y_i)到\omega^Tx_i+b=0的距離。
相當於把ωTxi+b=±1\omega^Tx_i+b=±1換成ωTxi+b=1ξi\omega^Tx_i+b=\mid1-\xi_i\mid

3. 求解同硬間隔SVM:對偶+KKT

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章