过拟合(overfitting)与欠拟合(underfitting)是统计学中的一组现象。过拟合是在统计模型中,由于使用的参数过多而导致模型对观测数据(训练数据)过度拟合,以至于用该模型来预测其他测试样本输出的时候与实际输出或者期望值相差很大的现象。欠拟合则刚好相反,是由于统计模型使用的参数过少,以至于得到的模型难以拟合观测数据(训练数据)的现象。

我们总是希望在机器学习训练时,机器学习模型能在新样本上很好的表现。过拟合时,通常是因为模型过于复杂,学习器把训练样本学得“太好了”,很可能把一些训练样本自身的特性当成了所有潜在样本的共性了,这样一来模型的泛化性能就下降了。欠拟合时,模型又过于简单,学习器没有很好地学到训练样本的一般性质,所以不论在训练数据还是测试数据中表现都很差。

举一个简单的例子吧,我们来看一下下面这一张图。我们有一些数据样本,大致呈二次函数形式,可以看出,用二次函数来做回归拟合是最合适的。如果我们不呢?比如,我们用最高次为6次的函数来拟合,我们可能会得到如图左边那样的曲线,显然,这并不是我们想要的模型,它把个别数据的偶然偏差也当成了共性而完美拟合了进去;或者我们用线性的函数来拟合它,我们可以得到大概如右图的函数直线,这显然没有很好的拟合训练样本数据,更不用说测试数据了。

发生过拟合说到底还是训练数据与训练参数的比例太小而导致的,所以,我们可以通过增加数据量或者适当减小参数数量来解决。增加训练数据量是根据大数定理,当数据量足够大时,训练模型会无限逼近实际,而减小参数数量则是人工根据模型的需要,剔除那些跟得到模型不太相关的参数来实现。但是如果我们无法增加数据量或者这些参数都是有用的不能去除怎么办?

还有办法,那就是正则化(Regularization),这也是常用的一种方法。通常,为了防止过拟合,我们都会在目标方程中添加一个正则项(regularization term),且通过正则因子(或“正则化参数”,英文:Regularization Coefficient或Regularization Parameter)λ来平衡目标方程与正则项。比如,在对数几率回归(Logistic Regression)中,我们可以对其代价函数(Cost Function)和其梯度函数进行正则化,如下图:

正则化后的代价函数:

正则化后的梯度函数:

为什么正则化可以防止过拟合呢?

简单地理解就是,通过加入一个正则项,在最小化新的代价函数的时候,正则项使得预测值与真实值之间的误差并不会达到最小,也就是说它是不会去完美拟合的,这样也就防止了过拟合,提高了机器学习模型的泛化能力。

一种最常用的正则化技术是权重衰减,通过加入的正则项对参数数值进行衰减,得到更小的权值。对于一些本身权重就很小的参数来说,其本身对结果的影响微乎其微,尤其是λ较大的时候,正则项的加入使得其几乎衰减到零,相当于去掉了这一项特征,类似于减少特征维度。当然了,式子中一项减少,正则化使得其他项的权值可能还会有所增加。而当 λ 较小时,我们会得到相对来说更小一些的代价函数值,而此时拟合的会更精细一些。

什么是欠拟合现象_过拟合与欠拟合问题相关推荐

  1. 什么是欠拟合现象_深度学习中过拟合、欠拟合问题及解决方案

    在进行数据挖掘或者机器学习模型建立的时候,因为在统计学习中,假设数据满足独立同分布(i.i.d,independently and identically distributed),即当前已产生的数据 ...

  2. 什么是欠拟合现象_在模型评估过程中,过拟合和欠拟合具体指什么现象?能否说出几种降低过拟合和欠拟合风险的方法?...

    在模型评估过程中,过拟合和欠拟合具体指什么现象? 过拟合是指模型在训练数据拟合呈过当的情况,反应到评估指标上,就是模型在训练集上的表现很好,但在测试集和新数据上的表现很差.欠拟合指的是模型在训练和预测 ...

  3. 什么是欠拟合现象_在模型评估过程中,过拟合和欠拟合具体指什么现象

    在模型评估过程中,过拟合和欠拟合具体指什么现象? 过拟合是指模型对于训练数据拟合呈过当的情况,反映到评估指标上,就是模型在训练集上的表现好,但是在测试集和新数据上的表现较差. 欠拟合指的是模型在训练和 ...

  4. 什么是欠拟合现象_欠拟合和过拟合是什么?解决方法总结

    欠拟合与过拟合 欠拟合是指模型在训练集.验证集和测试集上均表现不佳的情况: 过拟合是指模型在训练集上表现很好,到了验证和测试阶段就大不如意了,即模型的泛化能力很差. 欠拟合和过拟合一直是机器学习训练中 ...

  5. 什么是欠拟合现象_什么是过拟合?什么是欠拟合?

    原标题:什么是过拟合?什么是欠拟合? 过拟合:1)简单理解就是训练样本的得到的输出和期望输出基本一致,但是样本输出和测试样本的期望输出相差却很大 .2)为了得到一致假设而使假设变得过度复杂称为过拟合. ...

  6. python 拟合正态分布_如何在Python中拟合双高斯分布?

    我试图使用Python获得数据(link)的双高斯分布.原始数据的格式为: 对于给定的数据,我想获得图中所示峰值的两个高斯分布.我用以下代码(source)进行了尝试:from sklearn imp ...

  7. python最小二乘拟合圆_点云球面最小二乘拟合的python实现

    问题 现有近似分布在球面上的点云,试进行球面拟合,求出球心坐标和半径. 解 球面方程为: 其中 是我们要求的参数. 利用求偏导的方式求最小值 构造方程: 使方程 值最小的参数 就是我们的所求. 求偏导 ...

  8. python 拟合圆心_圆的散点拟合, 已知圆的采样点, 求圆的圆心和半径.

    UTF8gbsn 本文介绍一个圆的拟合方法. 参照论文为 Coope, I. D. (1993). Circle fitting by linear and nonlinear least squar ...

  9. 什么是过拟合、欠拟合现象以及如何缓解?

    前言:在讲解之前,小编必须先陈述这样一个客观事实,就是在模型训练过程中,过拟合或者欠拟合现象基本上可以看作是一个必然会发生的事件,因为我们将不同算法模型应用在同一种数据上构建某一类策略时,最终会挑出表 ...

最新文章

  1. 利用XSLT把ADO记录集转换成XML
  2. 人工智能系列精品课学习笔记-2如何提问以获得更多更好的帮助
  3. python pandas读写excel_python pandas读写excel
  4. linux编译c gedit,[2018年最新整理]LINUX-Gedit文本编辑器.ppt
  5. 【AVR ASF4库函数学习笔记】二、GPIO
  6. 异步通信在生活中的例子_AJAX简单异步通信实例分析
  7. centos 7 java安装路径_Linux CentOS 7.0中java安装与配置环境变量的步骤详解
  8. 谈谈软件工程与计算机科学的区别
  9. Laravel 全文检索 Scout集成Algolia
  10. 15.凤凰架构:构建可靠的大型分布式系统 --- 服务网格
  11. 10.TreeSet、比较器
  12. java socket 连接原理_Java socket通信基本原理介绍
  13. linux 查看进程打开的文件和库
  14. office 2016搜索联机模板是灰色的解决方案
  15. matlab股票数据画图,matlab股票数据接口(一)
  16. 服务器系统启用flash,基础设置:Windows Server 2012及2012R2 启用IE Flash
  17. 用于全市人群流动预测的深度时空残差网络
  18. 大学上计算机课要准备笔记本电脑吗,大一新生需要买笔记本电脑吗 有必要吗...
  19. 国家发改委发布《“互联网+”高效物流实施意见》
  20. 集合竞价规则及集合竞价的产生条件

热门文章

  1. 有关于KEIL软件空间不足的一些问题<持续更新>
  2. JVM常见4种GC算法
  3. Sublime3 设置 Fortran 代码高亮
  4. 全网最详细的一篇SpringCloud总结
  5. SQL学习笔记——limit用法(limit使用一个参数,limit使用两个参数)
  6. 【完整版】蓝桥杯竞赛python算法笔记 代码模板|吐血总结|蓝桥杯省赛国赛
  7. java ps old gen perm gen_JVM YoungGen(新生代),OldGen(年老代),和PermGen(持久区)
  8. android签名原理
  9. 什么是DAS/SAN/NAS
  10. HMM和N-gram、贝叶斯网络的区别