过拟合(overfitting)

Posted 桓桓桓桓

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了过拟合(overfitting)相关的知识,希望对你有一定的参考价值。

在用机器学习搭建模型时,经常会碰到这样一种情况,你的模型算法在样本数据中匹配的非常完美。但用新数据测试,发现模型结果和实际差距非常大。那么恭喜你!你掉进了机器学习中常见的一个大坑——过拟合。

什么是过拟合呢?机器学习本质上是通过建立数据模型,使其和现有数据相吻合,从而找到数据中内在的规律。如下面三张图,x表示训练样本数据,蓝色线条表示建立的数据模型。

第一张图:虽然模型部分体现了数据变化的趋势,但是样本数据基本都不在模型曲线上,这叫做欠拟合

第二张图:大多数的样本数据都在模型曲线上,平且很好的体现了数据变化规律,这叫做拟合

第三张图:虽然所有点都在模型曲线上,但却没有体现出数据变化规律,这就是过拟合

过拟合产生的原因是由于采集的样本本身带有的‘抽样误差“,而机器学习的算法可以产生足够复杂的模型,将这些误差值也精确拟合到模型中,导致生成的模型反倒丢失了的本质规律。说白了就是想太多了。

过拟合是在机器学习中经常会遇到的问题,不过不用怕。一般可以通过增加样本数量,或者减少模型复杂度的方式来规避这个坑。


以上是关于过拟合(overfitting)的主要内容,如果未能解决你的问题,请参考以下文章

AI - 过拟合 overfitting

tensorflow学习之使用dropout解决overfitting(过拟合)问题

翻译: 4.4. 模型选择Model Selection欠拟合Underfitting和过拟合Overfitting pytorch

overfitting &&underfitting

13 Hazard of Overfitting

过拟合原因