简介:
SVM是一种二分类模型。SVM的学习策略就是间隔最大化,可形式化为一个求解凸二次规划的问题,也等价于正则化的合页损失函数的最小化问题。支持向量机的学习算法是求解凸二次规划的最优化算法。
线性可分支持向量机
当训练数据集线性可分时,存在无数个分离超平面可将两类数据正确分开。感知机利用误分类最小的策略求得分离的超平面,这时解有无穷多个。而线性可分支持向量机利用间隔最大化求解最优分离超平面,这时,解是唯一的。
函数间隔和几何间隔
函数间隔在w与b变化时也会变化。(函数间隔可为正可为负)
而几何间隔在w与b变化时不会发生变化,因为它在函数间隔的基础上除以了w的二范数。
线性可分支持向量机学习算法————最大间隔法
等价于求解约束最优化问题
求得最优解
支持向量和间隔边界
在线性可分的情况下,训练数据集的样本点中与分离超平面距离最近的样本点的实例称为支持向量。支持向量是使约束条件等号成立的点,即:
对于yi=+1的正例点,支持向量在超平面
对于yi=-1的正例点,支持向量在超平面
这两个超平面之间的距离称为间隔。间隔依赖于分离超平面的法向量w,等于2/||w||。这两个超平面称为间隔边界。
在决定分离平面超平面时只有支持向量起作用,而其他实例点并不起作用。由于支持向量在确定分离超平面中起决定性作用,所以将这种分类模型称为支持向量机。支持向量机的个数一般很少,所以支持向量机由很少的“重要的”训练样本确定。
学习的对偶算法
Soft-Margin SVM
对于线性不可分的样本,说明某些样本点(xi,yi)不能满足函数间隔大于等于1的约束条件。为解决这个问题,可以对每个样本点(xi,yi)引进一个松弛变量
使得函数间隔加上松弛变量大于等于1。这样约束条件变为
合页损失函数
线性支持向量机还有另外一种解释,就是最小化以下目标函数:
目标函数的第一项是经验损失或经验风险,函数
称为合页损失函数。下标“+”表示以下取正值的函数。
所以当(xi,yi)被正确分类,且函数间隔(确信度)大于1时,损失为0,否则损失是
目标函数的第二项是系数为λ的w的L2范数,是正则化项。
非线性支持向量机和核函数
核技巧:首先使用一个变换,将原空间的数据映射到新空间,然后在新空间里用线性分类学习方法从训练数据中学习分类模型。
核技巧应用到支持向量机。其基本想法就是通过一个非线性变换将输入空间(欧式空间Rn或离散空间集合)对应于一个特征空间(希尔伯特空间H),使得在输入空间Rn中的超曲面模型对应于特征空间h中的超平面模型(支持向量机)。这样,分类问题的学习任务通过在特征空间中求解线性支持向量机就可以完成。
核函数定义
可以理解为线性变换 是一个等距变换
正定核
常用核函数
序列最小最优化算法(SMO)
(SMO推导太复杂了,这里就不写出来了QAQ)