https://blog.csdn.net/u011630575/article/details/71158656

1. 什么是欠拟合和过拟合

先看三张图片,这三张图片是线性回归模型 拟合的函数和训练集的关系

  1. 第一张图片拟合的函数和训练集误差较大,我们称这种情况为 欠拟合
  2. 第二张图片拟合的函数和训练集误差较小,我们称这种情况为 合适拟合
  3. 第三张图片拟合的函数完美的匹配训练集数据,我们称这种情况为 过拟合

  

类似的,对于逻辑回归同样也存在欠拟合和过拟合问题,如下三张图

  

2. 如何解决欠拟合和过拟合问题

欠拟合问题,根本的原因是特征维度过少,导致拟合的函数无法满足训练集,误差较大。

欠拟合问题可以通过增加特征维度来解决。

过拟合问题,根本的原因则是特征维度过多,导致拟合的函数完美的经过训练集,但是对新数据的预测结果则较差。增加模型的复杂度,不要用简单的线性回归,适当的采用二次回归,将训练集合扩大,采集更多的数据。

解决过拟合问题,则有2个途径:

  1. 减少特征维度; 可以人工选择保留的特征,或者模型选择算法
  2. 正则化; 保留所有的特征,通过降低参数θ的值,来影响模型
  3. 数据集扩增; 即需要得到更多的符合要求的数据,即和已有的数据是独立同分布的

3. 正则化

回到前面过拟合例子, h(x) = θ0 + θ1x1 + θ2x2 + θ3x3 + θ4x4

 

从图中可以看出,解决这个过拟合问题可以通过消除特征x3和x4的影响, 我们称为对参数的惩罚, 也就是使得参数θ3, θ4接近于0。

最简单的方法是对代价函数进行改造,例如

这样在求解最小化代价函数的时候使得参数θ3, θ4接近于0。

正则化其实就是通过对参数θ的惩罚来影响整个模型

4. 线性回归使用正则化

前面几篇文章中,线性回归的代价函数J(θ)表达式如下

正则化后,代价函数J(θ)表达式如下,注意j从1开始

注意λ值不能设置过大,否则会导致求出的参数除了θ0,其它θ1,θ2 ... θn值约等于0,导致预测函数h(x)出现极大偏差

我们的目标依然是求J(θ)最小值,我们还是用梯度下降算法正规方程求解最小化J(θ)

1. 梯度下降算法(注意需要区分θ0和其它参数的更新等式)

2. 正规方程

对于正规方程来,需要修改等式如下

系数λ 所乘的矩阵为 (n+1)*(n+1)维

5. 逻辑回归使用正则化

和线性回归模型类型,逻辑回归也可以通过正则化来解决过拟合问题。

逻辑回归的代价函数J(θ)表达式如下

正则化逻辑回归的代价函数,是在等式后加上一项,注意j从1开始

 

同样的用梯度下降算法求解最小化J(θ),也需要做改变

不同的是逻辑回归模型中的预测函数 h(x)和线性回归不同

转载于:https://www.cnblogs.com/yuluoxingkong/p/9020996.html

机器学习:什么是欠拟合和过拟合相关推荐

  1. 1.8 欠拟合和过拟合-机器学习笔记-斯坦福吴恩达教授

    欠拟合和过拟合 问题 在上一节中,我们利用多项式回归获得更加准确的拟合曲线,实现了对训练数据更好的拟合.然而,我们也发现,过渡地对训练数据拟合也会丢失信息规律.首先,引出两个概念: 欠拟合(under ...

  2. 欠拟合和过拟合学习笔记

    欠拟合和过拟合学习笔记 https://www.cnblogs.com/DicksonJYL/p/9620464.html 在建模的过程中会经常出现1.模型的效果,但是泛化能力弱,2.模型的结果很差的 ...

  3. [pytorch、学习] - 3.11 模型选择、欠拟合和过拟合

    参考 3.11 模型选择.欠拟合和过拟合 3.11.1 训练误差和泛化误差 在解释上述现象之前,我们需要区分训练误差(training error)和泛化误差(generalization error ...

  4. 欠拟合和过拟合以及如何选择模型

    模型选择.欠拟合和过拟合 在前几节基于Fashion-MNIST数据集的实验中,我们评价了机器学习模型在训练数据集和测试数据集上的表现.如果你改变过实验中的模型结构或者超参数,你也许发现了:当模型在训 ...

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

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

  6. 从多项式函数拟合实验出发浅谈“模型选择、欠拟合和过拟合”问题

    在本笔记中,我们将从简单易懂的多项式函数拟合实验出发,谈一谈如今做机器学习绕不开的三个重要概念:模型选择.欠拟合和过拟合,并且进一步挖掘如何选择模型.如何避免欠拟合和过拟合问题.本笔记主要从下面五个方 ...

  7. 模型选择、欠拟合和过拟合

    模型选择.欠拟合和过拟合 [代码] 引入:当模型在训练数据集上更准确时,它在测试数据集上却不一定更准确. 1. 训练误差和泛化误差 机器学习模型应关注降低泛化误差 要区分训练误差(training e ...

  8. 从零开始学Pytorch(五)之欠拟合和过拟合

    本文首发于微信公众号"计算机视觉cv" 模型选择.过拟合和欠拟合 训练误差和泛化误差 训练误差(training error)指模型在训练数据集上表现出的误差,泛化误差(gener ...

  9. 欠拟合和过拟合的一般解决方法

    欠拟合和过拟合的一般解决方法 参考文章: (1)欠拟合和过拟合的一般解决方法 (2)https://www.cnblogs.com/excellent-ship/p/9090949.html 备忘一下 ...

最新文章

  1. 用 Python 可以实现侧脸转正脸?我也要试一下!
  2. 你知道为什么S4HANA中物料凭证要全部放在MATDOC中吗
  3. G.703通道故障打环测试方法
  4. 基于SSM的e律通管理系统
  5. 云原生首超Linux成最热,92%公司表示开源人才留不住|Linux基金会最新报告
  6. 删除文件提示“您需要权限才能执行此操作”如何解决
  7. 数据库:内联接,外联接,空值和联接
  8. Cisco WebEx:企业协作服务中的音频需求
  9. sql server2016里面的json功能 - 转
  10. Qt 给控件QLineEdit添加clicked事件方法
  11. 小芭比linux怎么装win7_小户型再怎么装也是小?看完我闭嘴了
  12. 企业微信开发(1)——整体说明
  13. c# FileHelper 对文件压缩解压,压缩包加密
  14. 计算机科学与技术光学成像专业,光信息科学与技术专业就业方向有哪些
  15. 磁吸数据线的特点与优势
  16. 找不到位于wsd扫描的计算机,在基于 Windows 的计算机上单击新扫描 Windows 传真和扫描时出现错误消息...
  17. [bbk5148] 第51集 - 第五章 管理内存 06
  18. 改变 Windows 用户文件夹默认位置
  19. PMP考试一定要报培训班吗?
  20. Leetcode 1419:数青蛙(超详细的解法!!!)

热门文章

  1. 学习笔记之加密解密,PKI,CA
  2. IDEA Maven项目添加本地jar包
  3. git commit --amend 修改git提交记录用法详解
  4. Kotlin入门(30)多线程交互
  5. Android开发笔记(一百二十二)循环器视图RecyclerView
  6. 汇编语言定时器转化为c语言,不用定时器和汇编语言,只用C语言实现精确无误的延时...
  7. printf 输出字符串 需要加上 c_str()
  8. 懒加载、瀑布流和LightBox实现图片搜索效果
  9. Sequelize Model
  10. PHP ceil()函数