机器学习中的方差与偏差

2023-10-26

方差与偏差的定义

方差:不同的训练数据集训练出的模型输出值之间的差异。

偏差:用所有可能的训练数据集训练出的所有模型的输出的平均值与真实模型的输出值之间的差异。

方差与偏差的数学公式

首先,以回归为例,模型的期望预测指针对不同数据集D,模型对样本的预测值取其期望,也叫做平均预测(average predicted)。数学表达形式如下:
在这里插入图片描述

使用样本数相同的不同训练集产生的方差度量了同样大小的训练集的变动所导致的学习性能的变化,即刻画了数据扰动所造成的影响。数学表达形式如下:
在这里插入图片描述
期望输出与真实标记的差别称为偏差度量了学习算法的期望预测与真实结果的偏离程度,即刻画了学习算法本身的拟合能力。数学表达形式如下:
在这里插入图片描述
各符号含义:
在这里插入图片描述

方差与偏差的重要性

方差的对象是多个模型,是相同分布的不同数据集训练出模型的输出值之间的差异。它刻画的是数据扰动对模型的影响。

偏差的对象是单个模型,是期望输出与真实标记的差别。它描述了模型对本训练集的拟合程度。

模型不能适配训练样本,有一个很大的偏差会出现欠拟合。
模型很好的适配训练样本,但在测试集上表现很糟,有一个很大的方差会出现过拟合。

越是越是简单的模型,偏差越大方差越小;越是复杂的模型,偏差越小方差越大,都会导致泛化误差高。

模型是高偏差低方差,导致欠拟合;模型是低偏差高方差,导致过拟合,两种情形泛化误差都很高。一个好的机器学习模型,偏差和方差不能太高也不能太低,两者比较折中的时候,模型的泛化误差最低。

偏差-方差是解释机器学习算法泛化性能的一种重要工具。

如何选择最优机器学习模型,使得它的泛化能力最好

从偏差角度即避免欠拟合。
1、寻找更好的特征 – 具有代表性。
2、用更多的特征 – 增大输入向量的维度。(增加模型复杂度)

从方差角度即避免过拟合
1、增大数据集合 – 使用更多的数据,减少数据扰动所造成的影响
2、减少数据特征 – 减少数据维度,减少模型复杂度
3、正则化方法
4、交叉验证法

特征提取和特征选择

特征提取(Feature Extraction):将机器学习算法不能识别的原始数据转化为算法可以识别的特征的过程。根据目前的一组特征集创建新的特征子集。
特征选择是指去掉无关特征,保留相关特征的过程,也可以认为是从所有的特征中选择一个最好的特征子集。特征选择本质上可以认为是降维的过程。从所有的特征集中选择一个特征子集。

特征提取实际上是把原始数据转化为机器学习算法可以识别的数值特征的过程,不存在降维的概念,特征提取不需要理会这些特征是否是有用的;而特征选择是在提取出来的特征中选择最优的一个特征子集。

特征提取主要方法:
主成分分析(PCA):将n维特征映射到k维上(k<n),这k维是全新的正交特征。这k维特征称为主成分,是重新构造出来的k维特征。
线性判别分析法(LDA):将高维的数据样本投影到最佳判别的矢量空间,保证样本数据在该空间中有最佳的可分离性。
多维尺度分析法(MDS):根据样本之间的距离关系或不相似度关系在低维空间里生成对样本的一种表示。
独立成分分析法( ICA ):利用统计原理把数据或信号分离成统计独立的非高斯的信号源的线性组合。
核主成分分析法(如核方法KPCA,KDA):先对样本进行非线性变换,再在变换空间进行主成分分析来实现在原空间的非线性主成分分析。
基于流型学习的方法:通过局部距离来定义非线性距离度量,在样本分布较密集的情况下可以实现各种复杂的非线性距离度量。

特征选择方法分类:
按搜索策略分类
在这里插入图片描述
按评价准则分类
在这里插入图片描述
特征选择三种常用的思路:

特征过滤(Filter Methods): 对各个特征按照发散性或者相关 性进行评分,对分数设定阈值或者选择靠前得分的特征。

优点:简单,快。

缺点:对于排序靠前的特征,如果他们相关性较强,则引入了冗 余特征,浪费了计算资源。 对于排序靠后的特征,虽然独立作 用不显著,但和其他特征想组合可能会对模型有很好的帮助, 这样就损失了有价值的特征。

方法:
Pearson’s Correlation,:皮尔逊相关系数,是用来度量 两个变量相互关系(线性相关)的,不过更多反应两个服从 正态分布的随机变量的相关性,取值范围在 [-1,+1] 之 间。
Linear Discriminant Analysis(LDA,线性判别分析):更 像一种特征抽取方式,基本思想是将高维的特征影到最佳鉴 别矢量空间,这样就可以抽取分类信息和达到压缩特征空 间维数的效果。投影后的样本在子空间有最大可分离性。
Analysis of Variance:ANOVA,方差分析,通过分析研究不 同来源的变异对总变异的贡献大小,从而确定可控因素对研 究结果影响力的大小。
Chi-Square:卡方检验,就是统计样本的实际观测值与理论 推断值之间的偏离程度,实际观测值与理论推断值之间的偏 离程 度就决定卡方值的大小,卡方值越大,越不符合;卡 方值越小,偏差越小,越趋于符合。

特征筛选(Wrapper Methods): 通过不断排除特征或者不 断选择特征,并对训练得到的模型效果进行打分,通过预测 效果评 分来决定特征的去留。

优点:能较好的保留有价值的特征。

缺点:会消耗巨大的计算资源和计算时间。

方法:
**前向选择法:**从0开始不断向模型加能最大限度提升模型效果的特征数据用以训练,直到任何训练数据都无法提升模型表现。
**后向剃除法:**先用所有特征数据进行建模,再逐一丢弃贡献最低的特征来提升模型效果,直到模型效果收敛。
**迭代剃除法:**反复训练模型并抛弃每次循环的最优或最劣特征,然后按照抛弃的顺序给特征种类的重要性评分。

嵌入法(Embedded Methods): 主要的特点就是通过不同的方法去计算不同特征对于模型的贡献。
方法:LassoElastic NetRidge Regression等。

正则化

正则化的目的是防止模型过拟合。原理是在损失函数上加上某些规则(限制),缩小解空间,从而减少求出过拟合解的可能性。
正则化的一般形式:
在这里插入图片描述
其中M 是参数的个数,也是模型特征的维数;q是正则项的阶数,L2正则项的q 为2。
假设数据源只有两个特征:
在这里插入图片描述
q不同取值时正则项的函数值图像:
在这里插入图片描述
正则化有多种方式,包括L0(向量中非零元素个数),L1(向量中元素绝对值之和),L2(向量的模)。但是L0范数的求解是个NP完全问题,而L1也能实现稀疏并且比L0有更好的优化求解特性而被广泛应用。L2范数指各元素平方和后开根的值,可令 [公式] 每个元素接近于0,虽然不如L1更彻底地降低模型复杂度,但是由于处处可微降低了计算难度。

加入正则项后,估计参数长度变短了,这在数学上被称为特征缩减(shrinkage)。
shrinkage指训练求解参数过程中考虑到系数的大小,通过设置惩罚系数,使得影响较小的特征的系数衰减到0,只保留重要特征的从而减少模型复杂度进而达到规避过拟合的目的。

常用的shinkage的方法有Lasso(L1正则化)和岭回归(L2正则化)等。

采用shrinkage方法的主要目的:一方面因为模型可能考虑到很多没必要的特征,这些特征对于模型来说就是噪声,shrinkage可以通过消除噪声从而减少模型复杂度;另一方面模型特征存在多重共线性(变量之间相互关联)的话可能导致模型多解,而多解模型的一个解往往不能反映模型的真实情况,shrinkage可以消除关联的特征提高模型稳定性。

降维

降维的用处:
随着数据维度不断降低,数据存储所需的空间也会随之减少。
低维数据有助于减少计算/训练用时。
一些算法在高维度数据上容易表现不佳,降维可提高算法可用性。
降维可以用删除冗余特征解决多重共线性问题。比如我们有两个变量:“一段时间内在跑步机上的耗时”和“卡路里消耗量”。这两个变量高度相关,在跑步机上花的时间越长,燃烧的卡路里自然就越多。因此,同时存储这两个数据意义不大,只需一个就够了。
降维有助于数据可视化。如前所述,如果数据维度很高,可视化会变得相当困难,而绘制二维三维数据的图表非常简单。

几种降维方法流程:
主成分分析PCA
在这里插入图片描述
多维缩放(MDS)
在这里插入图片描述
线性判别分析(LDA)
在这里插入图片描述
等度量映射(Isomap)
在这里插入图片描述
局部线性嵌入(LLE)
在这里插入图片描述
t-SNE
在这里插入图片描述
Deep Autoencoder Networks
在这里插入图片描述

参考资料:
偏差(Bias)与方差(Variance)
机器学习模型的偏差与方差、过拟合和欠拟合
Understanding the Bias-Variance Tradeoff
机器学习之数据清洗、特征提取与特征选择
机器学习入门讲解:什么是特征(Feature)和特征选择(Feature Selection)?
机器学习必知必会:正则化
机器学习 · 总览篇 VII 三要素之策略-正则化
【机器学习算法系列之三】简述多种降维算法
机器学习:降维技术完整指南
12种降维方法终极指南(含Python代码)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

机器学习中的方差与偏差 的相关文章

随机推荐

  • UVA-806 空间结构 题解答案代码 算法竞赛入门经典第二版

    GitHub jzplp aoapc UVA Answer 算法竞赛入门经典 例题和习题答案 刘汝佳 第二版 一道遍历四叉树的题目 在遍历的同时还要记住路径 做一些额外的操作 题目本身并不难 但是格式要求较多 比如输出路径时12个就换行 不
  • 恶意代码检测理论(静态与动态分析基础)

    什么是恶意代码 恶意代码 malicious code 又称为恶意软件 malicious software Malware 是能够在计算机系统中进行非授权操作的代码 恶意代码类型 1 蠕虫或计算机病毒 可以自我复制和感染其他计算机的恶意代
  • Linux逆向 - Mirai-上

    Mirai Mirai 变种 资料 源码 Mirai源码 xd0ol1 Mirai 源码分析 https paper seebug org 142 绿盟 MIRAI源码分析报告 http blog nsfocus net mirai sou
  • C#中结构体排序方法(Array.sort() + ICompare)

    感觉C 比C 麻烦许多 资料也少 找了半天竟然没有找到一个能用的结构体排序 这是待排序的结构体 public struct la public int id public int sb 首先 C 需要调用一个空间 类似头文件 using S
  • 自学移动端(APP)自动化测试

    国庆已经过去了 新的一周已经开始了 各地疫情又开始出现复发了 我们能做的就是做好个人防护 去哪报备 到哪扫码亮码 主动做核酸 随时做好家里存储至少一周的食物 拒绝过度防疫 拒绝过度恐慌 拒绝过度焦虑 有工作的最起码还有钱能到手 没有工作的可
  • 万字长文深度剖析AIGC技术!(网络架构&自监督)

    作者 派派星 编辑 CVHub 点击下方卡片 关注 自动驾驶之心 公众号 ADAS巨卷干货 即可获取 点击进入 自动驾驶之心 全栈算法 技术交流群 前景回顾 Welcome to back 在 万字长文带你解读AIGC入门篇 一文中 我们详
  • 计算机网络生活应用,浅谈计算机网络在生活中的应用

    摘要 进入21世纪科技高速发展 特别是计算机网络的进一步发展 计算机的应用更为普遍 计算机网络的应用已经渗透到社会的各个领域 正在日益改变着传统的工作 学习和生活的方式 推动着社会的科技发展 资源的共享 通信 这两种计算机网络最基本的功能在
  • elementUI的表格多选功能之规定禁止选择

    elementUI的el table表格多选功能之禁用多选 在进行表格的多选的时候我们会碰到那种 只允许部分内容可以被选择 不符合的要禁用多选框 这个时候就要用到elementUI el table的selectable 所以我们可以这样写
  • mysql导入sql文件、数据库时报错ERROR: ASCII '\0' appeared in the statement

    window环境下mysql导入sql文件时报错 ERROR ASCII 0 appeared in the statement 错误原因 文件编码不正确 解决办法 下载UltraEdia对文件进行转码 如果是使用powershell导出的
  • 计算机网络笔记整理2——物理层

    点此链接可跳转到 计算机网络笔记整理 目录索引页 参考书籍 计算机网络 第八版 谢希仁编著 文章目录 点此链接可跳转到 计算机网络笔记整理 目录索引页 物理层的基本概念 物理层接口的基本特性 数据通信的基础知识 信道的极限容量 信道能够通过
  • AODV协议概述

    AODV是由Nokia研究中心的Charles E Perkins和加利福尼亚大学Santa Barbara的Elizabeth M Belding Roryer以及Cincinnati大学Samir R Das等共同开发 已经被 IETF
  • JDBC总结

    JDBC 规范 Java DataBase Connectivity 标题 JDK 提供 Java链接数据库的规范 采用JDBC访问数据库的基本步骤 A 载入JDBC驱动程序 B 定义连接URL C 建立连接 D 创建Statement对象
  • 光纤工程的接续、施工与测试技术规范及要点

    1 光纤接续 1 光纤接续 光纤接续应遵循的原则是 芯数相等时 要同束管内的对应色光纤对接 芯数不同时 按顺序先接芯数大的 再接芯数小的 2 光纤接续的方法有 熔接 活动连接 机械连接三种 在工程中大都采用熔接法 采用这种熔接方法的接点损耗
  • 【Unity研究】进程、线程、对象池的关系

    目录 简要概括 名词解释 实例 进程 线程 对象池 实际使用 对象池实际操作 含代码 建立主线程以外的线程方法 在主线程中运行的生命周期 在副线程中运行的生命周期 简要概括 正在运行的Unity游戏就可以看做一个进程的实例 线程是进程内的执
  • 一种信息系统免疫安全防护架构

    摘 要 随着网络的快速发展 各类社会活动的信息化日益普及 但是网络安全威胁也更加复杂多变 使得信息系统处于安全威胁风险极高的环境中 严重威胁信息的共享和获取 针对核心信息系统的安全防护 提出了一种信息系统免疫安全防护架构 针对信息系统高可用
  • c语言 水仙花数

    水仙花数是指一个N位正整数 N 3 它的每个位上的数字的N次幂之和等于它本身 本题要求编写程序 计算所有N位水仙花数 输入格式 输入在一行中给出一个正整数N 3 N 7 输出格式 按递增顺序输出所有N位水仙花数 每个数字占一行 输入样例 3
  • mysql数据库设置远程连接权限,执行grant all privileges on *.* to 'root'@'%' identified by '密码' with grant optio报错

    mysql数据库设置远程连接权限 执行grant all privileges on to root identified by 密码 with grant optio报错 ERROR 1558 HY000 Column count of
  • 华为OD机试 - 字符个数统计(C++ & Java & JS & Python)

    目录 描述 输入描述 输出描述 示例1 示例2 C python Java 描述 编写一个函数 计算字符
  • linux AIO (异步IO) 那点事儿

    在高性能的服务器编程中 IO 模型理所当然的是重中之重 需要谨慎选型的 对于网络套接字 我们可以采用epoll 的方式来轮询 尽管epoll也有一些缺陷 但总体来说还是很高效的 尤其来大量套接字的场景下 但对于Regular File 来说
  • 机器学习中的方差与偏差

    方差与偏差的定义 方差 不同的训练数据集训练出的模型输出值之间的差异 偏差 用所有可能的训练数据集训练出的所有模型的输出的平均值与真实模型的输出值之间的差异 方差与偏差的数学公式 首先 以回归为例 模型的期望预测指针对不同数据集D 模型对样