1.6 模型的泛化、过拟合与欠拟合

在有监督学习中,我们会在训练数据集上建立一个模型,之后会把这个模型用于新的,之前从未见过的数据中,这个过程称为模型的泛化(generalization)。当然我们希望模型对于新数据的预测能够尽可能准确,这样才能说模型泛化的准确度比较高。

那么我们用什么样的标准来判断一个模型的泛化是比较好的,还是比较差的呢?

我们可以使用测试数据集对模型的表现进行评估。如果你在训练数据集上使用了一个非常复杂的模型,以至于这个模型在拟合训练数据集时表现非常好,但是在测试数据集的表现非常差,说明模型出现了过拟合(overfitting)的问题。

相反,如果模型过于简单,连训练数据集的特点都不能完全考虑到的话,那么这样的模型在训练数据集和测试数据集的得分都会非常差,这个时候我们说模型出现了欠拟合(underfitting)的问题。

而只有模型在训练数据集和测试数据集得分都比较高的情况下,我们才会认为模型对数据拟合的程度刚刚好,同时泛化的表现也会更出色。