[模式识别复习笔记] 第4章 SVM
1. SVM 简介
1.1 SVM 支持向量机
给定如图所示的线性可分训练集,能够将两类样本正确分开的直线很多。 感知机算法可以找到一条直线,且找到的直线不唯一。
然而感知机无法确定哪一条直线最优,但是
1.2 间隔
-
点到超平面的垂直距离
给定一个分割超平面
,线性判别函数 将整个特征空间分为两个决策域: 和 。 -
间隔
给定一个训练数据集
, , 。超平面
关于 样本点 间隔:超平面
关于训练集 的 间隔:即 所有样本点的间隔中的最小间隔。
2. 线性 (硬间隔)
2.1 问题描述

PS:上图中左图的间隔小于右图中的间隔,所以右图的超平面更优。
间隔最大化,即将训练集中距离超平面最近的样本点,能够以最大的置信度分类。(最小间隔最大化)。 训练集中具有 最小间隔的样本点 称为 支持向量。

2.2 形式化描述
-
假设训练数据集线性可分
-
找到一个划分超平面
,满足:-
正确划分训练样本。即
,有 。 -
最大化训练集上的间隔(最小间隔最大化)
-
-
由
,则: -
令
,则: -
原优化问题等价于:
-
由于:
原问题等价于:
此问题为凸二次规划问题。由此得到 硬间隔最大化 的表达式。
求解上述优化问题得到最优解
训练集中具有 最小间隔的样本点 称为 支持向量。满足:
故支持向量到划分超平面的距离为
-
对于正类(
)的支持向量,有: -
对于负类(
)的支持向量,有:
在决定分类决策超平面的位置时,只有支持向量起作用,其它样本点不起作用,即使删除这些样本点,也不影响分类决策边界。所以这种分类模型称为“支持向量机”。
2.3 对偶优化问题
-
原始优化问题: -
推导出其 对偶优化问题:
引入拉格朗日乘子
,定义拉格朗日函数:对偶优化目标函数为:
令
关于 和 的偏导数分别为 :带入拉格朗日函数 得:
化简得到:
由于
等价于 ,故 的对偶优化问题为: -
通过上述对偶问题求解出
,由此构造出划分超平面的 和将
带入得:由
条件得到:-
对偶互补条件:
-
原问题约束:
-
对偶约束:
根据上述的
条件可得,至少有一个拉格朗日乘子 。若所有拉格朗日乘子都满足
,则 ,这不是问题的可行解,故矛盾。由
,得 ,结合 可得: -
-
综上,若
对偶问题得最优解为 ,则存在 ,由此求得最优解:
最后,得到划分超平面
3. 线性 (软间隔)
3.1 问题描述
数据集中存在少量的噪声/异常样本点,导致数据集线性不可分。

3.2 形式化描述
数据集中存在少量样本点
也就是 软间隔最大化 的表达式。
对于近似线性可分的数据集,绝大部分样本点对应的松弛变量
3.3 对偶优化问题
-
原始优化问题:
-
推导出 对偶优化问题:
- 定义拉格朗日函数,引入拉格朗日乘子
, :
- 对偶优化目标函数:
令
关于 的偏导数分别为 :带入拉格朗日函数 得:
整理得到:
(可以发现和线性SVM一样的表达式)
由于
等价于 ,故 的对偶优化问题为:去掉有关
的信息,由 ,可以将对偶优化问题化简如下: - 定义拉格朗日函数,引入拉格朗日乘子
-
通过上述对偶问题求解出
,由此构造出划分超平面的 和将
带入得:由
条件得到:-
对偶互补条件:
-
原问题约束:
-
对偶约束:
根据上述条件可得:
-
若
,则 -
若
,则 ,故
故当
时,有 。 -
-
综上,若
对偶问题得最优解为 ,则存在 ,由此求得最优解:
最后,得到划分超平面
3.4 推论

-
若
,则 。此时
对应的 能以充分的置信度被正确分类。 -
若
,则 。对应的
是支持向量,在间隔边界上。 -
若
,则 。-
若
,则 ,表明 可以被正确分类,但没有充分的置信度。 -
若
,则 ,此时对应的样本点被 错误分类。
-
4. 核函数
4.1 问题描述
有时候问题本质上就线性不可分,原本的样本空间不存在一个可以正确划分两类样本的划分超平面。而需要一个超曲面才可以将样本分开。

对于 线性不可分 问题,可以将样本空间映射到一个 更高维度 的空间,使得样本在此特征空间内线性可分。(广义线性化)
4.2 对偶优化问题
将原始空间样本
其对应的 对偶问题 为:
综上,若
最后,得到划分超平面
式中涉及到计算
所以这里可以设想一个函数:
即
由此 对偶问题 可以重写为:
由此求得最优解:
分类决策函数为:
4.3 常用核函数
然而一般情况下,我们不知道
令
只要一个对称函数对应的核矩阵半正定,其可作为 核函数 使用。
常用核函数:
- 线性核函数
- 多项式核函数
- 高斯核函数(也称径向基RBF函数)
- 拉普拉斯核函数*
核函数*
上述的核函数,也可以通过线性组合等方式,组成新的核函数。
一切都是命运石之门的选择,本文章来源于博客园,作者:MarisaMagic,出处:https://www.cnblogs.com/MarisaMagic/p/18257073,未经允许严禁转载
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 提示词工程——AI应用必不可少的技术
· 地球OL攻略 —— 某应届生求职总结
· 字符编码:从基础到乱码解决
· SpringCloud带你走进微服务的世界