您的位置:首页 > 其它

6.4 高斯过程

2016-06-22 17:49 225 查看

6.4 高斯过程

1、重新考虑线性回归问题

考虑⼀个模型M,它被定义为由向量 ϕ(x) 的元素给出的M个固定基函数的线性组合,即:

y(x)=ωTϕ(x)

现在,考虑 ω 上的⼀个先验概率分布,这个分布是⼀个各向同性的⾼斯分布,形式为:

p(ω)=N(ω∣0,α−1I)

它由⼀个超参数 α 控制,这个超参数表⽰分布的精度(⽅差的倒数)。

对于任意给定的 ω,模型M定义了x的⼀个特定的函数。于是,定义的 ω 上的概率分布就产⽣了⼀个函数 y(x) 上的⼀个概率分布。在实际应⽤中,我们希望计算这个函数在某个具体的x处的函数值,于是我们感兴趣的是函数值 y(x1)...y(xn) 的概率分布。我们把函数值的集合记作向量 y,它的元素为 yn=y(xn)。根据 y(x) 公式,这个向量等于:

y=Φω

其中 Φ 为设计矩阵,元素为 Φnk=ϕk(xn)。

我们可以⽤下⾯的⽅式找到y的概率分布。⾸先,我们注意到 y 是由 ω 的元素给出的服从⾼斯分布的变量的线性组合,因此它本⾝是服从⾼斯分布。于是,我们只需要找到它的均值和方差:

E(y)=ΦE(ω)=0

cov(y)=E(yyT)=ΦE(ωωT)ΦT=1αΦΦT=K

其中K是Gram矩阵,元素为:

Knm=k(xn,xm)=1αϕ(xn)Tϕ(xm)

这个模型给我们提供了⾼斯过程的⼀个具体的例⼦。通常来说,⾼斯过程被定义为函数 y(x) 上的⼀个概率分布,使得在任意点集 x1...xn 处计算的 y(x) 的值的集合联合起来服从⾼斯分布。在输⼊向量x是⼆维的情况下,这也可以被称为⾼斯随机场(Gaussian randomfield)。

⾼斯随机过程的⼀个关键点是N个变量 y1...yn 上的联合概率分布完全由⼆阶统计(即均值和协⽅差)确定。在⼤部分应⽤中,我们关于 y(x) 的均值没有任何先验的知识,因此根据对称性,我们令其等于零。这等价于基函数的观点中,令权值 p(ωj) 的先验概率分布的均值等于零。之后,⾼斯过程的确定通过给定两个x处的函数值 y(x) 的协⽅差来完成。这个协⽅差由核函数确定。核函数可以通过选择基函数间接定义,也可以直接定义,最常用的核函数为高斯核和指数核。

2、用于回归的高斯过程

为了把⾼斯过程模型应⽤于回归问题,我们需要考虑观测⽬标值的噪声:

tn=yn+ϵn

其中,yn=y(xn),ϵn 是随机噪声,它的值对于每个观测n是独⽴的。这⾥,我们要考虑服从⾼斯分布的噪声过程,即:

p(tn∣yn)=N(tn∣yn,β−1)

其中 β 是⼀个超参数, 表⽰噪声的精度。由于噪声对于每个数据点是独⽴的, 因此以 y=(y1...yn)T 为条件,⽬标值 t=(t1...tn)T 的联合概率分布是⼀个各向同性的⾼斯分布,形式为:

p(t∣y)=N(t∣y,β−1IN)

根据⾼斯过程的定义,边缘概率分布 p(y) 是⼀个⾼斯分布,均值为零,协⽅差由Gram矩阵K定义,即:

p(y)=N(y∣0,K)

为了找到以输⼊值 x1...xn 为条件的边缘概率分布 p(t),我们需要对 t 积分,t的边缘概率分布为:

p(t)=∫p(t∣y)p(y)dy=N(t∣0,C)

其中,C为协方差矩阵:

C(xn,xm)=k(xn,xm)+β−1δnm

这个结果反映了下面的事实:两个随机的⾼斯分布(即与 y(x) 相关的⾼斯分布和与ϵ相关的⾼斯分布)是独⽴的,因此它们的协⽅差可以简单地相加。

对于⾼斯过程回归,⼀个⼴泛使⽤的核函数的形式为指数项的⼆次型加上常数和线性项,即:

k(xn,xm)=θ0exp{−θ12∥xn−xm∥2}+θ2+θ3xTnxm

下面给出一组不同参数对应的先验图像:



目前为止,我们已经使⽤⾼斯过程的观点来构建数据点的集合上的联合概率分布的模型。然而,我们在回归问题中的目标是在给定⼀组训练数据的情况下,对新的输⼊变量预测⽬标变量的值。我们的⽬标是对于新的输⼊向量 xN+1 预测⽬标变量 tN+1 。这要求我们计算预测分布 p(tN+1∣tN)。

为了找到条件分布 p(tN+1∣tN),我们⾸先写下联合概率分布 p(tN+1) ,其中 tN+1 表⽰向量 (t1...tN,tN+1)T :

p(tN+1)=N(tN+1∣0,CN+1)

我们将协方差矩阵分块如下:

CN+1=(CNkTkc)

向量 k 的元素为 k(xn,xN+1),其中 n=1...N,标量 c=k(xN+1,xN+1)+β−1,可以看出条件概率分布 p(tN+1∣t) 是⼀个⾼斯分布,均值和协⽅差为:

m(xN+1)=kTC−1Nt

σ2(xN+1)=c−kTC−1Nk

该结果定义了具有任意核函数 k(x,x′) 的⾼斯过程回归。在特殊情况下,如果核函数 k(x,x′) 根据基函数的有限集定义,那么我们就可以从⾼斯过程的观点开始,推导出之前在3.3.2节得到的线性回归的结果。

对于这种模型,我们既可以通过参数空间的观点使⽤线性回归的结果得到预测分布,也

可以通过函数空间的观点使⽤⾼斯过程的结果得到预测分布。

使⽤⾼斯过程的核⼼计算涉及到对NxN的矩阵求逆。标准的矩阵求逆⽅法需要 O(N3) 次计算。相反,在基函数模型中,我们要对⼀个MxM的矩阵 SN 求逆,这需要 O(M3) 次计算。注意,对于两种观点来说,给定训练数据,矩阵求逆的计算必须进⾏⼀次。对于每个新的测试数据,两种⽅法都需要进⾏向量-矩阵的乘法,这在⾼斯过程中需要 O(N2) 次计算,在线性基函数模型中需要 O(M2) 次计算。如果基函数的数量M⽐数据点的数量N⼩,那么使⽤基函数框架计算会更⾼效。但是,⾼斯过程观点的⼀个优点是,我们可以处理那些只能通过⽆穷多的基函数表达的协⽅差函数。

但是,对于⼤的训练数据集,直接应用高斯过程方法就变得不可⾏了,因此⼀系列近似的方法被提出来。与精确的⽅法相比,这些近似的方法关于训练数据集的规模有着更好的时间复杂度。

我们已经介绍了单⼀目标变量的高斯过程回归。扩展到多个目标变量的情形(被称为co-kriging)是很直接的(Cressie, 1993)。也可以将高斯过程回归进行各种其他的扩展,用于对⽆监督学习的低维流形上的概率分布建模(Bishop et al., 1998a)以及解决随机微分方程(Graepel, 2003)。

3、学习超参数

⾼斯过程模型的预测部分依赖于协⽅差函数的选择。在实际应⽤中,我们不固定协⽅差函数,⽽是更喜欢使⽤⼀组带有参数的函数,然后从数据中推断参数的值。这些参数控制了相关性的长度缩放以及噪声的精度等等,对应于标准参数模型的超参数。

学习超参数的⽅法基于计算似然函数 p(tj) ,其中表示高斯过程模型的超参数。最简单的⽅法是通过最⼤化似然函数的⽅法进⾏的点估计。由于表⽰回归问题的⼀组超参数,因此这可以看成类似于线性回归模型的第⼆类最⼤似然步骤。可以使⽤⾼效的基于梯度的最优化算法(例如共轭梯度法)来最⼤化对数似然函数。

使⽤多元⾼斯分布的标准形式,⾼斯过程模型的对数似然函数很容易计算。对数似然函数的形式为:

lnp(t∣θ)=−12ln|CN|−12tTC−1Nt−N2ln(2π)

4、自动相关性确定

(待续)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息