本文来自我的个人博客 http://www.zhangshenghai.com/posts/35913/
线性支持向量机
线性支持向量机包含线性可分支持向量机和线性不可分支持向量机。
通常情况下,训练数据中有一些特异点,线性不可分意味着这些特异点不能满足函数间隔大于等于1的约束条件。为了解决这个问题,对每个样本点引进一个松弛变量 ,使得函数间隔加上松弛变量大于等于1,约束条件变为:
同时,对每个松弛变量 都支付一个代价 ,目标函数就由原来的 变成
其中为惩罚参数。
目标函数有两层含义:
- 使 尽量小即间隔尽量大
- 使误分类点的个数尽量小
这样就将线性不可分的支持向量机的学习问题变成如下凸二次规划问题:
学习得到分离超平面为:
以及相应的分类决策函数:
称为线性支持向量机。
学习的对偶算法
构建拉格朗日函数
引入拉格朗日乘子构建拉格朗日函数:
其中,以及为拉格朗日乘子向量。
求极小
对偶问题是拉格朗日函数的极大极小问题,首先求:
得
代入拉格朗日函数,得
求极大
求:
等价于
于是,可以通过求解此对偶问题而得到原始问题的解,进而确定分离超平面和决策函数。
线性可分支持向量机学习算法
输入:线性可分训练数据集
线性可分训练数据集 ,其中 ,,。
输出:分离超平面和分类决策函数
-
选择惩罚参数,构早并求解凸二次规划问题
求得最优解 -
计算
并选择的一个分量,计算
-
求得分离超平面
以及分类决策函数
支持向量
实例的几何间隔为:
则实例到间隔边界的距离为:
对于每一个 ,有:
合页损失函数
线性支持向量机学习还有另外一种解释,就是最小化以下目标函数:
线性支持向量机(软间隔)的合页损失函数为:
其中,“+”为取正函数:
网友评论