机器学习 --- 软间隔支持向量机

一、软间隔支持向量机直观理解

之前所介绍的支持向量机形式都是要求所有的样本都要能被正确地划分,这又被称作"硬间隔支持向量机",当数据是带有噪声的,就可能会产生一些脱离群体的点。在实际情况中,采用硬间隔的方式难以确定合适的核函数使得训练样本在特征空间中线性可分,即使能确定某个核函数能进行很好的划分,但模型可能也会存在过拟合的现象,导致模型的泛化能力较差。

存在一些样本点不满足约束条件

软间隔支持向量机旨在允许模型对一些离群点保持“容忍”态度。

二、软间隔支持向量基本形式

在硬间隔模型中,约束条件:

y_i(w^Tx_i+b)\geq 1 , \ \ \ \ \ i=1,2,...,m

如果样本存在噪声,约束条件变成:

y_i(w^Tx_i+b)\geq 1 -\xi_i , \ \ \ \ \ i=1,2,...,m

这里的 \xi_i \geq 0 表示第 i 个样本点允许偏离函数间隔的值,又称作松弛变量。那么新的优化方程为:

min\ \frac{1}{2}\left| \left|w \right| \right|^2+C\sum_{i=1}^{m}{\xi_i} \ \ \ \ \ \ \qquad \qquad  \qquad\qquad\qquad(1)

s.t \ \ y_i(w^Tx_i+b) \geq 1-\xi_i ,\ \ \ \ \ i=1,2,...,m

\ \ \  \ \ \ \ \xi_i\geq0 ,\ \ \ \ \ i=1,2,...,m

这里的 C 是一个常量,又称作惩罚系数。当 C 值设置得很大时,目标函数后一项所占权重比也会很大,优化过程中将会着重优化后一项,即减小第 i 个样本点允许偏离函数间隔的值,模型退化成硬间隔型式,则可能会出现过拟合。同样地,当 C 值设置的非常小时,可能出现欠拟合情况。

之前提到的松弛变量 \xi_i :

\xi_i=l_{0/1}(y_i(w^Tx_i+b)-1)

其中 l_{0/1} :

l_{0/1}=\left\{ \begin{aligned} & 1, \ z<0 \\ & 0, \ otherwise  \\ \end{aligned} \right.

由于 l_{0/1} 非凸,非连续,在求解目标函数时较为困难。因此还有一些其他的替代损失函数:

hinge损失: l_{hinge}(z)=max(0,1-z)

指数损失: l_{exp}(z)=exp(-z)

对率损失: l_{log}(z)=log(1+exp(-z))

三、模型求解

由拉格朗日乘子法,将(1)式转化成:

L(w,b,\xi,\alpha,\mu)=\frac{1}{2}\left| \left| w \right| \right|^2+C\sum_{i=1}^{m}{\xi_i}+\sum_{i=1}^{m}{\alpha_i(1-\xi_i-y_i(w^Tx_i+b))-\sum_{i=1}^{m}{\mu_i\xi_i}} \ \ \ \ \ (2)

这里的 \alpha_i\geq 0 是约束条件 y_i(w^Tx_i+b) \geq 1-\xi_i 的拉格朗日乘子,

\mu_i\geq 0 是约束条件 \xi_i\geq0 的拉格朗日乘子。

求偏导得:

w=\sum_{i=1}^{m}{\alpha_iy_ix_i}

0=\sum_{i=1}^{m}{\alpha_iy_i}

C=\alpha_i+\mu_i

代入到(2)式中,得到该问题的对偶式:

\max \limits_{\alpha}\sum_{i=1}^{m}{\alpha_i-\frac{1}{2}\sum_{i=1}^{m}{\sum_{j=1}^{m}{\alpha_i\alpha_jy_iy_jx_i^Tx_j}}}

s.t. \ \ \ \ \sum_{i=1}^{m}{\alpha_iy_i}=0 \ \ \ \ \ i=1,2,...,m

\ \ \ \ \ \ \ \ \ \ \  \ 0 \leq \alpha_i \leq C

对比之前硬间隔下的对偶问题,二者差距仅仅在 \alpha 多了一个上限 C 。如果使用核函数型式,则只需要把 x_i^Tx_j 换成 \kappa(x_i,x_j) 即可。求解拉格朗日乘子可以像之前那样使用SMO算法求解,具体过程不再赘述。

参考文献:

1.支持向量机通俗导论(理解SVM的三层境界) - Mac Track - CSDN博客

2.拉格朗日对偶问题(Lagrange duality)

3.深入理解拉格朗日乘子法(Lagrange Multiplier) 和KKT条件

4.周志华. 机器学习[M]. 清华大学出版社, 2016

5.Andrew Ng 《machine learning》系列课程

猜你喜欢

转载自blog.csdn.net/adorkable_thief/article/details/84337190