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=0s.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}
在这里插入图片描述
此外,从数学上,ξ<0s.t,Loss=0\xi<0时满足s.t,Loss=0,就是硬间隔了。

  1. 对于支持向量,ξi=0yi(ωTxi+b)=1s.t.\xi_i=0\Rarr y_i(\omega^Tx_i+b)=1,满足s.t.
  2. 对于噪声点,ξi>0yi(ωTxi+b)<1s.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

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