统计学习必学的十个问题:理论与实践
上QQ阅读APP看书,第一时间看更新

1.4 偏差方差分解的意义

既然假设空间越复杂,真实函数就更有可能被包含其中,那么是否意味着尽可能的选用高容量的模型?答案是否,不是因为会导致过拟合,过拟合只是结果不是原因。这是因为模型很难学到真实函数(或者说与目标函数接近的函数)。同样地,假设空间越简单,包含的函数类型就越少,虽然低容量的模型能够进行简单的学习,但是真实函数可能根本不在其中。

所以,我们需要对模型容量的选择取得一种平衡,既希望训练误差足够小,表示学习到了好的函数,又希望测试误差和训练的差距足够小,表示在训练集上学习的函数与真实函数是接近的。我们对泛化性能进行解释性的拆解,见定义1.3,从中获得调节模型容量的指导性意见。可以发现,虽然我们想尽可能地降低偏差来让模型拟合得更好,降低方差来让模型更稳定,但是这却不太容易办到,它们处于此消彼长的态势,而这就是平衡的点。

定义1.3(偏差-方差分解) 假设不同的数据集都是从一个分布中独立采样而来,用模型f在规模相同的若干数据集上,每个数据集D都会有一个样本预测值的平均值fxD)。我们把不同数据集的预测平均值收集起来,其方差为:

对于每一个单独的数据集,它评价模型预测对于不同数据集的稳定性。同时我们用偏差来刻画所有数据的预测与真实值的差异水平:

最后我们考虑噪声项,它被定义为数据的目标值和真实值的差异:

在回归任务中常使用的平方损失函数就可以被表示为这三者之和:

对偏差和方差直观的理解如图1.5所示。模型容量低会导致高偏差和低方差,训练误差和测试误差足够接近,但训练误差本身就很高,处于欠拟合;模型容量高会导致低偏差和高方差,训练误差很低,但是测试误差远远高于训练误差,属于过拟合;如果出现高偏差和高方差,很可能是训练数据和测试数据存在不一致性;低偏差和低方差则属于理想情况,这是我们通过改变模型、优化算法、超参数、数据量要尽力达到的目标。

图1.5 偏差与方差的四种可能情形,蓝色的点表示对不同数据集的预测,红色的中心表示目标值