一、支持向量机
1.算法原理
从几何角度,对于线性可分数据集,支持向量机就是找距离正负样本都最远的超平面。相比于感知机,其解唯一且不偏不倚,泛化性能更好。
2.超平面
维超平面
性质如下:
(1)超平面方程不唯一;
(2)法向量和位移项
确定唯一的超平面;
(3)法向量垂直于超平面;
(4)法向量指向的那一半空间为正空间,另一半为负空间;
(5)任一点到超平面的距离公式为
3.几何间隔
给定数据集和超平面
,
,
,
,定义样本点
关于超平面的几何间隔为
。正确分类时
,反之
。定义数据集
关于超平面的几何间隔为所有样本点
关于超平面的几何间隔的最小值,即
。
4.支持向量机
给定线性可分数据集,支持向量机模型希望求得
于超平面的几何间隔
的达到最大的超平面,套上sign函数实现分类功能。sign函数为
令,
即
。令
,则
。在此条件下求
。
求拉格朗日函数。将
和
合并为
,求使
的一阶偏导数为0的
代回去得到最小值。
二、软间隔与支持向量回归
1.算法原理
在现实任务中,线性不可分才是最常见的,因此需要允许支持向量机犯错。
2.软间隔
从数学角度看,软间隔允许部分样本(尽可能少)不满足的间隔,因此可以将必须严格执行的约束条件转化为具有一定灵活性的损失,即
其中是0/1损失函数
是一个常数,用来调节损失的权重。用
代替
,得
引入松弛变量,令
,问题转化为
3.支持向量回归
支持向量回归采用一个以为中心,宽为
的间隔带来拟合样本,间隔带内不计损失,间隔带外样本到间隔带边界的距离为损失。
其中为
不敏感函数
引入松弛变量,令
,问题转化为
如果两边采用不同的松弛程度,问题为
本文知识点参考自周志华《机器学习》和https://www.bilibili.com/video/BV1Mh411e7VU?p=10&vd_source=bf244e193683634d74ec4694f6a67393并结合自己理解完成。