在6.1节,通过将对偶性的概念应⽤于回归的⾮概率模型,我们引出了核的概念。这⾥,我们把核的角⾊推⼴到概率判别式模型中,引出了⾼斯过程的框架。
在第3章,我们考虑了线性回归模型,形式为
y
(
x
,
w
)
=
w
T
ϕ
(
x
)
y(\textbf{x},\textbf{w}) = \textbf{w}^T\phi(x)
y(x,w)=wTϕ(x)。我们证明了,
w
\textbf{w}
w上的先验分布会产⽣函数
y
(
x
,
w
)
y(\textbf{x},\textbf{w})
y(x,w)上的⼀个对应的先验分布。给定⼀个训练数据集,我们计算
w
\textbf{w}
w上的后验概率分布,从⽽就得到和回归函数对应的后验概率分布。回归函数(叠加上噪声)表⽰了对于新输⼊向量
x
\textbf{x}
x的⼀个预测分布
p
(
t
∣
x
)
p(t|\textbf{x})
p(t∣x)。
在⾼斯过程的观点中,我们抛弃参数模型,直接定义函数上的先验概率分布。乍⼀看来,在函数组成的不可数的⽆穷空间中对概率分布进⾏计算似乎很困难。但是,对于⼀个有限的训练数据集,我们只需要考虑训练数据集和测试数据集的输⼊
x
n
\textbf{x}_n
xn处的函数值即可,因此在实际应⽤中我们可以在有限的空间中进⾏计算。
6.4.1 重新考虑线性回归问题
考虑⼀个模型,它被定义为
考虑
w
\textbf{w}
w上的先验分布为各向同性的⾼斯分布,形式为
y
=
(
y
(
x
1
)
,
.
.
.
,
y
(
x
N
)
)
\textbf{y}=(y(\textbf{x}_1),..., y(\textbf{x}_N))
y=(y(x1),...,y(xN))的概率分布为
根据公式6.50,均值和方差为
其中,
K
K
K是
G
r
a
m
Gram
Gram矩阵,元素为
通常来说,⾼斯过程被定义为函数
y
(
x
)
y(\textbf{x})
y(x)上的⼀个概率分布,使得
y
\textbf{y}
y服从⾼斯分布(为什么联合分布是高斯分布)。更⼀般地,可以⽤⼀种合理的⽅式为
y
\textbf{y}
y赋予⼀个联合的概率分布,来确定⼀个随机过程
y
(
x
)
y(\textbf{x})
y(x)。
我们也可以直接定义核函数,⽽不是间接地通过选择基函数。
6.4.2 ⽤于回归的⾼斯过程
为了把⾼斯过程模型应⽤于回归问题,我们需要考虑观测⽬标值的噪声,形式为
其中
y
n
=
y
(
x
n
)
y_n = y(\textbf{x}_n)
yn=y(xn),
ϵ
n
\epsilon_n
ϵn是⼀个随机噪声变量,它的值对于每个观测
n
n
n是独⽴的。这⾥,我们考虑服从⾼斯分布的噪声过程,即
⽬标值
t
=
(
t
1
,
.
.
.
,
t
N
)
T
t = (t_1,...,t_N)^T
t=(t1,...,tN)T 的联合概率分布是⼀个各向同性的⾼斯分布,形式为
根据⾼斯过程的定义(6.4.1小节),边缘概率分布
p
(
y
)
p(\textbf{y})
p(y)为
确定
K
K
K的核函数通常被选择成能够表⽰下⾯的性质:对于相似的点
x
n
\textbf{x}_n
xn和
x
m
\textbf{x}_m
xm, 对应的值
y
(
x
n
)
y(\textbf{x}_n)
y(xn)和
y
(
x
m
)
y(\textbf{x}_m)
y(xm)的相关性要⼤于不相似的点。这⾥,相似性的概念取决于实际应⽤。
使⽤公式(2.115),我们看到
t
\textbf{t}
t的边缘概率分布为
其中
这个结果反映了下⾯的事实:两个随机的⾼斯分布(即与
y
(
x
)
y(\textbf{x})
y(x)相关的⾼斯分布和与
ϵ
\epsilon
ϵ相关的⾼斯分布)是独⽴的,因此它们的协⽅差可以简单地相加(这个相加也是有条件的,即
ϵ
\epsilon
ϵ的均值为0)。
⽬前为⽌,我们已经使⽤⾼斯过程的观点来构建数据点的集合上的联合概率分布的模型,下面要对对新的输⼊变量预测⽬标变量的值。让我们假设
t
N
=
(
t
1
,
.
.
.
,
t
N
)
T
\textbf{t}_N = (t_1,...,t_N)^T
tN=(t1,...,tN)T,对应于输⼊值
x
1
,
.
.
.
,
x
N
\textbf{x}_1,...,\textbf{x}_N
x1,...,xN,组成观测训练集,我们要计算预测分布
p
(
t
N
+
1
∣
t
N
)
p(t_{N+1}| \textbf{t}_N)
p(tN+1∣tN)。
根据公式(6.61),
t
N
+
1
=
(
t
1
,
.
.
.
,
t
N
+
1
)
\textbf{t}_{N+1}=(t_1,...,t_{N+1})
tN+1=(t1,...,tN+1)的联合概率分布为
使⽤公式(2.81和公式(2.82),我们看到条件概率分布
p
(
t
N
+
1
∣
t
)
p(t_{N+1}|\textbf{t})
p(tN+1∣t)是⼀个⾼斯分布,均值和协⽅差为
其中向量
k
\textbf{k}
k的元素为
k
(
x
n
,
x
N
+
1
)
k(\textbf{x}_n,\textbf{x}_{N+1})
k(xn,xN+1),其中
n
=
1
,
.
.
.
,
N
n = 1,...,N
n=1,...,N,标量
c
=
k
(
x
N
+
1
,
x
N
+
1
)
+
1
β
c = k(\textbf{x}_{N+1},\textbf{x}_{N+1}) + \frac{1}{\beta}
c=k(xN+1,xN+1)+β1。
预测分布的均值(6.66)可以写成
x
N
+
1
x_{N+1}
xN+1的函数,形式为
公式(6.66)和公式(6.67)的结果定义了具有任意核函数
k
(
x
,
x′
)
k(\textbf{x},\textbf{x′})
k(x,x′)的⾼斯过程回归。在特殊情况下,如果核函数
k
(
x
,
x′
)
k(\textbf{x},\textbf{x′})
k(x,x′)根据基函数的有限集定义,那么我们就可以从⾼斯过程的观点开始,推导出之前在3.3.2节得到的线性回归的结果(两种方式有什么异同)。如果基函数的数量
M
M
M⽐数据点的数量
N
N
N⼩,那么使⽤基函数框架计算会更⾼效。但是,⾼斯过程观点的⼀个优点是,我们可以处理那些只能通过⽆穷多的基函数表达的协⽅差函数。但是,对于⼤的训练数据集,直接应⽤⾼斯过程⽅法就变得不可⾏了,因此⼀系列近似的⽅法被提出来。与精确的⽅法相⽐,这些近似的⽅法关于训练数据集的规模有着更好的时间复杂度。
附录
公式推导
- 公式6.53如何推导出来
证明:
由于 y \textbf{y} y均值为零(公式6.52),故 c o v [ y ] = E [ yy T ] cov[\textbf{y}]=E[\textbf{yy}^T] cov[y]=E[yyT](式1)
由公式6.50易得, E [ w ] = 0 E[\textbf{w}]=0 E[w]=0,于是 c o v [ w ] = E [ ww T ] = 1 α I cov[\textbf{w}]=E[\textbf{ww}^T]=\frac{1}{\alpha}\textbf{I} cov[w]=E[wwT]=α1I(式2)
由式1、式2得,
c o v [ y ] = E [ yy T ] = Φ [ ww T ] Φ T = 1 α Φ Φ T = K cov[\textbf{y}]=E[\textbf{yy}^T]=\Phi [\textbf{ww}^T]\Phi^T=\frac{1}{\alpha}\Phi\Phi^T=\textbf{K} cov[y]=E[yyT]=Φ[wwT]ΦT=α1ΦΦT=K - 如何证明公式6.56是合法的核函数
互动话题
- 公式6.51下面一段指出,该公式中的
y
\textbf{y}
y服从高斯分布。这一点如何得出?
概率论中有定理:如果 ( X 1 , . . , X n ) (X_1,.. ,X_n) (X1,..,Xn)是一个 n n n维高斯变量,那么对它的任意线性组合都是高斯分布。由公式6.50知道 w \textbf{w} w是服从多维高斯分布的;又由公式6.51的定义可得, y \textbf{y} y中的每个元素均是 w \textbf{w} w的线性组合。但是如何证明 y \textbf{y} y是高斯分布。