1.1.Example:Polynomial Curve Fitting(多项曲线拟合)
我们首先介绍一个简单的回归问题,我们将在本章中使用它作为一个连续的例子来激发一些关键的概念。假设我们观测到一个实值输入变量,我们希望利用这个观测值来预测一个实值目标变量的值。考虑一个使用综合生成数据的人工例子是有指导意义的,因为这样我们就知道生成数据的精确过程,以便于任何学到的模型进行比较。这个例子的数据是由函数和包含在目标值中的随机噪声生成的,详见附录A。
个点的训练数据集的绘图,显示为蓝色圆圈,每个包括输入变量和相应目标变量的观测值。绿色曲线显示用于生成数据的函数。我们的目标是在不知道绿色曲线的情况下,预测一些新的值的值。
现在假设我们有一个训练集,由个的观测值组成,记为。图1.2显示了包含个数据点的训练集的图。图1.2中输入数据集是通过选择的值生成的,当,在范围内均匀间隔,通过首先计算函数的相应值,然后向每个这样的点添加具有高斯分布(高斯分布在1.2.4节中讨论)的小水平随机噪声,以获得相应的值,从而获得目标数据集,我们在捕获许多真实数据集的一个特性,即它们具有我们希望了解的潜在规律,但单个观测值被随机噪声破坏。这种噪声可能来自本质随机(即随机)过程,如放射性衰变,但更典型的是由于存在本身未被观测到的可变性源。
我们的目标是利用这个训练集来预测目标变量的值。的输入变量。正如我们稍后将看到的,这涉及到隐式试图发现潜在的函数。这本质上是一个困难的问题,因为我们必须从有限的数据集进行推广。此外,观测数据被噪声破坏,所以对给定的对于的合适值存在不确定性。在第1.2节中讨论的决策理论允许我们利用这种概率表示,以便根据适当的标准做出最优预测。
然而,目前,我们将相当非正式地进行讨论,并考虑基于曲线拟合的简单方法。特别是,我们将使用以下形式为
的多项式函数拟合数据,其中是多项式的阶数,表示提升到的幂。多项式系数由向量共同表示。主义,尽管多项式函数是的非线性函数,但是系数它是线性函数。函数,如多项式,在未知参数中是线性的,具有重要的性质,称为线性模型,将在第3章和第4章中广泛讨论。
系数的值将通过将多项式拟合到训练数据来确定。这可以通过最小误差函数来实现,该误差函数测量任意给定值得函数与训练集数据点之间的失配。广泛使用的误差函数的一个简单选择是,每个数据点的预测与相应目标值之间的误差平方和,这样我们就最小化了
其中包含1/2的系数,以方便以后使用。我们将在本章后面讨论选择差函数的动机。目前我们只注意到,当且仅当函数正好通过每个训练数据点时,他是一个非负量,它将为零。平方和误差函数的几何解释如图1.3所示。
中每个数据点的位移平方和(由垂直绿色条显示)的一半。
Exercise 1.1
我们可以通过选择尽可能小的值来解决曲线拟合问题。由于误差函数是系数的二次函数,其对系数的导数在的元素中是线性的,因此误差函数的最小化有一个唯一的解,用表示,可以在闭合形式中找到。得到的多项式是由函数给出的练习1.1。
任然存在选择多项式阶数的问题,正如我们将看到的,这将成为一个称为模型比较或模型选择的重要概念的示例。在图1.4中,我们展示了四个将阶数的多项式拟合到图1.2所示数据集的结果示例。
我们注意到常数和一阶多项式对数据的拟合较差,因此函数的表示较差。三阶多项式似乎最适合图1.4所示示例中的函数。当我们使用更高阶的多项式时,我们获得了对训练数据的极好拟合。事实上,多项式正好通过每个数据点,。然而,拟合曲线振荡剧烈,函数的表示非常差。后一种行为称为过度拟合。
正如我们前面提到的,我们的目标是通过对新数据进行准确预测来实现良好的泛化。通过考虑由100个数据点组成的单独测试集,我们可以获得对泛化性能对的依赖性的一些定量洞察,这些数据点是使用与生成训练集点完全相同的程序生成的,但目标值中包含随机噪声值的新选择。对于每个的选择,我们可以评估(1.2)中给出的训练集数据的训练数据,也可以评估测试数据集的。有时,使用
定义的均方根(RMS)误差更为方便,其中的除法允许我们在平等的基础上比较不同大小的数据集,平方根确保在与目标变量相同的标度(和相同的单位)上测量。图1.5中显示了各种值得训练集和测试集误差图。测试集误差是衡量我们在预测的新数据观测值的值方面做的如何。我们从图1.5中注意到,的小值给出了相对较大的测试集误差集值,这可归因于相应的多项式相当不灵活,无法捕捉函数中的振荡。的值在范围给出测试集误差的较小值,这些值也给出了生成函数的合理表示,如图1.4中的情况所示。
具有不同阶数的多项式曲线图,如红色曲线所示,与图1.2所示的数据集拟合。