机器学习之欠拟合与过拟合

我们经常会听到一个机器学习模型“欠拟合”或者“过拟合”的说法。这是什么意思呢?

先复习一下:机器学习的基本问题是利用已知的数据对模型进行训练。学习的目的并非是对已知的有限的训练集进行正确预测,而是对未曾在训练集合出现的数据能够正确预测。

“欠拟合”和“过拟合”,都是用来说明模型对于新的数据的预测能力。机器学习之欠拟合与过拟合:

前言:

我们经常会听到一个机器学习模型“欠拟合”或者“过拟合”的说法。这是什么意思呢?

先复习一下:机器学习的基本问题是利用已知的数据对模型进行训练。学习的目的并非是对已知的有限的训练集进行正确预测,而是对未曾在训练集合出现的数据能够正确预测。

“欠拟合”和“过拟合”,都是用来说明模型对于新的数据的预测能力。机器学习之欠拟合与过拟合:

欠拟合(underfitting)

欠拟合是指在训练集上的效果就很差。

这常常在模型学习能力较弱(或学习不足),而数据复杂度较高的情况下出现。此时模型由于学习能力不足,无法学习到数据集中的“一般规律”,因而导致泛化能力弱。

例如,图一中的第一张图(underfit)【排版时图放在一起】,此处使用的是一次函数模型(简单模型),红色点表示训练集数据,训练出的一次函数(蓝线)和红色点的重合度很低,数据差距较大。

过拟合(overfitting)

过拟合是指模型在训练集上的误差较小,但预测新数据时误差较大。

这常常在模型学习能力过强(或者是同一份数据多次训练)的情况下出现。此时,模型所得结果和训练数据高度重合,在训练集上的误差很小;但是当模型应用于测试集(或者其他数据时)会表现出误差较大的现象。简单来说,过拟合的模型就像一件十分合身的衣服,这件衣服的每项数值都与A高度匹配,但是如果换一个体型数据与A有差异的人来穿,那么衣服就会变得不合身。

例如,图一中的第三张图(overfit),此处使用的是四次函数模型(复杂模型),可以看出训练出的四次函数(蓝线)和红色点(训练集)的重合度很高。但是四次函数和绿色点(非训练集中的数据)的重合度很低。说明过拟合能很好表现现有数据,但对于预测新数据的能力很弱,导致模型泛化能力弱。

我们经常会听到一个机器学习模型“欠拟合”或者“过拟合”的说法。这是什么意思呢?

先复习一下:机器学习的基本问题是利用已知的数据对模型进行训练。学习的目的并非是对已知的有限的训练集进行正确预测,而是对未曾在训练集合出现的数据能够正确预测。

“欠拟合”和“过拟合”,都是用来说明模型对于新的数据的预测能力。机器学习之欠拟合与过拟合:
图一

欠拟合与过拟合出现的原因与解决方法

欠拟合

1、出现原因:主要是由于学习不足

2、解决方法:1)增加特征;2)使用较复杂的模型,或者减少正则项

过拟合

1、出现原因:主要体现在样本和模型两方面

样本:1)样本量太少;2)训练集、测试集分布不一致;3)样本噪声干扰大。

模型:参数太多,模型过于复杂。

2、解决方法:1)增加样本量;2)减少冗余特征;3)集成学习;4)加入正则项:

其中,加入正则项可以为在损失函数中加入正则项来惩罚模型的参数,降低模型的复杂度(树模型可以控制深度等)。