1 机器学习中的误差
一般地,将学习器(机器学习模型)的实际预测输出与样本的真实输出之间的差异称为“误差”(error)。
统计学习的目的是使学到的模型不仅对已知数据而且对未知数据都能有很好的预测能力。不同的学习方法会给出不同的模型。当损失函数给定时,基于损失函数的模型的训练误差(training error)和模型的测试误差(test error) 就自然成为学习方法评估的标准。注意,统计学习方法具体采用的损失函数未必是评估时使用的损失函数。当然,让两者一致是比较理想的。
2 过拟合与欠拟合
2.1 期望误差
在机器学习三要素中,详见机器学习三要素。我们理论上希望期望误差越小越好,但是期望误差又不能直接求得,所以使用经验误差来估计期望误差。因此,希望机器学习模型预测的输出值与真实值间的误差越小。
但是,实际中并不是经验误差(期望误差)越小越好。若经验误差(期望误差)过小,则可能使得模型在训练集中表现的非常好,而在测试集中表现的非常差。也就是说过于强调拟合原始数据,而丢失了算法的本质,若给出一个新的值使之预测,它将表现的很差,将此现象称之为过拟合。
2.2 过拟合与欠拟合
下图是一个回归问题的例子,以此为例进行引入过拟合与欠拟合现象。
第一个模型是一个线性模型,处于欠拟合状态,不能很好地适应我们的训练集;第三个模型是一个四次方的模型,过于强调拟合原始数据,而丢失了算法的本质:预测新数据。我们可以看出,若给出一个新的值使之预测,它将表现的很差,是过拟合,虽然能非常好地适应我们的训练集但在新输入变量进行预测时可能会效果不好;而中间的模型似乎最合适。
分类问题中也存在这样的问题:
第一个模型处于欠拟合状态,不能很好的分类数据;第三个模型处于过拟合状态,对于新的数据集会表现