定义
过拟合: 一个假设在训练数据上能够获得比其他假设更好的拟合, 但是在测试数据集上却不能很好地拟合数据,此时认为这个假设出现了过拟合的现象。(模型过于复杂)(高方差) 欠拟合: 一个假设在训练数据上不能获得更好的拟合,并且在测试数据集上也不能很好地拟合数据,此时认为这个假设出现了欠拟合的现象。(模型过于简单)(高偏差)
通过Loss判断
训练集loss 不断下降,验证集loss不断下降:网络正常,仍在学习。 训练集loss 不断下降,验证集loss趋于不变,可能出现过拟合,数据分布不均匀。 训练集loss 不断下降,验证集loss不断上升,可能出现过拟合。 训练集loss 趋于不变,验证集loss不断下降,数据集有问题。 训练集loss 趋于不变,验证集loss趋于不变,学习过程中遇到瓶颈,可以减小学习率或批量数目和更换梯度优化算法,也有可能网络设计问题。 训练集loss 不断上升,验证集loss不断上升,可能网络结构有问题,超参数设置不正确。
通过Accuracy判断
验证集的作用是在训练的过程对对比训练数据与测试数据的准确率,便于判断模型的训练效果是过拟合还是欠拟合 。 过拟合:训练数据的准确率较高而测试数据的准确率较低 欠拟合:训练数据的准确率和测试数据的准确率均较低
解决方法
过拟合 (1)重新清洗数据:导致过拟合的一个原因也有可能是数据不纯导致的,如果出现了过拟合就需要我们重新清洗数据。 (2)增大数据的训练量:还有一个原因就是我们用于训练的数据量太小导致的,训练数据占总数据的比例过小。 (3)正则化 (4)减少特征维度,防止维灾难 欠拟合 (1)在保证训练误差和验证误差差距在一定范围内,适当增加训练次数。 (2)增加特征 (3)减少正则化程度
Reference
【欠拟合、过拟合、梯度消失、梯度爆炸】训练loss和测试loss | 深度学习理论概念
|