1、间隔与支持向量
以二维空间为例,要区分正、负两类样本点,需找到能够合理切分的线,线的一侧为正、另一侧为负,并且该划分方式应具备最佳鲁棒性(鲁棒,robust)。上升到多维空间,线即为超平面,最佳划分方式可提炼为优化问题。
正确分类应满足:
支持向量 → 距离超平面最近的样本点(上述不等式取等号的点,总能找到!) → 异类支持向量所处平行面间距(越大,鲁棒性越大)
提炼形成的原始优化问题:
SVM基本型:
2、对偶问题(将SVM基本型优化问题进一步改进)
进一步高效处理上述优化问题,利用拉格朗日乘子法得到其对偶问题:
求出α后,得到:
不等式约束需满足KKT条件:
上述得出:大部分的训练样本都无需保留,最终模型仅与支持向量有关。
优化求解:SMO(sequential minimal optimization)算法
- 选取一对需更新的变量αi和αj
- 固定此外的α参数,求解更新后的αi和αj(选取的αi和αj有一个不满足KKT条件,类似梯度下降)
3、核函数
前面均讨论线性可分问题,但对于线性不可分(异或)问题,则需升维!(针对样本不可分的有限维空间,一定存在使样本可分的映射高维空间)。高维空间下的对偶问题求解中内积计算困难,由此,想找到一个函数,使特征空间内积等于原始样本空间中通过该函数计算的结果,该函数即为核函数。高维空间往往不定,核函数亦不能确定(核函数选择成为支持向量机的最大变数),因此存在常用核函数(线性组合亦为如此)。
总结:低维不可分 → 高维可分 → 低维等价求解(类似于思路历程,最后依然回到低维求解,只是核函数的得出需要经过先升维、后降维的思考过程)
高维下对偶问题(内积计算难):
转为核函数低维求解:
常用核函数:
4、软间隔与正则化
不一定存在能够完美划分的超平面,需要增加宽松度,“应分尽分”,即软间隔。但为了分类精度,软间隔不能过度,衡量标准(优化目标)应引入惩罚项(损失函数l、正则化概念)。
软间隔SVM优化:
优化通式:第一项称为“结构风险”,描述模型性质(如描述超平面间隔大小);第二项称为“经验风险”,描述模型与训练数据契合度(如超平面完全可分,等于0);C用于对二者折中。经验风险有利于防止过拟合!!!
5、支持向量回归(SVR,support vector regression)
6、核方法
通过“核化”(即引入核函数)来将线性学习器拓展为非线性学习器
阅读材料(95年正式发表)
- SVM通常借助凸优化技术,提高效率是一直以来的研究重点(线性核SVM、非线性核SVM);
- SVM是针对二分类问题设计,多分类问题需推广使用;
- 核函数直接决定支持向量机和核方法的最终性能,但遗憾的是,核函数的选择是一个未决问题。
- 替代损失函数是否吻合原问题?这是替代损失的“一致性”问题。