0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

欠拟合和过拟合是什么?解决方法总结

汽车玩家 来源:CSDN 作者:是DRR啊 2020-01-29 17:48 次阅读

欠拟合与过拟合

欠拟合是指模型在训练集、验证集和测试集上均表现不佳的情况;

过拟合是指模型在训练集上表现很好,到了验证和测试阶段就大不如意了,即模型的泛化能力很差。

欠拟合和过拟合是什么?解决方法总结

欠拟合和过拟合一直是机器学习训练中的难题,在进行模型训练的时候往往要对这二者进行权衡,使得模型不仅在训练集上表现良好,在验证集以及测试集上也要有出色的预测能力。下面对解决欠拟合和过拟合的一般方法作一总结,说明大致的处理方向,具体应用还得结合实际的任务、数据和算法模型等。

解决欠拟合(高偏差)的方法

1. 模型复杂化

• 对同一个算法复杂化。例如回归模型添加更多的高次项,增加决策树的深度,增加神经网络的隐藏层数和隐藏单元数等

• 弃用原来的算法,使用一个更加复杂的算法或模型。例如用神经网络来替代线性回归,用随机森林来代替决策树等

2. 增加更多的特征,使输入数据具有更强的表达能力

• 特征挖掘十分重要,尤其是具有强表达能力的特征,往往可以抵过大量的弱表达能力的特征

• 特征的数量往往并非重点,质量才是,总之强特最重要

• 能否挖掘出强特,还在于对数据本身以及具体应用场景的深刻理解,往往依赖于经验

3. 调整参数和超参数

• 超参数包括:
- 神经网络中:学习率、学习衰减率、隐藏层数、隐藏层的单元数、Adam优化算法中的β1和β2参数、batch_size数值等
- 其他算法中:随机森林的树数量,k-means中的cluster数,正则化参数λ等

4. 增加训练数据往往没有用

• 欠拟合本来就是模型的学习能力不足,增加再多的数据给它训练它也没能力学习好

5. 降低正则化约束

• 正则化约束是为了防止模型过拟合,如果模型压根不存在过拟合而是欠拟合了,那么就考虑是否降低正则化参数λ或者直接去除正则化项

解决过拟合(高方差)的方法

1. 增加训练数据数

• 发生过拟合最常见的现象就是数据量太少而模型太复杂

• 过拟合是由于模型学习到了数据的一些噪声特征导致,增加训练数据的量能够减少噪声的影响,让模型更多地学习数据的一般特征

• 增加数据量有时可能不是那么容易,需要花费一定的时间和精力去搜集处理数据

• 利用现有数据进行扩充或许也是一个好办法。例如在图像识别中,如果没有足够的图片训练,可以把已有的图片进行旋转,拉伸,镜像,对称等,这样就可以把数据量扩大好几倍而不需要额外补充数据

• 注意保证训练数据的分布和测试数据的分布要保持一致,二者要是分布完全不同,那模型预测真可谓是对牛弹琴了

2. 使用正则化约束

• 在代价函数后面添加正则化项,可以避免训练出来的参数过大从而使模型过拟合。使用正则化缓解过拟合的手段广泛应用,不论是在线性回归还是在神经网络的梯度下降计算过程中,都应用到了正则化的方法。常用的正则化有l1正则和l2正则,具体使用哪个视具体情况而定,一般l2正则应用比较多

3. 减少特征数

• 欠拟合需要增加特征数,那么过拟合自然就要减少特征数。去除那些非共性特征,可以提高模型的泛化能力

4. 调整参数和超参数

• 不论什么情况,调参是必须的

5. 降低模型的复杂度

• 欠拟合要增加模型的复杂度,那么过拟合正好反过来

6. 使用Dropout

• 这一方法只适用于神经网络中,即按一定的比例去除隐藏层的神经单元,使神经网络的结构简单化

7. 提前结束训练

• 即early stopping,在模型迭代训练时候记录训练精度(或损失)和验证精度(或损失),倘若模型训练的效果不再提高,比如训练误差一直在降低但是验证误差却不再降低甚至上升,这时候便可以结束模型训练了

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器学习
    +关注

    关注

    66

    文章

    8126

    浏览量

    130571
收藏 人收藏

    评论

    相关推荐

    一文简析OpenCV中的直线拟合方法

    其中DIST_L2是最原始的最小二乘,最容易翻车的一种拟合方式,虽然速度快点。
    的头像 发表于 08-26 10:33 4825次阅读

    matlab应用-曲线拟合工具箱拟合曲线模型

    拟合一堆成本曲线,函数形式y=A*x*x+B*x,且A>0,B>0。一帮人用eviews,spss都没搞定,只好要我编程,没想到matlab拟合工具箱帮了大忙,即形象,又方便。不到一天
    发表于 11-03 15:31

    插值与拟合方法

    插值与拟合方法
    发表于 03-27 19:21

    拟合拟合以及模型的判断

    python-学习曲线,判断过拟合拟合
    发表于 04-24 10:23

    模型的拟合拟合总体解决方案

    15 模型的拟合 & 拟合 & 总体解决方案
    发表于 05-15 07:49

    深度学习中拟合/拟合的问题及解决方案

    的数据可以对未来的数据进行推测与模拟,因此都是使用历史数据建立模型,即使用已经产生的数据去训练,然后使用该模型去拟合未来的数据。 在我们机器学习和深度学习的训练过程中,经常会出现拟合
    发表于 01-28 06:57

    曲线拟合的判定方法

    判定方法曲线拟合也叫曲线逼近,只要求拟合曲线能合理的反映数据的基本趋势,并不要求曲线一定通过数据点。曲线拟合有不同的判别准则,偏差的绝对值之和最小偏差的最大绝对值最小偏差的平方和最小(
    发表于 08-17 08:31

    基于G 的ANFIS在函数拟合中的应用

    本文介绍了一种遗传算法(GA)优化自适应神经模糊推理系统(ANFIS)的方法,并采用基于GA 优化ANFIS 方法拟合非线性多峰函数,同时分析了这种方法
    发表于 07-07 15:01 31次下载

    GPS高程拟合方法研究

    通过TGO1.6V商用软件平台对采集的GPS数据进行处理,然后就具体工程项目进行GPS高程拟合方法研究、数据处理和精度分析,比较不同拟合方法的可行性,得出了工程项目的最优解
    发表于 10-14 16:14 22次下载

    低轨卫星轨道拟合及预报方法研究

    以 低轨卫星 CHAMP为例,采用切比雪夫多项式对其轨道进行拟合与外推,分析不同拟合时间长度和多项式阶数对拟合精度的影响,并讨论短时间预报的可行性。切比雪夫多项式与拉格朗日
    发表于 05-31 14:59 28次下载

    Matlab数据拟合基础函数的使用

    Matlab数据拟合基础函数的使用,教你如何拟合两个未知量
    发表于 11-10 16:45 0次下载

    铁损耗曲线的三种拟合方法比较

    铁损耗曲线的三种拟合方法比较_宗和刚
    发表于 01-02 16:09 0次下载

    拟合的概念和用几种用于解决过拟合问题的正则化方法

    由于添加了这个正则化项,各权值被减小了,换句话说,就是神经网络的复杂度降低了,结合“网络有多复杂,过拟合就有多容易”的思想,从理论上来说,这样做等于直接防止过拟合(奥卡姆剃刀法则)。
    的头像 发表于 04-27 15:23 1.5w次阅读
    过<b class='flag-5'>拟合</b>的概念和用几种用于解决过<b class='flag-5'>拟合</b>问题的正则化<b class='flag-5'>方法</b>

    深度学习中过拟合、欠拟合问题及解决方案

    如何判断过拟合呢?我们在训练过程中会定义训练误差,验证集误差,测试集误差(泛化误差)。训练误差总是减少的,而泛化误差一开始会减少,但到一定程序后不减反而增加,这时候便出现了过拟合的现象。
    发表于 01-22 07:44 6次下载
    深度学习中过<b class='flag-5'>拟合</b>、欠<b class='flag-5'>拟合</b>问题及解决方案

    电化学交流阻抗拟合原理与方法

    电化学交流阻抗拟合原理与方法
    的头像 发表于 02-08 10:02 982次阅读