前言

       在机器学习或深度学习中,经常会出现欠拟合和过拟合这两个问题。一开始模型往往是欠拟合的,需要神经网络优化权重参数,达到拟合的结果。但是参数优化到一定程度就需要解决过拟合的问题了。
深度学习的拟合问题总结
       拟合一般分为欠拟合、过拟合、刚好拟合这三种。
       实际上,我们需要模型给我们的是一个刚好拟合的状态,也就是不偏不倚。这样模型既学习到了数据的特征(不欠拟合),也会有更好的泛化能力(不过拟合)。
深度学习的拟合问题总结

一、过拟合

       过拟合就是模型把数据学习的太彻底,以至于把噪声数据的特征也学习到了,这样就会导致在后期测试的时候不能够很好地识别数据。
深度学习的拟合问题总结

1.1 过拟合产生的原因

  1. 数据噪声过大。

  2. 训练数据太少。

  3. 模型训练过度。

  4. 模型过于复杂。

1.2 过拟合的解决办法

  1. 重新清洗数据,降低数据噪声,将错误的label纠正或者删除错误的数据。样本数据=真实数据+噪声数据。

  2. 增大数据的训练量,让模型可以提取更多的数据特征。

  3. 训练提前停止,就是让模型在训练的差不多的时候就停下来,比如继续训练带来提升不大或者连续几轮训练都不带来提升的时候,这样可以避免只是改进了训练集的指标但降低了测试集的指标。

  4. 采用正则化方法。正则化方法主要包括L1正则和L2正则,正则一般是在损失函数之后加上对应的范数,正则化可以看做是损失函数的惩罚项。

  5. dropout
           Dropout是一种正则化技术,可防止网络过度拟合。顾名思义,在训练期间,隐藏层中的一定数量的神经元被随机地丢弃,让神经元以一定的概率不工作。这意味着训练发生在神经网络的不同组合的神经网络的几个架构上。你可以将Dropout视为一种综合技术,然后将多个网络的输出用于产生最终输出。训练时部分**,验证时全部**。
    深度学习的拟合问题总结

二、欠拟合

欠拟合就是模型没有很好地捕捉到数据特征,不能够很好地拟合数据。
深度学习的拟合问题总结

1.1 欠拟合产生的原因及解决办法

  1. 数据的特征项不够(ML),可以添加其他特征项来很好地解决。

  2. 训练时间不够(DL),可以增加训练时间,使模型学习到更多的特征。

  3. 模型过于简单(DL),无法提取数据的高维特征,增大模型以获取更多特征。

  4. 添加多项式特征,这个在机器学习算法里面用的很普遍,例如将线性模型通过添加二次项或者三次项使模型泛化能力更强。

  5. 减少正则化参数,正则化的目的是用来防止过拟合的,但是现在模型出现了欠拟合,则需要减少正则化参数。

相关文章: