当前位置: 首页 > article >正文

《机器学习》支持向量机

目录

结构风险(Structural Risk)和经验风险(Empirical Risk)

经验风险(Empirical Risk): 

结构风险(Structural Risk): 

L0范数: L0范数是指向量中非零元素的个数。它通常用于特征选择,因为它可以迫使模型选择最少的非零特征。

解得稀疏性

稀疏性

SVM的稀疏性

为什么线性SVM的解具有稀疏性


结构风险(Structural Risk)和经验风险(Empirical Risk)

在机器学习和统计学习理论中,结构风险(Structural Risk)和经验风险(Empirical Risk)是评估模型性能的两个重要概念。

经验风险(Empirical Risk): 

经验风险是指模型在训练数据集上的平均损失。它衡量的是模型在训练数据上的表现,通常通过损失函数(如平方损失、交叉熵损失等)来计算。经验风险越小,表示模型在训练数据上的拟合程度越高。公式可以表示为:

Remp​(f)=N1​i=1∑N​L(yi​,f(xi​))

其中,�(��,�(��))L(yi​,f(xi​)) 表示单个样本的损失,�N 是训练样本的数量,(��,��)(xi​,yi​) 是第 �i 个训练样本及其标签。

结构风险(Structural Risk): 

结构风险是在经验风险的基础上加入了一个正则化项(Regularization Term),用来衡量模型的复杂度。它考虑了模型的泛化能力,旨在防止模型过拟合。结构风险可以表示为:

Rstruct​(f)=Remp​(f)+λJ(f)

这里,����(�)Remp​(f) 是经验风险,�(�)J(f) 是模型的复杂度(例如,可以是模型权重向量的范数),而 �λ 是正则化参数,用于平衡经验风险和模型复杂度。

结构风险最小化是统计学习中的一个重要原则,它要求在保证模型复杂度适中的前提下,最小化经验风险,从而使模型在未知数据上也能有较好的表现。这种方法可以提高模型的泛化能力,避免在训练集上过度拟合而在测试集上表现不佳。

在机器学习和优化问题中,L0、L1、L2和L∞范数是常用的几种范数,它们用于衡量向量或矩阵的某些特性,通常用于正则化以防止过拟合。以下是这些范数的定义:

  1. L0范数: L0范数是指向量中非零元素的个数。它通常用于特征选择,因为它可以迫使模型选择最少的非零特征。

∥�∥0=Number of non-zero elements in �∥x∥0​=Number of non-zero elements in x

  1. L1范数(曼哈顿范数): L1范数是指向量中所有元素的绝对值之和。它常用于稀疏编码和压缩感知,因为它可以促进稀疏解,即使得许多系数为零。

∥�∥1=∑�=1�∣��∣∥x∥1​=i=1∑n​∣xi​∣

  1. L2范数(欧几里得范数): L2范数是指向量中所有元素的平方和的平方根。它是欧几里得空间中两点之间距离的度量。在机器学习中,L2范数常用于正则化,以防止过拟合。

∥�∥2=∑�=1���2∥x∥2​=i=1∑n​xi2​​

  1. L∞范数(切比雪夫范数): L∞范数是指向量中所有元素绝对值中的最大值。它衡量的是向量的最大偏差。

∥�∥∞=max⁡�∣��∣∥x∥∞​=imax​∣xi​∣

在实际应用中,这些范数的选择取决于具体的问题和需求。例如:

  • L0范数通常不直接用于优化问题,因为它不是一个凸函数,因此难以优化。
  • L1范数在求解问题时更容易得到稀疏解,因此适用于特征选择。
  • L2范数在优化问题中更容易处理,因为它是一个凸函数,并且有助于防止过拟合。
  • L∞范数在处理具有鲁棒性要求的优化问题时非常有用,因为它限制了最大偏差。

l0  l1都致力于让非零元小。

解得稀疏性

支持向量机(Support Vector Machine, SVM)的解在某些情况下可以具有稀疏性,这主要取决于所使用的核函数和正则化参数。

稀疏性

稀疏性指的是在解中只有少数几个参数是非零的,而大多数参数都是零。在机器学习中,稀疏性通常是一个受欢迎的特性,因为它意味着模型可以只用少数几个重要的特征来做出预测,这样可以提高解释性、减少计算量,并且在某些情况下还能提高泛化能力。

SVM的稀疏性

  1. 线性SVM

    • 当数据是线性可分的,或者使用线性核时,SVM的解通常具有稀疏性。这是因为线性SVM的目标是找到一个最大间隔的决策边界,这个边界只与支持向量(那些最接近决策边界的数据点)有关,而与其他数据点无关。
    • 在线性SVM中,解的稀疏性体现在最终的模型权重中:只有支持向量的贡献非零,而其他数据点的拉格朗日乘子(或权重)将为零。
  2. 非线性SVM

    • 当使用非线性核(如多项式核或径向基函数核)时,SVM的解可能不具有稀疏性。这是因为非线性核可以创建非常复杂的决策边界,这些边界可能涉及所有数据点,从而导致所有拉格朗日乘子都不为零。
    • 尽管如此,通过适当地选择正则化参数C(惩罚项),可以鼓励模型寻找一个更稀疏的解,即尽可能减少非零拉格朗日乘子的数量。

为什么线性SVM的解具有稀疏性

线性SVM通过以下优化问题来找到最大间隔的决策边界:

在最优解中,大多数数据点不会位于边界上,因此它们的拉格朗日乘子(在优化问题中引入的用于处理约束的乘子)将为零。只有那些位于边界上的点(即支持向量)的拉格朗日乘子不为零,它们决定了最优的�w和�b。因此,SVM的解是稀疏的,因为它只依赖于少数几个支持向量。

总的来说,线性SVM的解通常具有稀疏性,因为它们只与支持向量有关,而非线性SVM的稀疏性则取决于核函数和正则化参数的选择。

 是的,每个数据点在支持向量机(SVM)的优化问题中都有其对应的拉格朗日乘子,但是并不是所有的拉格朗日乘子都是非零的。


http://www.kler.cn/a/448599.html

相关文章:

  • 第一次面试到第一份offer的经历分享
  • 砂轮磨料基础知识及发展学习笔记
  • 【MySQL】数据库 Navicat 可视化工具与 MySQL 命令行基本操作
  • 中国量子计算机领域的发展现状与展望
  • flink实现复杂kafka数据读取
  • 练习题 最小栈
  • Docker日志与监控
  • Maven的介绍以及安装,仓库的使用和在idea使用maven
  • [Unity Shader]【游戏开发】【图形渲染】Shader数学基础7-矩阵变换概览及其几何意义
  • 前端路由模式详解:Hash 模式、History 模式与 Memory 模式
  • 深度学习作业十一 LSTM
  • 【LeetCode】52、N 皇后 II
  • Python的sklearn中的RandomForestRegressor使用详解
  • MySQL InnoDB 存储引擎 Redo Log(重做日志)详解
  • KMP模式匹配算法——详细讲解、清晰易懂
  • THM:Vulnerability Capstone[WriteUP]
  • Python中SKlearn的K-means使用详解
  • Flutter组件————Container
  • Windows下使用git配置gitee远程仓库
  • 【C语言】后端开发。数据一致性和分布式锁
  • 基于springboot的电影订票系统
  • SpringMVC的URL组成,以及URI中对/斜杠的处理,解决IllegalStateException: Ambiguous mapping
  • 在 Sanic 应用中使用内存缓存管理 IP 黑名单
  • 霍尔传感器在汽车车门把手上的应用
  • 前端安全——敏感信息泄露
  • Redis——缓存穿透