论文翻译机器学习中的高斯过程应用Word文档下载推荐.docx
《论文翻译机器学习中的高斯过程应用Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《论文翻译机器学习中的高斯过程应用Word文档下载推荐.docx(8页珍藏版)》请在冰豆网上搜索。
![论文翻译机器学习中的高斯过程应用Word文档下载推荐.docx](https://file1.bdocx.com/fileroot1/2022-11/17/e980808c-c88d-483e-b5dc-901ddac7f6e5/e980808c-c88d-483e-b5dc-901ddac7f6e51.gif)
我们主要关注如何理解随机过程和如何将他在机器学习中应用。
第二,我们将讨论关于超参数在协方差函数中的作用的切实问题,边缘概率密度和奥卡姆剃刀原则的问题。
要查看更多关于高斯过程的介绍,请看参考文献[1],[2]。
第一章高斯过程
在这部分我们定义了高斯过程,并且展示它们是如何非常自然的被应用于定义分布函数。
接下来的部分,我们继续展示这个分布函数是如何通过训练数据更新的。
定义1:
高斯过程是一个随机变量的集合,其中任何有限的数字都有共同的高斯分布。
一个高斯过程可以被它的均值函数m(x)和协方差函数k(x,x’)完全的定义。
分别将均值函数和协方差函数表示成向量和矩阵,这是一个对高斯分布的自然推广。
高斯分布用向量表示,而高斯过程用函数表示。
如此有:
意思是:
“f是由均值函数m和协方差函数k定义的高斯分布函数。
”
虽然从分布到过程的概括比较直截了当,我们会略详细地解释一下细节,因为它可能对一些读者来说没那么熟悉。
高斯向量中的单个随机变量可以被他们的位置向量索引到。
高斯过程中,有一个参数x(随机函数f(x)中的)起到了索引集的角色:
每一个输入x都有一个相联系的随机变量f(x),这是(随机)函数f在x处的取值。
为了识记方便,我们用自然数来列举x的值,并且用这些来索引他们在随机过程中的位置-不要让你自己被这个迷惑:
随机过程的索引用xi表示,我们选择用i来表示索引。
虽然与无限维对象工作可能在起初看起来很笨拙,但是经过大量计算证明,这只需要与有限维对象工作就可以完成。
实际上,找到用相关分布函数减少随机过程运算量的答案,这才是高斯过程可行性的关键。
让我们看一个例子,考虑如下方程给出的高斯过程:
为了更加直观地理解这个随机过程,我们可以用函数f画出采样图。
为了只与有限数据进行处理,我们只要求在不同有限数字n代表的位置的f的取值。
我们如何产生这样的采样呢?
给出不同x的取值,我们可以用定义了一个标准高斯分布的方程计算出均值向量和协方差矩阵:
我们用m和k代表高斯过程的参数,用μ和∑代表分布函数的参数,来清楚地区分它们。
我们现在可以通过这个分布函数创造出一组随机向量。
这个向量会作为坐标的函数,由x的值得到相应的f(x)的值。
图1
这是由一个确定的高斯随机过程方程随机3次画出的3个函数的函数图像。
图中的点是由方程算出的,另外两条曲线(有些不准确)是连接采样点画出的。
函数值体现了一个平滑的基础函数;
这实际上是高斯随机过程与平方指数的协方差函数的性质的体现。
阴影灰色部分代表了95%的置信区间。
我们现在就可以画出f的函数值与x的关系图,如图1。
我们实际上如何完成这件事?
下面的几句Matlab(②Matlab是TheMathWorkInc的商标)代码可以用来画出上图。
xs=(-5:
0.2:
5)’;
ns=size(xs,1);
keps=1e-9;
m=inline(’0.25*x.^2’);
K=inline(’exp(-0.5*(repmat(p’’,size(q))-repmat(q,size(p’’))).^2)’);
fs=m(xs)+chol(K(xs,xs)+keps*eye(ns))’*randn(ns,1);
plot(xs,fs,’.’)
上面的例子里,m和k是均值和协方差;
chol是一个实现计算矩阵的Cholesky分解(③我们还为了数值稳定添加了多重协方差矩阵(限制特征值的数值不为0);
有兴趣的话可以查看Eq.(8)附近的解释)的函数。
这个例子说明了我们如何从过程转变成分布,同时说明了高斯过程定义了一个分布函数。
到此,我们只考虑了随机函数-在下一部分,我们会看到一个非常简单的应用高斯随机过程建模的方法来进行数据推测训练的例子。
第二章后验高斯过程
在前一个部分,我们看到了如何应用高斯过程来定义概率分布函数。
这个高斯过程将被优先用于贝叶斯推理,这不依赖于训练数据,而是依靠一些函数的容;
举例来说,图1里的函数是平滑的,并且接近于二次方程函数。
本部分的目标是找到一个简单的规则来更新之前的训练数据。
下一部分的目标是试图根据之前(④根据定义,先验概率对于数据是独立的,在这里我们用一个有自由参数的多层先验概率,并且用它来推测参数。
)得到的数据找到一些性质。
计算后验概率的主要目的是它们可以用来预测看不到的实验因素。
用f表示已知训练数据的函数值,用f*表示一系列对应输入X*的函数值。
再一次,我们写出了我们有兴趣的所有参数的联合分布:
其中,我们已经介绍过的标识:
μ=m(xi),i=1,2,……,n是已知训练数据的均值,类似地μ*是训练后的均值;
∑是训练数据的协方差,∑*是训练前数据与训练后数据的协方差,∑**是训练后数据的协方差。
到此,由我们知道的训练数据f的值我们可以的出我们感兴趣的f*在f条件下的条件概率(⑤决定高斯联合分布的公式是:
)
这是一个对于特定实验情况的后验概率分布。
很容易验证(根据检验),对应的后验概率过程是:
其中∑(X,x)是每个训练数据和x之前的协方差向量。
这些是高斯过程预测的核心方程。
我们来测试一下这些方程的后验均值和协方差。
注意到后验方差kD(x,x)等于先验方差k(x,x)减去一个依赖于训练数据输入的确定的部分;
因此只要数据给了我们额外的信息,后验方差就永远小于先验方差。
我们需要解决最后一件事情:
训练输出数据中的噪声。
对于许多回归的应用的来说,在观察中存在噪声是非常正常的事情(⑥然而,可能非常有趣的是高斯过程模型也在无噪声的情况下运行-这和大多数参数化方法相反,因此它们通常无确地对数据建模。
)。
最常规的措施是在输出处加上独立同分布的高斯噪声。
在高斯过程模型中,这样的噪声是应该被考虑在的;
这样做的效果就是每个f(x)都有一个额外的与他自己的协方差(只要噪声被假设是独立的),这个值等于噪声方差:
其中当且仅当i=I’时δii’=1,这是一个克罗克函数。
注意到,克罗克函数的指数在确定的情况下,i,而不是输入xi;
你可能有几例相同的输入,但是这些情况下的噪声都被认为是独立的。
因此,一个有噪声的随机过程的协方差函数是信号协方差和噪声协方差的总和。
现在,我们把后验协方差函数插入到Matlab软件例的第69页去根据后验过程画一个样本,便得到了图2。
在这一部分,我们展示了如何简单地应用均值和协方差函数来根据训练数据由先验概率更新到后验概率。
然而,我们遗留下了几个还没有被回答的问题:
我们在最初如何写出均值和协方差函数?
我们如何估计噪声等级?
这就是下一部分的容了。
图2
由已知的20个训练数据根据后验概率函数画出的随机的3个函数图像,高斯过程由Eq(3)和噪声等级为σn=0.7两个条件确定。
阴影部分是95%的置信区间。
对比图1,我们观察到不确定性有了明显下降,已经接近预测的情况。
第三章训练一个高斯过程
在之前的部分我们看到了如何根据训练数据来更新先验高斯过程分布。
如果我们手上有足够的关于数据的初始信息,我们就可以自信的指定先验均值和协方差函数,这是非常有用的。
但是,得到如此细致的初始信息的可行性在机器学习应用方面并不是一个典型的情况。
为了使高斯过程技术在实践中更有应用价值,我们必须根据数据选择对应的不同的均值函数和协方差函数。
这个过程就被称为训练(⑦训练高斯过程模型涉及到模型的选择,也涉及到在不同的均值函数和协方差函数的函数形式之间离散选择来适应这些函数的超参数;
为了简便起见,我们在这里只考虑后者-直截了当的来说,在这种情况下边缘概率密度是可以被比较的)高斯过程模型。
根据通常比较模糊的先验信息,我们使用了一个分层次的先验概率,其中均值函数和协方差函数都被参数化为超参数。
举例来说,我们可以用Eq.
(2)做一个总结:
其中我们认为超参数θ={a,b,c,σy,σn,l}。
这种特定的分级目的是这让我们可以用一种简单的方法确定了模糊的先验信息。
举例来说,我们在开始的时候说了我们相信这个函数很接近一个二阶多项式的样子,但是我们没有确定地说明什么是多项式,也没有说明“接近”到了什么程度。
事实上,多项式和数据之间的区别是一个平滑的函数加上独立的高斯噪声,但是我们又一次不需要确定特征长度l的等级或是两个参数的值。
我们想要根据数据对所有超参数进行推测。
为了完成这项工作,我们计算了超参数给定的数据的可能性。
幸运的是,这不是很难,只要假设数据的分布符合高斯分布:
我们将调用这个数量级的对数边缘概率密度。
我们用“边缘”这个词来强调我们正在和一个没有参数的模型进行工作。
例子1展示了高斯过程的权重空间,相当于方程(10)。
使用权重边缘化。
我们现在可以通过求边缘概率分布的偏导数来很简单地找到超参数的值。
其中θm和θk分别用来表示均值函数和协方差函数的超参数。
方程(11)很方便地和一个共轭梯度等数值优化程序联系起来找到一个适合的(⑧说明,对于大多数不是很微小的高斯过程,优化超参数这个工作不是一个很困难的问题,所以通常预测应采取防止局部最小值的措施)超参数值的设定。
图3-1
这是由最大边缘似然函数得到的均值和95%后验置信区间的图,方程(10),是由方程(9)的高斯过程确认的,数据和图2的相同。
超参数的值是a=0.3,b=0.03,c=-0.7,σy=1.1,σn=0.25。
这个例子说明没有超参数优化方法,同样可以实现得相当好(图2),但是当然,它没有这种方法在典型应用中更有保障性。
由于实际上高斯过程是一个无参数模型,它的边缘概率密度看起来与人们经验中的有参数的模型多少有一些区别。
事先说明的是,事实上模型确实对训练数据非常适合:
简单地使噪声等级σn2为0,然后模型就创造了一个与训练数据点十分吻合的均值预测函数。
但是,这不是一个优化边缘似然函数的典型表现。
实际上,Eq.(10)中的对数边缘似然函数包括三个条件:
第一个条件,
是一个复杂的不利条件,它估量了模型的复杂度,使模型处于不利的情况。
第二个条件是一个负二项式,它负责了对测量数据的拟合(这是一个仅有的依靠训练输出值y的条件)。
第三个条件是对数标准化,独立于数据,不是很受人关注。
图3-1体现了被最大边缘似然函数训练的预测模型。
注意到高斯过程中的惩罚和数据之间的权衡是自动的。
没有加权参数需要设置一些外部的方法,如交叉验证。
这是具有重要意义的特征,因为它简化了训练。
图3-2说明了如何进行自动权衡。
在这一部分我们看到了,通过对先验概率的多层次分级,我们找到了一种可以学习出先验知识的非常方便的方法,以及通过对边缘概率函数的优化来学习了超参数的值。
这可以被一些基于梯度的优化所使用。
而且,我们也看到了边缘概率密度是如何采用奥卡姆剃刀的;
这个性质有重要的实践意义,因为它使训练过程大幅碱化。
图3-2