第6章 支持向量机
间隔与支持向量
给定一个训练样本集
我们想要得到一个划分超平面,将不同类别的样本分开来
如图,我们应尽可能地使两个类别的样本都尽可能地远离超平面,换句话说,就是使得训练集之外的未见示例在该超平面的作用下也能正确分类,所以,超平面应该尽可能“正中间”划分训练集。
- 划分超平面可用以下线性方程表示:
对偶问题
SVM的基本型是一个凸二次规划问题,可直接求解,但是可以使用拉格朗日乘子法可得到其“对偶问题”,对偶问题更方便于求解,其形式如下:
怎么使用拉格朗日乘子法将原问题转换到其对偶问题的呢? 首先,对原问题的约束(也就是对每个训练样本所产生的约束)添加拉格朗日乘子 ,则原问题的拉格朗日函数可写为:
再对w和b分别求偏导,再置0可得:
将这两个式子带入, 即可得到。
核函数
碰到线性不可分的情况时,我们处理的方法是把它转到高纬度去处理
因为在机器学习中,我们求解的过程要用到内积,而变换后的高维空间的内积我们不好求,所以我们定义了这个核函数,可以把高维空间的内积运算转化成内为空间的某些运算,这样求起来不是很简单吗?
换句话说,如果我们有了核函数,我们就不再需要知道那个映射φ到底是个什么鬼,我们就可以直接通过核函数,就可以求导高维空间的内积了,从而可以计算出高维空间中两个数据点之间的距离和角度。
- 常用核函数
软间隔与正则化
-
软间隔
在前面的讨论中,我们一直假定训练样本在样本空间或特征空间中是线性可分的,即存在一个超平面能将不同类的样本完全划分开.然而,在现实任务中往往很难确定合适的核函数使得训练样本在特征空间中线性可分。退一步说,即便恰好找到了某个核函数使训练集在特征空间中线性可分,也很难断定这个貌似线性可分的结果不是由于过拟合所造成的。
缓解该问题的一个办法是允许支持向量机在一些样本上出错。为此,要引入“软间隔”的概念。
具体来说,前面介绍的支持向量机形式是要求所有样本均满足约束,即所有样本都必须划分正确,这称为“硬间隔”。“软间隔”是允许某些样本不满足约束。但是不满足约束的样本也不能太多,否则这个分类器的学习能力不足,很容易欠拟合。所以,在最大化间隔的时候,优化目标写成:
在我们写代码,调用sklearn库的时候,SVM函数中有一个参数为C,就是上述等式中的C。我们一步一步慢慢看看这个等式的含义。首先C大于0,是一个常数,其中:
-
正则化
西瓜书上的介绍是将“软间隔支持向量机”的形式替换来得到其他的学习模型。
以上是更一般的优化目标形式,其中第一项仍然是划分超平面的间隔大小,而第二项是训练集上的误差,整个式子称为正则化问题,C为正则化常数。正则化一般是为了防止过拟合,在损失函数后面加入一项正则化,例如L1正则化,L2正则化。
支持向量回归
相比于线性回归用一条线来拟合训练样本,支持向量回归(SVR)是采用一个以f(x)=w^Tx+b为中心,宽度为2ϵ的间隔带来拟合训练样本。
落在带子上的样本不计算损失(类比线性回归在线上的点预测误差为0),不在带子上的则以偏离带子的距离作为损失(类比线性回归的均方误差),然后以最小化损失的方式迫使间隔带从样本最密集的地方(中心地带)穿过,进而达到拟合训练样本的目的。
所以要意识到这是个回归问题,所以模型的目的是为了预测某个点,而不是对其进行分类,所以间隔带的目的是尽可能包含更多的样本,所以只能选择最能反应样本特征的位置,即样本最密集的地方穿过。
引入松弛程度就是为了解决某些不满足约束条件的样本,而这些样本在带子的左右两边分布并不一定均匀。
核方法
核方法kernel methods (KMs)是一类模式识别的算法。其目的是找出并学习一组数据中的相互的关系。用途较广的核方法有支持向量机、高斯过程等。
核方法是解决非线性模式分析问题的一种有效途径,其核心思想是:首先,通过某种非线性映射将原始数据嵌入到合适的高维特征空间;然后,利用通用的线性学习器在这个新的空间中分析和处理模式。
相对于使用通用非线性学习器直接在原始数据上进行分析的范式,核方法有明显的优势:
首先,通用非线性学习器不便反应具体应用问题的特性,而核方法的非线性映射由于面向具体应用问题设计而便于集成问题相关的先验知识。
再者,线性学习器相对于非线性学习器有更好的过拟合控制从而可以更好地保证泛化性能。
还有,很重要的一点是核方法还是实现高效计算的途径,它能利用核函数将非线性映射隐含在线性学习器中进行同步计算,使得计算复杂度与高维特征空间的维数无关。


-
核方法优势
1)通用非线性学习器不便反应具体应用问题的特性,而核方法的非线性映射由于面向具体应用问题设计而便于集成问题相关的先验知识。
2)线性学习器相对于非线性学习器有更好的过拟合控制从而可以更好地保证泛化性能。
3)很重要的一点是核方法还是实现高效计算的途径,它能利用核函数将非线性映射隐含在线性学习器中进行同步计算,使得计算复杂度与高维特征空间的维数无关。