过拟合の判断方法、原因、解决方法

1 定义


过拟合: 一个假设在训练数据上能够获得比其他假设更好的拟合, 但是在测试数据集上却不能很好地拟合数据,此时认为这个假设出现了过拟合的现象。(模型过于复杂)(高方差)
欠拟合: 一个假设在训练数据上不能获得更好的拟合,并且在测试数据集上也不能很好地拟合数据,此时认为这个假设出现了欠拟合的现象。(模型过于简单)(高偏差)

2 判断方法

2.1 通过Loss判断

训练集loss⬇,验证集loss⬇:网络正常,仍在学习。
训练集loss⬇,验证集loss→,可能出现过拟合,数据分布不均匀。
训练集loss⬇,验证集loss⬆,可能出现过拟合。

训练集loss→,验证集loss⬇,数据集有问题。
训练集loss→,验证集loss→,学习过程中遇到瓶颈,可以减小学习率/批量数目和更换梯度优化算法,也有可能网络设计问题。
训练集loss⬆,验证集loss⬆,可能网络结构有问题,超参数设置不正确。

2.2 通过Accuracy判断

验证集的作用是在训练的过程对比训练数据与测试数据的准确率,便于判断模型的训练效果是过拟合还是欠拟合 。
过拟合:训练数据的准确率较高而测试数据的准确率较低
欠拟合:训练数据的准确率和测试数据的准确率均较低

2.3 进行交叉验证

将数据集划分为多个子集,轮流将其中一个子集作为验证集,其余子集作为训练集进行多次训练和验证,观察模型在不同验证集上的表现。

如果模型在某些验证集上表现很好,但在其他验证集上表现较差,则可能存在过拟合。

3 原因&解决方法

3.1 数据量太小

增大训练集:在CV中常对图像进行旋转、缩放、剪切、添加噪声等操作。

3.2模型复杂度太大

减小模型复杂度:正则化(L1,L2);权值共享;dropout;BN;权值衰减

3.3 训练集和验证集特征分布不一致

3.4 数据中噪声干扰过大

3.5 过度训练(overtraining)

训练层面:early stopping(神经网络的训练过程中我们会初始化一组较小的权值参数,随着模型的训练,这些权值也变得越来越大了。为了减小过拟合的影响,就有可能需要早停止了。)

集成学习算法:也就是一个均值的思想,通过集成的思想来减弱过拟合的影响。

  • 7
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值