支持向量:假设超平面能将训练样本正确分类,即对于
,若
,则有
;若
,则有
。令
如图所示,距离超平面最近的这几个训练样本使上式等号成立,则被称为“支持向量”。
支持向量机(SVM)基本型:为了最大化间隔,仅需最大化,等价于最小化
,目标函数如下:
SVM算法原理:从几何角度,对于线性可分数据集,支持向量机就是找距离正负样本都最远的超平面,相比于感知机,其解释是唯一的,且不偏不倚,泛化性能更好。
支持向量机基本型的拉格朗日函数形式:
其中.
支持向量机基本型的对偶问题与KKT条件:
对偶问题
上述过程需满足KKT条件,即要求
支持向量机的一个重要性质:训练完成后,大部分的训练样本都不需要保留,最终模型仅与支持向量有关。
SMO算法:SMO算法是求解对偶问题这种二次规划问题的高效算法,其基本思路是先固定之外的所有参数,然后求
上的极值。由于存在约束
,若固定
之外的其他变量,则
可由其他变量导出。于是,SMO每次选择两个变量
和
,并固定其他参数。在参数初始化后,SMO不断执行如下两个步骤直至收敛:
(1)选取一对需更新的变量和
;
(2)固定和
以外的参数,求解对偶问题获得更新后的
和
。
值得注意的是,SMO 采用了一个启发式:使选取的两变量所对应样本之间的问隔最大。这样的两个变量有很大的差别,与对两个相似的变量进行更新相比,对它们进行更新会带给目标函数值更大的变化。
核函数的概念:原始样本空间内也许并不存在一个能正确划分两类样本的超平面,此时可将样本从原始空间映射到一个高维的特征空间,使得样本在这个空间内线性可分。令表示将
映射后的特征向量,于是在特征空间中划分超平面所对应的模型可表示为
然而,求解上述模型的目标函数涉及到,直接计算十分困难。因此,为了避免这个障碍,可以设想这样一个函数:
即和
在特征空间的内积等于它们在原始样本空间中通过函数
计算的结果。函数
就是“核函数”。
核函数的定理:令为输入空间,
是定义在
上的对称矩阵,则
是核函数当且仅当对于任意数据
,“核矩阵”
总是半正定的:
该定理表明,只要一个对称函数所对应的核矩阵半正定,它就能作为核函数使用。
几种常用的核函数:
软间隔的概念:允许某些样本不满足约束
当然,在最大化间隔的同时,不满足约束的样本应尽可能少。
软间隔条件下的新目标函数:
其中是一个常数,
是“0/1损失函数”
当无穷大时,所有样本满足约束;当
取有限值时,上式允许一些样本不满足约束。
替代损失函数:由于数学性质不太好,所以人们常用其他函数来代替
,称为“替代损失函数”。这种替代损失函数一般具有较好的数学性质,如是凸的连续函数且是
的上界。常用的替代损失函数如下:
软间隔支持向量机目标函数:
其中是松弛变量,表示该样本不满足约束的程度。
软间隔支持向量机的拉格朗日函数形式:
其中是拉格朗日乘子。
软间隔支持向量机的对偶问题与KKT条件:
可以看出,软间隔与硬间隔下的对偶问题的唯一差别在于对偶变量的约束不同,前者是,后者是
。
上述过程需满足KKT条件,即要求
软间隔支持向量机的最终模型仅与支持向量有关,即通过采用hinge损失函数仍保持了稀疏性。
正则化:
其中 称为“结构风险”,用于描述模型
的某些性质;第二项
称为“经验风险”,用于描述模型与训练数据的契合程度;
用于对二者折中。从另一个角度看,上式也可以称为在“正则化”问题,
称为正则化项,
称为正则化常数。
范数是常用的正则化项
(1)范数
倾向于
的分量取值尽量均衡,即非零分量个数尽量稠密。
(2)范数
和
范数
倾向于
的分量尽量稀疏,即非零分量个数尽量少。
支持向量回归(SVR)假设我们能容忍与
之间最多有
的偏差,即仅当
与
之间的差别绝对值大于
时才计算损失。
SVR基本形式:
其中为正则化常数,
为
不敏感损失函数
SVR目标函数:
其中是松弛变量。
SVR的拉格朗日函数形式:
其中为拉格朗日乘子。
SVR的对偶问题与KKT条件:
上述过程需满足KKT条件,即要求
SVR的解:
实践中通常选取多个(或所有)满足条件的样本求解
后取平均值。
,