偏差&方差

在统计学里面有两个衡量模型的重要指标,分别是偏差Bias 和 方差Variance。

  • 偏差:表示每次模型学习到的数据跟真实数据之间的差距。
  • 方差:表示每次模型学习到的数据之间的差距。

以下我们通过以下几幅图来讲解这两个指标的含义。

首先我们给定一个模型,训练5次,每次的结果分布我们这里表示为上图的黑色五角星。

如果5次的结果都在我们可容忍的结果范围内(上图的圆圈中),那么就说明结果的偏差bias比较低(如第1个圆圈,第3个圆圈);如果结果数据大多脱离了真实数据的范围,则其偏差比较高(如第2个圆圈,第4个圆圈)。

如果5次的结果的分布范围比较离散,那么就说明结果的方差Variance比较大(如第1个圆圈,第2个圆圈)。反之,如果结果分布比较集中,则防擦好比较低(如第3个圆圈,第4个圆圈)。

数学定义

  • 我们从真实数据f(x)f(x)f(x)中采样一组数据DDD,即
    D={(x1,y1),…,(xn,yn)}D=\left\{\left(x_{1}, y_{1}\right), \ldots,\left(x_{n}, y_{n}\right)\right\}D={(x1​,y1​),…,(xn​,yn​)} from y=f(x)+εy=f(x)+\varepsilony=f(x)+ε
    其中ε\varepsilonε表示noisy

  • 我们在DDD通过学习f^\hat{f}f^​ ,使得最小化均方误差MSE,从而我们希望它在 DDD的不同选择上产生很好的结果

为了加强模型对未知数据的泛化能力,我们会优化以下函数:
ED[(y−f^(x))2]=E[((f−E[f^])+ε−(f^−E[f^]))2]=(f−E[f^])2+E[ε2]+E[(f^−E[f^]))2]=Bias⁡[f^]2+Var⁡[f^]+σ2其中,E[f]=fE[ε]=0,Var⁡[ε]=σ2εis independent of f^\begin{aligned} \mathrm{E}_{D}\left[(y-\hat{f}(x))^{2}\right] &=\mathrm{E}\left[((f-\mathrm{E}[\hat{f}])+\varepsilon-(\hat{f}-\mathrm{E}[\hat{f}]))^{2}\right] \\ &\left.=(f-\mathrm{E}[\hat{f}])^{2}+\mathrm{E}\left[\varepsilon^{2}\right]+\mathrm{E}[(\hat{f}-\mathrm{E}[\hat{f}]))^{2}\right] \\ &=\operatorname{Bias}[\hat{f}]^{2}+\operatorname{Var}[\hat{f}]+\sigma^{2}\\ &其中,\\ &\mathrm{E}[f]=f \\ &\mathrm{E}[\varepsilon]=0, \operatorname{Var}[\varepsilon]=\sigma^{2} \\ &\varepsilon \text { is independent of } \hat{f} \end{aligned} ED​[(y−f^​(x))2]​=E[((f−E[f^​])+ε−(f^​−E[f^​]))2]=(f−E[f^​])2+E[ε2]+E[(f^​−E[f^​]))2]=Bias[f^​]2+Var[f^​]+σ2其中,E[f]=fE[ε]=0,Var[ε]=σ2ε is independent of f^​​

上式表示我们期望在不同的采样之间,每次学习到的数据结果都跟真实结果有较小的误差,大白话来讲就是泛化误差,即泛化能力的体现。可以看到我们优化的泛化误差关乎于三个指标,方差VarianceVarianceVariance,偏差BiasBiasBias,噪音σ\sigmaσ

  • 对于偏差,即每次训练出来结果取平均,跟真实结果之间的误差
  • 对于方差,即每次训练出来的结果,与平均结果之间的误差,用来衡量结果的波动大小

偏差与方差之间的Tradeoff

在之前的文章中提到过欠拟合和过拟合,这两个指标也和偏差、方差有关。

  • 一开始,我们的模型比较简单,模型可能学习不到什么信息,这时候对数据的拟合能力比较差,偏差比较高,这个现象就定义为欠拟合。
  • 随着模型复杂度的升高,对数据的拟合能力逐渐增强,这时候偏差就会越来越小,但是方差也会随之升高。
  • 当模型复杂度过高时,它对原数据的拟合越来越完美,但是随之带来的是模型没法泛化新来的未知数据,就会造成方差过高,这个现象就定义为过拟合。
  • 在欠拟合与过拟合之间,可以寻找一个平衡点(如上图中的Best),这时候我们可以获取一个相对较低的偏差和方差,从而我们的泛化误差取到最低点。

如何降低偏差和方差?

降低偏差

  • 偏差的出现,根本原因在于模型对原数据的拟合能力不够,这时候我们可以增加模型的复杂度,如深度学习中增加隐藏层的数量和神经元的数量;或者在模型选择时,选择一些可选超参数较多的模型(一般该类模型复杂度较高)

降低方差

  • 方差的出现,根本原因在于模型对原数据的拟合能力过于强大,导致模型在面对新数据时反而“无从下手”。就好比一个学生期末考之前,把所有的题型都背下来了(过拟合),但是在真正期末考的时候(新数据),题型不一样,却考出了一个不理想的成绩(泛化能力差)。
  • 降低方差的方法:选择更简单点的模型,弱化过于强大的学习能力;增加正则项,降低特征间的权重,防止模型训练和预测受某个特征的偏重影响。

弱化噪点影响

  • 噪点来自于数据,所以在做数据采集的时候,要加强数据质量的把控。

模型层面降低偏差和方差

  • 可以选择集成学习的模型,如Xgboost,Lightgbm等。通过其中的bagging或boosting等思想来降低偏差的方差。

总结

  • 要想使得模型有较好的泛化能力,就得关注三个指标:方差VarianceVarianceVariance,偏差BiasBiasBias,噪音σ\sigmaσ
  • 集成学习的方法,可以有效地降低偏差和方差。

机器学习基础-方差 偏差相关推荐

  1. 西瓜书+实战+吴恩达机器学习(二)机器学习基础(偏差、方差、调试模型技巧)

    文章目录 0. 前言 1. 偏差方差的解决方法 2. 高偏差高方差的学习曲线 3. 调试模型技巧 如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔,我会非常开心的~ 0. 前言 泛化误差可分解为 ...

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

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

  3. 吴恩达机器学习作业5.偏差和方差

    机器学习作业 5 - 偏差和方差 import numpy as np import scipy.io as sio import scipy.optimize as opt import panda ...

  4. 吴恩达机器学习课后作业——偏差和方差

    1.写在前面 吴恩达机器学习的课后作业及数据可以在coursera平台上进行下载,只要注册一下就可以添加课程了.所以这里就不写题目和数据了,有需要的小伙伴自行去下载就可以了. 作业及数据下载网址:吴恩 ...

  5. 机器学习数学基础(偏差方差、最大似然估计、贝叶斯统计、MAP)

    目录 偏差方差 一致性 最大似然估计 贝叶斯统计 最大后验概率 如果这篇文章对你有一点小小的帮助,请给个关注喔~我会非常开心的~ 偏差方差 偏差的定义如下: 如果  ,那么估计量被称为无偏估计. 如果 ...

  6. 一次性掌握机器学习基础知识脉络 | 公开课笔记

    来源 | AI科技大本营在线公开课 嘉宾 | 张相於 整理 | suiling 本次公开课AI科技大本营邀请到了阿里巴巴的高级算法专家张相於,他将从数据的概率分布开始介绍机器学习核心概念之间的有机关系 ...

  7. 1.3 机器学习基础-深度学习第二课《改善深层神经网络》-Stanford吴恩达教授

    ←上一篇 ↓↑ 下一篇→ 1.2 偏差/方差 回到目录 1.4 正则化 机器学习基础 (Basic "Recipe" for Machine Learning) 上节课我们讲的是如 ...

  8. 方差偏差权衡_偏差偏差权衡:快速介绍

    方差偏差权衡 The bias-variance tradeoff is one of the most important but overlooked and misunderstood topi ...

  9. 水很深的深度学习-Task02机器学习基础

    机器学习基础 目录 机器学习基础 一.什么是机器学习? 如何寻找这个函数? 机器学习三板斧 学习路线 二.机器学习算法的类型 1. 有监督学习 2. 无监督学习 3. 强化学习 4.机器学习算法的系统 ...

最新文章

  1. python时间序列因果检验_Python Statsmodels的时间序列Ljung_Box检验
  2. 03_设置轴标签和范围、轴的标签(Labels on Axes)、定义轴的范围、使用linspace定义X值 (“linspace“ to Define X Values)
  3. Yaml锚点和别名*
  4. 调整DOSBOX窗口大小
  5. idea拉出Output窗口和还原窗口
  6. java考试系统倒计时的实现_(Java程序设计)第11章设计考试系统中的倒计时.ppt
  7. Kettle工具——Spoon、Kitchen、Pan、Carte
  8. 记测试双十一秒杀活动的坎坷历程
  9. 賀旺囍影_EDIUS6.06安装版 【实机测试】
  10. 失传千年AE特效真经(二)
  11. 【图像分割】基于区域的重叠椭圆拟合实现细胞分割附matlab代码
  12. .net framework 官方下载地址
  13. kal渗透----缓冲区溢出个人笔记
  14. 丰县中等专业学校计算机专业,江苏省丰县中等专业学校2020
  15. mysql死锁的原因及解决方法_mysql死锁的原因及解决方法
  16. 去掉FreeMind的红色波浪线,关闭拼写检查
  17. 基于InChat的SpringBoot版本通讯聊天数据存储Demo,附带详细流程说明
  18. webgame qlj
  19. 互站源码论坛卖家都是骗子以后大家不要上当
  20. filebeat7.7.0相关详细配置预览- Paths

热门文章

  1. java.io.FileNotFoundException: D:\hadoop (拒绝访问。)
  2. 微信小程序 授权地理位置被拒绝后 wx.getLocation接口调用失败问题
  3. 2022年自考专业(公关关系)公关关系语言练习题
  4. 安卓Hook微信-计步器、万能骰子、自动回复、反撤回、抢红包思路分享
  5. 《塔木德智慧全书》(之三)
  6. An error occurred. Sorry, the page you are looking for is currently unavailable. Please try again
  7. 电源辐射整改 30MHZ-50MHZ的EMI辐射理论分析
  8. java 0l_关于java:[L数组符号-它来自哪里?
  9. C语言队列函数中pop,C语言_队列的基本操作
  10. 希捷的2种企业级硬盘