添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
1 中的蓝色圆圈代表十次观测值,绿色代表真实的结果。我们的目标是在不知道绿色曲线的前提下根据新的输入值\(x\)预测目标值\(t\)。图 1 中的输入值\( \mathbf{x}\)是\([0,1]\)区间内随机选择的十个值。然后根据所选的\(\mathbf{x}\),带入\(\sin(2\pi x)\),生成十个精确的值,然后把这十个生成值加上一定量的噪声,目标数据集合\(\mathbf{t}\)就这样诞生了。(注意这里没有说加上多少噪声,在通信系统中,我们叫做信噪比不确定。Bishop在PRML中也没有指明到底是功率为多少的噪声,只说了 a small level of random noise having a Gaussian distribution ) 我们明白这十个数是有内在约束的,即也就是\(\sin(2\pi x)\)这个函数,这个函数是我们学习的目标,我们拿到这十个数的时候是不知道这个模型的存在的。 现在,我们从最直观简单的数学方法入手:曲线拟合。特别的,我们把这个潜在的数学模型\(\sin(2\pi x)\)放在多项式空间中,也就是说我们认为这个潜在的模型存在于\((1,x,\ldots ,x^{M})\)张成的空间中。\(M+1\)是这个多项式空间的维度。所以多项式拟合的结果可以表示为: \begin{equation} \label{eq:1} y(x, \mathbf{w}) = w_{0} + w_{1}x + \ldots + w_{M}x^{M} = \sum_{j=0}^{M}w_{j}x^{j} \end{equation} 这个多项式的系数\(w_{j},j\in \{0,\ldots ,M\}\)就是我们要学习的目标。尽管这个多项式关于\(x\)不是线性的,但是关于\(w_{j}\)来说却是线性的,我们叫这样的模型为 线性模型 。 式(\ref{eq:1})的系数一定要选的 准确 才能比较好的拟合给出的十个点。通过最小化 误差函数 ,我们可以得到关于这\(M\)个\(w_{j}\)系数的一个估计。我们要用这个误差函数来表示\(y(x, \mathbf{w})\)和给定训练数据之间的不匹配程度。因此,这个误差函数的选取也是比较讲究的,在以后的学习中会碰到各种各样的误差函数。现在,我们选择用\(y(x, \mathbf{w})\)和\( \mathbf{t}\)之间的差值的平方和来表示误差,即: \begin{equation} \label{eq:2} E( \mathbf{w}) = \frac{1}{2} \sum_{n=1}^{N}\{y(x_{n}, \mathbf{w}) - t_{n}\}^{2} \end{equation} 系数\(\frac{1}{2}\)只是为了求导的时候去掉多余的一个因子\(2\),使得求得的\(w\)更有直观的意义,稍后就会发现了。 我们在 前文 提到,机器学习的泛化能力是一个非常重要的能力。对于新的输入\(\hat{x}\),学习得到的模型需要给出合理的\(\hat{t}\)。我们可以用另外的100组测试数据来检测估计模型(不同的\(M\)代表不同的模型)的泛化能力。这个时候我们用均方根误差函数来衡量不同模型的优劣比较方便。 \begin{equation} \label{eq:3} E_{RMS} = \sqrt{2E( \mathbf{w}^{*})/N} \end{equation} 式(\ref{eq:3})所示的这个均方根误差函数的优点在于:1.对不同数量的测试数据集(不同大小的\(N\)),比较结果是经过归一化的(因为有除以\(N\)的归一化操作)。2.开根号的好处在于\(E_{RMS}\)的量纲和\(t\)是一样的。不同\(M\)对应的\(E_{RMS}\)如图 4 所示. 但是,我们暂且把最大似然准则和贝叶斯方法放一放。接着多项式拟合问题往下走,我们想知道难道对于十个训练数据点我们就不能用\(M=9\)这样的复杂模型了吗?不是的。对于十个数据点\(M=9\)导致的过度拟合问题,一个有效的解决办法是 正则化 。正则化的最直接方案是为式(\ref{eq:2})引入一个惩罚项。把(\ref{eq:2})变为: \begin{equation} \label{eq:4} \tilde{E} = \frac{1}{2}\sum_{n=1}^{N} \{y(x_{n}, \mathbf{w}) - t_{n}\}^{2} + \frac{\lambda}{2} || \mathbf{w} ||^{2} \end{equation} 在式(\ref{eq:4})中,惩罚项是所有系数的平方和。\[|| \mathbf{w}||^{2} = \sum_{i=0}^{M} w_{i}^{2}\] 系数\(\lambda\)控制着正则项的权重。这样的技术在统计学里叫做 shrinkage 因为它使得系数的值变小了。在神经网络领域,这个技术叫做 weight decay 。以后我们会越来越多的发现,机器学习是多学科交叉的结果。同一个问题,在不同领域有不同的解释,使用不同的术语。 图 6 展示了当\(M=9\)时,不同的\(\lambda\)对应的拟合效果。