跳转至

5 软间隔

很难确定合适的核函数使得训练样本在特征空间中线性可分,并且既便得到了一个线性可分的结果也很难断定是否是有过拟合造成的。

于是引入软间隔的概念,允许支持向量机在一些样本上不满足约束 y_i(w^Tx_i+b)\ge1

在最大化间隔时,最好能让不满足约束的样本尽量少,于是优化目标可以写为

\min _{\boldsymbol{w}, b} \frac{1}{2}\|\boldsymbol{w}\|^2+C \sum_{i=1}^m \ell_{0 / 1}\left(y_i\left(\boldsymbol{w}^{\top} \phi\left(\boldsymbol{x}_i\right)+b\right)-1\right)

其中 C 是个正常数,\ell_{0/1} 是 0/1 损失函数,其定义为

\ell_{0 / 1}(z)=\left\{\begin{array}{l} 1, z<0 \\ 0, \text { otherwise } \end{array}\right.

C 其实就是惩罚值,每有一个样本不满足约束,就会导致优化目标值上升。当 C→\infty 时,迫使所有样本都要满足约束;当其为有限值时,允许某些样本不满足约束。

但是如上定义的 0/1 损失函数非凸、非连续,不易优化!老办法,可以选取一些函数来替代之。

image-20221020222428342

替代损失函数数学性质较好,并且一般是 0/1 损失函数的上界

采用 Hinge 损失函数的情形

此时优化问题变为

\min _{\boldsymbol{w}, b} \frac{1}{2}\|\boldsymbol{w}\|^2+C \sum_{i=1}^m \max(0,1-y_i(w^T\phi(x_i)+b))

令(\xi_i 称之为松弛变量,惩罚因子)

\xi_i=\max(0,1-y_i(w^T\phi(x_i)+b))

所以优化问题可以重写为

\begin{aligned} \displaystyle\min _{\boldsymbol{w}, b, \boldsymbol\xi } &\quad \frac{1}{2}\|\boldsymbol{w}\|^2+C \sum_{i=1}^m \xi_i\newline \text { s.t. } &y_i\left(\boldsymbol{w}^{\top} \phi\left(\boldsymbol{x}_i\right)+b\right) \geq 1-\xi_i, i=1,2, \ldots, m \newline &\xi_i \geq 0, i=1,2, \ldots, m \end{aligned}

这个就是软间隔支持向量机

注记

\xi_i\ge 0,当 1-y_i(w^Tx_i+b)>01-y_i(w^Tx_i+b)=\xi_i;当 1-y_i(w^Tx_i+b)\le 00=\xi_i,所以

1-y_i(w^Tx_i+b)\le\xi_i

这就是第一个约束条件的推导过程。

其也可以通过求解对偶问题来高效解决,和之前的差不多,就不细看了。

求对偶问题的时候要对 w,b,\xi 都求导。

image-20221020225414108

image-20221020225433756

image-20221020225456722

本文阅读量