方差与偏差的定义

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

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

方差与偏差的数学公式

首先,以回归为例,模型的期望预测指针对不同数据集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代码)

机器学习中的方差与偏差相关推荐

  1. 机器学习中的方差和偏差理解

    一.Bias(偏差) & Variance(方差) 偏差:描述的是预测值(估计值)的期望与真实值之间的差距.偏差越大,越偏离真实数据,如下图第二行所示. 方差:描述的是预测值的变化范围,离散程 ...

  2. 【机器学习】理解方差、偏差且其泛化误差的关系

    https://blog.csdn.net/ChenVast/article/details/81385018 符号 涵义 测试样本 数据集 在数据集中的标记 的真实标记 训练集  学得的模型 由训练 ...

  3. 机器学习中的方差偏差分析(Bias-variance analysis)

    在预测问题中,给定一个新的数据点,预测错误的期望是多少? 假设数据是独立同分布地从一个潜在固定的概率分布中获取的,假设其分布函数为 P ( < x , y > ) = P ( x ) P ...

  4. 机器 学习中的方差和偏差

    2019独角兽企业重金招聘Python工程师标准>>> 对于已建立的某一机器学习模型来说,不论是对训练数据欠拟合或是过拟合都不是我们想要的,因此应该有一种合理的诊断方法. 首先 Er ...

  5. 机器学习中的统计学基础

    一.什么是统计学 是一门收集.整理和分析统计数据的方法科学 其目的是探索数据内在的数据规律性,以达到对客观事物的科学认识 统计学研究随机现象,以推断为特征,"由部分及全体"的思想贯 ...

  6. 【机器学习】什么是学习曲率?如何解决模型中方差和偏差问题?什么是迁移学习?什么是模型的精确率和召回率?

    系列文章目录 第十二章 Python 机器学习入门之构建机器学习系统 系列文章目录 文章目录 一.学习曲率 二.利用大型神经网络解决方差和偏差问题 三.机器学习开发的迭代循环 四.误差分析 五. 添加 ...

  7. 机器学习中过拟合、欠拟合与方差、偏差的关系是什么?

    机器学习中过拟合.欠拟合与方差.偏差的关系是什么? 过拟合(overfitting)与欠拟合(underfitting)是统计学中的一组现象.过拟合是在统计模型中,由于使用的参数过多而导致模型对观测数 ...

  8. 机器学习中的偏差和方差是什么?

    机器学习中的偏差和方差是什么? 机器学习全部是关于给定输入数据(X)和给定输出数据(Y),然后去寻找一个最佳映射函数(F),这个映射函数通常也被叫做目标函数. 任何机器学习算法的预测误差可以分解为三部 ...

  9. 转载:理解机器学习中的偏差与方差

    学习算法的预测误差, 或者说泛化误差(generalization error)可以分解为三个部分: 偏差(bias), 方差(variance) 和噪声(noise). 在估计学习算法性能的过程中, ...

最新文章

  1. golang sdk后端怎么用_Golang资深后端工程师需要了解的知识点
  2. 淘宝开源的代码质量检测工具!
  3. Discuz升级 Database Error : pre_common_syscache ADD PRIMARY KEY (cname)【解决办法】
  4. 设计模式六大原则(3)——依赖倒置原则
  5. ES6-9 对象密封4种方式、assign、取值函数的拷贝
  6. [转]Spring Cloud在国内中小型公司能用起来吗?
  7. JavaScript跨域问题分析与总结_直来直往_百度空间
  8. AI空谈情怀,也是要输的 | 人机辩论大战
  9. C语言判断一个数是不是质数(C笔记)
  10. Windows系统以及office等一键激活
  11. PMP-36项目风险管理
  12. 交流电桥———实验原理
  13. js pug 代码_Pug 代码 Code
  14. 星星之火OIer:编程社四连测总结
  15. (轉貼) 寶蘭開發工具部門將分割成完全獨立的子公司 (C/C++) (News)
  16. 【科普】72名图灵奖获得者的成就
  17. 可爱又迷人的反叛角色
  18. xls和 xlsx的区别 xlsx Excel文件怎么转换成 xls文件
  19. 现在不买房子、买股票是最后一批傻子
  20. reactos操作系统实现(1)

热门文章

  1. 基于Arduino的PS2机械臂遥控小车(L298N)傻瓜教程
  2. RK3566和S905X3/S905X4对比哪个好?
  3. SQL45 将titles_test表名修改为 titles_2017
  4. 计算机毕业设计Java银行贷款管理系统(系统+程序+mysql数据库+Lw文档)
  5. Oracle性能调整的三把利剑--ASH,AWR,ADDM
  6. 群贤路附近哪有计算机学校,群贤路口附近展览馆、会展中心
  7. Cocos2d-js cc.director介绍
  8. 新手学Python之学习官网教程(一: Whetting Your Appetite)
  9. [爆笑]吃了伟哥的公鸡
  10. python破解有道词典加密参数,简单GUI可视化界面操作(2020年5月)