【机器学习西瓜书学习笔记——支持向量机】

机器学习西瓜书学习笔记【第六章】

第六章 支持向量机

6.1 间隔与支持向量

**支持向量:**最靠近两条虚边界的向量叫做支持向量。

**间隔:**两个异类支持向量到超平面的距离之和称为间隔。

硬间隔最大化

支持向量机求的最优分离超平面,不仅要分类正确,而且要使得间隔最大化。

6.2 对偶问题

6.3核函数

非线性数据(非线性问题------>线性问题)

原理是将数据映射到高维数据,在高维空间线性可分。

从低维转换到高维,\\Phi 是转换函数。

定义

原始空间 中的向量作为输入向量 ,并返回特征空间 (转换后的数据空间,可能是高维)中向量的点积 的函数称为核函数

构建核函数

线性核函数

高斯核函数

应用

K近邻、支持向量机

优劣

优势
  • 核函数在某些特征空间通过点积的方式计算,但无需知道特征空间以及转换函数。这就是核函数的有用之处。
  • 使在高维空间中以极低的计算成本寻找线性关系成为可能,这是因为在特征空间中输入图像的内积可以在原始空间中计算出来
  • 不需要数据是真实的向量,可用于字符串、时序数据
劣势
  • 为给定的问题选择核函数可能很困难
  • 对于大型数据集,可能无法存储整个核函数矩阵,可能需要重新计算核函数

6.4 软间隔与正则化

软间隔

目的:提高模型对噪声和异常值的鲁棒性,从而获得更好的泛化能力。

正则化

防止出现过拟合现象

6.5支持向量回归(SVR)

SVM是要使到超平面最近的样本点的"距离"最大

SVR是要使到超平面最远的样本点的"距离"最小

函数间隔和几何间隔

两虚线之间的几何间隔 r=\\frac{d}{\\left \| W \\right \| } ,这里的d就为两虚线之间的函数间隔

SVR的原理

SVR在线性函数两侧制造了一个"间隔带",间距为ϵ(也叫容忍偏差,是一个由人工设定的经验值),对所有落入到间隔带内的样本不计算损失,也就是只有支持向量才会对其函数模型产生影响,最后通过最小化总损失和最大化间隔来得出优化后的模型。

如图所示,"管道"内样本对应 a = 0 a=0 a=0,为非支持向量;

位于"管壁"上的为边界支持向量, 0 < a < ϵ 0<a<ϵ 0<a<ϵ

位于"管道"之外的为非边界支持向量, a > ϵ a>ϵ a>ϵ (异常检测时,常从非边界支持向量中挑选异常点)

SVR数学模型

线性硬间隔SVR

不允许样本分类错误。

线性软间隔SVR

允许一定量的样本分类错误。

原因:在现实任务中,往往很难直接确定合适的 ϵ \epsilon ϵ ,确保大部分数据都能在间隔带内,而SVR希望所有训练数据都在间隔带内,所以加入松弛变量 ξ \xi ξ,从而使函数的间隔要求变的放松,也就是允许一些样本可以不在间隔带内。

相关推荐
润 下5 分钟前
C语言——深入解析C语言指针:从基础到实践从入门到精通(二)
c语言·开发语言·经验分享·笔记·学习·程序人生
知识分享小能手39 分钟前
微信小程序入门学习教程,从入门到精通,电影之家小程序项目知识点详解 (17)
前端·javascript·学习·微信小程序·小程序·前端框架·vue
特种加菲猫1 小时前
网络协议分层:解密TCP/IP五层模型
linux·网络·笔记
风和先行1 小时前
Android Vibrator学习记录
学习
小秋学嵌入式-不读研版1 小时前
C65-枚举类型
c语言·开发语言·笔记
三三木木七1 小时前
AI超级智能体学习笔记
笔记·学习
长桥夜波1 小时前
【第十七周】机器学习笔记06
人工智能·笔记·机器学习
深栈1 小时前
机器学习:支持向量机
算法·机器学习·支持向量机
zy_destiny2 小时前
【工业场景】用YOLOv8实现人员打电话识别
人工智能·python·深度学习·yolo·机器学习·计算机视觉·目标跟踪
一只小风华~2 小时前
Vue Router 的三种历史模式详解
前端·javascript·vue.js·笔记·学习·前端框架·ecmascript