从本节开始,将介绍高斯过程。
高斯过程(Gaussian Process),从名字中很明显,它是一种和高斯分布相关的随机过程(Stochastic Process)。
从一维高斯分布开始,此时只有一个一维随机变量
x
1
x_1
x1,它服从的高斯分布可表示为:
P
(
x
1
)
∼
N
(
μ
,
σ
2
)
=
1
σ
2
π
exp
[
−
(
x
−
μ
)
2
2
σ
2
]
\mathcal P(x_1) \sim \mathcal N(\mu,\sigma^2) = \frac{1}{\sigma\sqrt{2\pi}} \exp [- \frac{(x - \mu)^2}{2\sigma^2}]
P(x1)∼N(μ,σ2)=σ2π1exp[−2σ2(x−μ)2]
如果样本并不是一个特征,而是多个特征,并且这些特征均服从高斯分布。假设对应的随机变量集合
X
=
{
x
1
,
x
2
,
⋯
,
x
p
}
\mathcal X = \{x_1,x_2,\cdots,x_p\}
X={x1,x2,⋯,xp},那么
X
\mathcal X
X服从的是一个多元高斯分布:
P
(
X
)
∼
N
(
μ
,
Σ
)
=
1
(
2
π
)
p
2
∣
Σ
∣
1
2
exp
{
−
1
2
(
X
−
μ
)
T
Σ
−
1
(
X
−
μ
)
}
\mathcal P(\mathcal X) \sim \mathcal N(\mu,\Sigma) = \frac{1}{(2\pi)^{\frac{p}{2}}|\Sigma|^{\frac{1}{2}}} \exp \left\{- \frac{1}{2} (\mathcal X - \mu)^T \Sigma^{-1}(\mathcal X - \mu)\right\}
P(X)∼N(μ,Σ)=(2π)2p∣Σ∣211exp{−21(X−μ)TΣ−1(X−μ)}
在高斯网络基本介绍中,这个多元高斯分布描述了
X
\mathcal X
X内部各随机变量之间的条件独立性,并且这些条件独立性信息由精度矩阵(Precision Matrix)记录。
很明显,这是一个静态概率图模型,高斯网络中的节点数量与
X
\mathcal X
X中随机变量的数量相关。
而高斯过程可以理解为联合正态分布的无限维广义延伸。但这里的无限维是指从时间、空间等连续域中产生的维度。以时间为例,一段连续时间内,可能包含若干个状态,而每个状态的随机变量均服从高斯分布。并且每个状态的随机变量不一定是一维的,也可能是高维的。
因此,可以将高斯过程其理解为:在连续域上的无限多个高维随机变量组成的随机过程。和之前介绍的马尔可夫链相似,这里的连续域通常指时间、空间,或者是指抽象的时间,例如序列。
对场景进行如下构建:
是对连续域
T
\mathcal T
T宏观时刻的一种表示。将连续域
T
\mathcal T
T的 随机变量集合表示为
{
ξ
t
}
t
∈
T
\{\xi_{t}\}_{t \in \mathcal T}
{ξt}t∈T,高斯过程可定义为:
如果
∀
n
∈
N
+
,
t
1
,
t
2
,
⋯
,
t
n
∈
T
\forall n \in N^+,t_1,t_2,\cdots,t_n \in \mathcal T
∀n∈N+,t1,t2,⋯,tn∈T,满足随机变量集合
{
ξ
t
1
,
ξ
t
2
,
⋯
,
ξ
t
n
}
=
ξ
t
1
→
t
n
∼
N
(
μ
t
1
→
t
n
,
Σ
t
1
→
t
n
)
\{\xi_{t_1},\xi_{t_2},\cdots,\xi_{t_n}\} = \xi_{t_1\to t_n} \sim \mathcal N(\mu_{t_1 \to t_n},\Sigma_{t_1 \to t_n})
{ξt1,ξt2,⋯,ξtn}=ξt1→tn∼N(μt1→tn,Σt1→tn),那么称
{
ξ
t
}
t
∈
T
\{\xi_{t}\}_{t \in \mathcal T}
{ξt}t∈T是一个高斯过程。
已知高斯过程
{
ξ
t
}
t
∈
T
\{\xi_{t}\}_{t \in \mathcal T}
{ξt}t∈T,其中
T
\mathcal T
T表示某连续域,
t
t
t表示连续域中的时刻。假设
t
t
t时刻的随机变量是
ξ
t
\xi_{t}
ξt,那么
ξ
t
\xi_{t}
ξt的表示(Representation)如下:
ξ
t
∼
N
(
μ
t
,
Σ
t
)
\xi_t \sim \mathcal N(\mu_t,\Sigma_t)
ξt∼N(μt,Σt)
假设这个连续域
T
\mathcal T
T中包含
N
N
N个时刻:
T
=
{
t
1
,
t
2
,
⋯
,
t
N
}
\mathcal T = \{t_1,t_2,\cdots,t_N\}
T={t1,t2,⋯,tN},因而我们会得到
N
N
N个随机变量:
{
ξ
t
}
t
∈
T
=
{
ξ
t
1
,
ξ
t
2
,
⋯
,
ξ
t
N
}
⏟
N
{
ξ
t
1
∼
N
(
μ
t
1
,
Σ
t
1
)
ξ
t
2
∼
N
(
μ
t
2
,
Σ
t
2
)
⋯
ξ
t
N
∼
N
(
μ
t
N
,
Σ
t
N
)
\{\xi_{t}\}_{t \in \mathcal T} = \underbrace{\{\xi_{t_1},\xi_{t_2},\cdots,\xi_{t_N}\}}_{N} \quad {ξt1∼N(μt1,Σt1)ξt2∼N(μt2,Σt2)⋯ξtN∼N(μtN,ΣtN)
继续假设,每一时刻的期望结果
μ
t
i
(
i
=
1
,
2
,
⋯
,
N
)
\mu_{t_i}(i=1,2,\cdots,N)
μti(i=1,2,⋯,N)和方差结果
Σ
t
i
(
i
=
1
,
2
,
⋯
,
N
)
\Sigma_{t_i}(i=1,2,\cdots,N)
Σti(i=1,2,⋯,N)均是给定的。此时对
t
1
t_1
t1时刻的高斯分布进行随机采样,采到的结果记作
r
t
1
r_{t_1}
rt1:
需要注意的是,这个采样采的不是‘概率密度函数的概率结果’,而是概率密度函数对应特征描述的结果。
N
(
μ
t
1
,
Σ
t
1
)
→
r
t
1
\mathcal N(\mu_{t_1},\Sigma_{t_1}) \to r_{t_1}
N(μt1,Σt1)→rt1
同理,其他时刻同样进行随机采样,并构成一个样本集合:
{
r
t
1
,
r
t
2
,
⋯
,
r
t
N
}
\{r_{t_1},r_{t_2},\cdots,r_{t_N}\}
{rt1,rt2,⋯,rtN}
将这个有序的样本集合在以连续域、特征描述结果所构成的的空间中手尾相连,得到一条曲线;而这条曲线就是高斯过程的一个样本。
这里需要解释一下:由于
T
\mathcal T
T是连续的,真实条件下可能存在无穷多个时刻。因此这个样本序列必然不可能是对所有时刻进行采样。仅通过‘实际问题’中重要的时刻进行采样。
至此,根据上述定义,高斯过程 { ξ t } t ∈ T \{\xi_{t}\}_{t \in \mathcal T} {ξt}t∈T中不仅每个时刻 t i t_i ti的随机变量 ξ t i \xi_{t_i} ξti服从高斯分布,并且 T \mathcal T T中任意连续时刻 { ξ t i , ξ t i + 1 , ξ t i + 2 , ⋯ , ξ t i + m } t i , ⋯ , t i + m ∈ T \{\xi_{t_{i}},\xi_{t_{i+1}},\xi_{t_{i+2}},\cdots,\xi_{t_{i+m}}\}_{t_i,\cdots,t_{i+m} \in \mathcal T} {ξti,ξti+1,ξti+2,⋯,ξti+m}ti,⋯,ti+m∈T同样服从多元高斯分布。
因此,一个高斯过程具体由两个函数决定:
相关参考:
高斯过程——百度百科
机器学习-高斯过程-简单介绍