(Page:8-9) 1.1 多项曲线拟合

258 阅读3分钟

figure 1.5 由(1.3)定义的均方根误差图,在训练集和独立测试集上对各种MM值进行评估。

figure_1.5.png   对于M=9M=9,训练集误差变为零,正如我们所预期的,因为该多项式包含10个自由度,对应于10个系数w0,...,w9w_0,...,w_9,因此可以精确调整到训练集中的10个数据点。然而,测试集误差变得非常大,正如我们图1.4中看到的,相应的函数y(x,w)y(x,w^*)表现出剧烈的振荡。

  这似乎有些矛盾,因为给定阶数的多项式包含所有低阶多项式作为特例。因此,M=9M=9多项式能够产生至少与M=3M=3多项式一样好的结果。此外,我们可能会假设新数据的最佳预测值是生成数据的函数sin(2πx)sin(2\pi x)(我们稍后将看到确实如此)。我们知道函数sin(2πx)sin(2\pi x)的幂级函数展开式包含所有阶的项,所以我们可以预期结果应该随着MM的增加而单调改善。

  如表1.1所示,我们可以通过检查从不同阶次多项式中获得的系数ww^*的值来了解这个问题。我们看到,随着MM的增加,系数的大小通常会变得更大。特别是对于M=9M=9多项式,系数已通过产生较大的正值和负值来微调数据,以便相应的多项式函数与每个数据点精确匹配,但数据点之间(特别是接近范围的末端),函数显示了图1.4中观测到的大振荡。直观来说,正在发生的事情是,具有较大MM值的更灵活的多项式越来越适应目标值上的随机噪声。

table 1.1 各种阶多项式的系数ww^*的表。观察系数的典型大小如何随着多项式阶数的增加而显著增加。

table_1.1.png

  当数据及大小不同时,检查给定模型的行为也很有趣,如图1.6所示。我们看到,对于给定的模型复杂性,随着数据集大小的增加,过度拟合问题变得不那么严重。另一种说法是,数据集越大,我们能够适应数据的模型就越复杂(换句话说,越灵活)。有时提倡的一种粗略的启发式方法是,数据点的数量不应少于模型中自适应参数数量的几倍(例如5或10)。然而,正如我们将在第3章中看到的,参数的数量不一定是模型复杂性的最合适的度量。

figure 1.6 对于N=15N=15个数据点(左图)和N=100N=100个数据点(右图),通过使用M=9M=9多项式最小化平方和误差函数获得的解的图。我们发现,增加数据集的大小可以减少过度拟合问题

figure_1.6.png   此外,必须根据可用训练集的大小限制模型中的参数数量也有一些相当不令人满意的地方。根据所解决问题的复杂性来选择模型的复杂性似乎更为合理。我们将看到,寻找模型参数的最小二乘法代表了最大似然的一种特殊情况(在1.2.5节中讨论),过拟合问题可以理解为最大似然的一般性质。我们将看到,从贝叶斯的角度来看,采用参数数量大大超过数据点数量的模型并不困难。事实上,在贝叶斯模型中,参数的有效数量会自动适应数据集的大小。