4-5(1.1 例:多项式曲线拟合)

277 阅读3分钟

1.1 例:多项式曲线拟合

  我们首先介绍一个简单的回归问题,我们将在本章中使用它作为 一个连续的例子来激发一些关键的概念。假设我们观测到一个实值输入变量x,我们希望利用这个观测值 来预测一个实值目标变量t的值。考虑一个使用综合生成数据的人工例子是有指导意义的,因为这样我们就知道生成数据的精确过程,以便与任何学到的模型进行比较。这个例子的数据是由函数sin(2πx)\sin(2\pi x)​​​和包含在目标值中的随机噪声值生成的,详见附录A。

  现在假设我们有一个训练集,由 NN​​​ 个 xx​​​​ 的观测值组成,记为X(x1,...,xN)TX \equiv (x_1 , ..., x_N)^T​​​​,以及相应的T值的观测值组成,记为T(t1,...,tN)TT \equiv (t_1, ...,t_N)^T​​​​​。图1.2显示成了包含N=10N = 10​​​​个数据点的训练集的图。图1.2中的输入数据集x是通过选择xnx_n​​​​的值生成的,当n=1,...,Nn = 1 ,..., N​​​​​,在 [0,1][0, 1]​​​​​范围内均匀间隔,首先计算函数sin(2πx)\sin(2\pi x)​​​​,得到目标数据集t,然后在每一个这样的点上加入一个具有高斯分布的小水平随机噪声 (高斯分布在1.2.4节中讨论),以得到相应的tnt_n​​​​值。通过以这种方式生成数据,我们捕获了 许多真实数据集的一个特性,即它们具有潜在的规律性,这是我们希望了解的,但单个观察结果会被随机噪声破坏。这种噪声可能来自本质上随机(i.e.random)的过程,如放射性衰变,但更典型的是由于存在本身无法观测到的变化源。

  我们的目标是利用这个训练集,为输入变量的某个新值xx​预测目标变量的值tt​​。正如我们稍后将看到的,这涉及隐式地试图发现潜在的函数sin(2πx)\sin(2\pi x)​。这本质上是一个困难的问题,因为我们必须从有限的数据集进行推广。此外,观测数据被噪声破坏,所以这对给定的x,tx, t​​的合适值是不确定的。​在第1.2节中讨论的概率论为以精确和定量的方式表达这种不确定性提供了一个框架,而在 1.5节中讨论的决策理论允许我们利用这种概率表示,以便根据适当的标准做出最优预测。

  然而,目前,我们将相当非正式地进行,并考虑一种基于曲线拟合的简单方法。特别的,我们将用这种形式的多项式函数来拟合数据

y(x,w)=w0+w1x+w2x2+...+wMxM=j=0Mwjxj(1.1)y(x, w) = w_0 + w_1x + w_2x^2 + ... +w_Mx^M = \sum_{j=0}^M w_jx^j \tag{1.1}

其中M是多项式的阶,xjx^j表示xxjj​次幂。多项式系数w0,...,wMw_0 , ... ,w_M由向量WW​表示​。注意,尽管多项式函数y(x,w)y(x, w)​是一种非线性x的函数,它是一个线性函数的系数w。函数,如多项式,在未知参数中是线性的,具有重要的性质,成为线性模型,将在第三章和第四章只能广泛讨论 。

  系数的值将通过多项式拟合到训练数据来确定 。这可以通过最小化误差函数来实现,该误差函数测量任意给定值ww的函数y(x,w)y(x, w)​​​​与训练集数据点之间的失配。广泛使用的误差函数的一个简单选择是,每个数据点xnx_n​​的预测y(xn,w)y(x_n, w)​​与相应目标值tnt_n​​之间的误差平方和,从而使我们最小化

E(w)=12n=1N[y(xn,w)tn]2(1.2)E(w) = \frac{1}{2}\sum_{n=1}^{N}[y(x_n, w) - t_n] ^ 2 \tag{1.2}

其中包括1/21/2​​的系数,以便以后方便使用 。我们将在本章后面讨论选择误差函数的动机。目前我们只注意到它是一个非负量,当且仅当,函数y(x,w)y(x, w)​精确通过每个训练数据点。平方和误差函数的几何解释如图1.3所示。

Figure 1.3

误差函数(1.2)对应于函数y(x,w)y(x, w)中每个数据点的位移平方和(由垂直绿色条显示)的一半。