过拟合和欠拟合

匿名 (未验证) 提交于 2019-12-03 00:11:01

过拟合(overfitting)

过拟合指的是模型在训练集上表现的很好,但是在训练集外的数据集上(e.g.,交叉验证集和测试集)表现一般,也就是说模型对对新数据的预测表现一般,泛化(generalization)能力较差。

产生原因

a.训练数据过少或存在噪音,无法对整个数据的分布进行估计
b.特征维度过多,求解模型中没有那么多的特征值得重用
c.在对模型进行过度训练(overtraining)时,常常会导致模型的过拟合

解决办法

数据清洗、增加训练集、early stopping、数据集扩增(Data augmentation)、正则化(Regularization)、Dropout(神经网络)

欠拟合(underfitting)

过拟合指的是模型没有很好地捕捉到数据特征,导致拟合的函数在训练集上表现效果差,预测的准确率低。

产生原因

解决办法

1.添加其他特征项(e.g.,“组合”、“泛化”、“相关性”),模型出现欠拟合的时候是因为特征项不够导致的,可以添加其他特征项来很好地解决。
2.添加多项式特征,例如将线性模型通过添加二次项或者三次项使模型泛化能力更强
3.减少正则化参数,正则化的目的是用来防止过拟合的,当模型出现了欠拟合,则需要减少正则化参数。

判定

从训练集中随机选一部分作为一个验证集,采用K折交叉验证的方式,用训练集训练的同时在验证集上测试算法效果。在缺少有效预防欠拟合和过拟合措施的情况下,随着模型拟合能力的增强,错误率在训练集上逐渐减小,而在验证集上先减小后增大;当两者的误差率都较大时,处于欠拟合状态(high bias, low variance);当验证集误差率达到最低点时,说明拟合效果最好,由最低点增大时,处与过拟合状态(high variance, low bias)。下图的横坐标用拟合函数多项式的阶数笼统地表征模型拟合能力:
模型的Error = Bias + Variance
Error反映的是整个模型的准确度
Bias描述的是模型预测值(估计值)的期望与样本真实值之间的差距。偏差越大,越偏离真实数据。
反映了模型对训练集的拟合程度。
Variance描述的是预测值的变化范围,离散程度,也就是离其期望值的距离。方差越大,数据的分布越 分散。反映了模型的稳定性。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!