本书介绍了高斯过程,并展示了其各种(但并不完整)的应用。该介绍针对希望将该技术应用于解决实际工程问题的用户。通过应用示例,它展示了高斯过程如何用于机器学习,从已知情况推断未知情况。本书作为高斯过程常用解析表示以及特定用例中数学运算和方法的参考。
高斯过程 是一种 随机过程 ,其属性是其所有有限子集的值都是 多元正态分布 (或高斯分布)。随机过程是一个函数,其值是随机变量,并遵循给定的概率分布。这使得能够对由于信息不足而无法完全确定的值的函数进行概率建模。高斯过程由平均值、方差和协方差的函数构建,因此将函数值描述为以无限维正态分布形式的相互关联的随机变量的连续体。高斯过程的分布可以想象成一个函数的概率分布。对其进行采样会得到一个具有特定曲线形状偏好属性的随机函数。
高斯过程用于基于随机量或观测值对非确定性系统的行为进行数学建模。高斯过程适用于信号分析和合成,是用于任意维离散测量点插值、外推或平滑的强大工具(高斯过程回归或 克里格法 ),并在分类问题中得到应用。与核方法相关的 [ 1] 高斯过程可以作为一种监督机器学习技术,用于基于训练示例进行抽象建模。这种贝叶斯机器学习方法的优势在于它通常不需要像神经网络那样进行迭代训练。相反,高斯过程可以通过线性代数从示例的统计量中非常有效地推导出,并且在数学上易于解释和控制。此外,对于插值和预测,每个单个输出值都会计算出相应的置信区间,该区间准确估计其自身的预测误差,同时在已知输入值的方差时正确考虑误差传播。
高斯过程是一种特殊的随机过程 ( X t ) t ∈ T {\displaystyle (X_{t}){t\in T}} 在任何索引集 T {\displaystyle T} 上,如果其有限维分布对于所有 t 1 , t 2 , … , t n ∈ T {\displaystyle t_{1},t_{2},\dotsc ,t_{n}\in T} 都是多元正态分布(也称为高斯分布)。也就是说, ( X t 1 , X t 2 , … , X t n ) {\displaystyle (X{t_{1}},X_{t_{2}},\dotsc ,X_{t_{n}})} 的多元分布由 n 维正态分布给出。
术语: 即使术语高斯过程 可能表示时间或顺序过程,但此限制不存在。从广义上讲,过程 可以理解为连续体 。
类似于一维和多维高斯分布,高斯过程完全且唯一地由其前两个矩 确定。 在多维高斯分布中,它们是期望值 向量或均值向量 μ → {\displaystyle {\vec {\mu }}} 和协方差矩阵 σ {\displaystyle \sigma } 。 为了描述高斯过程,这些被替换为期望值函数或均值函数
m ( t ) := E ( X t ) , t ∈ T {\displaystyle m(t):=\mathbb {E} (X_{t}),\quad t\in T}
和协方差函数
k ( t , t ′ ) := Cov ( X t , X t ′ ) := E [ ( X t − m ( t ) ) ⋅ ( X t ′ − m ( t ′ ) ) ] , t , t ′ ∈ T {\displaystyle k(t,t'):=\operatorname {Cov} (X_{t},X_{t'}):=\mathbb {E} \left[(X_{t}-m(t))\cdot (X_{t'}-m(t'))\right],\quad t,t'\in T} .
这些函数可以在最简单的一维情况下理解为具有连续行的向量,以及具有连续行和列的矩阵。 下表将一维和多维高斯分布与高斯过程进行比较。 波浪号 ∼ {\displaystyle \sim } 可以理解为“分布为 ”。
分布类型
符号
变量
概率密度函数
单变量正态分布
X ∼ N ( μ , σ 2 ) {\displaystyle X\sim {\mathcal {N}}(\mu ,\sigma ^{2})}
X , μ , σ ∈ R {\displaystyle X,\mu ,\sigma \in \mathbb {R} }
p ( x ) = 1 σ 2 π exp { − 1 2 ( x − μ ) 2 / σ 2 } {\displaystyle p(x)={\frac {1}{\sigma {\sqrt {2\pi }}}}\exp {\bigl \lbrace }-{\tfrac {1}{2}}(x-\mu )^{2}/{\sigma ^{2}}{\bigr \rbrace }}
多变量正态分布
X → ∼ N n ( μ → , Σ ) {\displaystyle {\vec {X}}\sim {\mathcal {N}}_{n}({\vec {\mu }},\Sigma )}
X → , μ → ∈ R n ; Σ ∈ R n × n {\displaystyle {\vec {X}},{\vec {\mu }}\in \mathbb {R} ^{n};\Sigma \in \mathbb {R} ^{n\times n}}
p ( x → ) = 1 ( 2 π ) n 2 | Σ | 1 2 exp { − 1 2 ( x → − μ → ) T Σ − 1 ( x → − μ → ) } {\displaystyle p({\vec {x}})={\frac {1}{(2\pi )^{\frac {n}{2}}|\Sigma |^{\frac {1}{2}}}}\exp {\bigl \lbrace }-{\tfrac {1}{2}}({\vec {x}}-{\vec {\mu }})^{T}\Sigma ^{-1}({\vec {x}}-{\vec {\mu }}){\bigr \rbrace }}
高斯过程分布
( X t ) t ∈ T ∼ G P ( m , k ) {\displaystyle (X_{t})_{t\in T}\sim {\mathcal {GP}}(m,k)}
m : T → R {\displaystyle m\colon T\to \mathbb {R} } k : T × T → R {\displaystyle k\colon T\times T\to \mathbb {R} }
(无解析表示)
由于没有相应的符号用于对连续矩阵进行运算,因此无法解析地表示高斯过程的概率密度函数。这给人的印象是,无法像对有限维正态分布那样对高斯过程进行计算。然而,高斯过程的基本属性不是维度的无穷大,而是将维度分配给函数的坐标。在实际应用中,始终要处理有限数量的插值点,因此可以像在有限维情况下那样执行所有计算。只有在中间步骤中,即当要在新的插值网格点处读出值时,才需要无限维度的限制。在此中间步骤中,高斯过程,即均值函数和协方差函数,由合适的解析表达式表示或近似。在这种情况下,分配到网格点是通过参数化坐标 t {\displaystyle t} 在解析表达式中完成的。在具有离散网格点的有限维情况下,相关坐标 t i {\displaystyle t_{i}} 通过它们的索引分配到维度。
作为一个简单的现实世界例子,考虑一个高斯过程
( X t ) t ∈ T ∼ G P ( m ( t ) , k ( t , t ′ ) ) {\displaystyle (X_{t})_{t\in T}\sim {\mathcal {GP}}(m(t),k(t,t'))}
其中标量变量 t {\displaystyle t} (时间)由均值函数给出
m ( t ) = 5 Volt {\displaystyle m(t)=5\,{\text{Volt}}}
和协方差函数
k ( t , t ′ ) = { ( 1 Volt ) 2 t = t ′ 0 t ≠ t ′ {\displaystyle k(t,t')={\begin{cases}(1\,{\text{Volt}})^{2}&t=t'\\0&t\neq t'\end{cases}}}
此高斯过程描述了一个围绕 5 伏平均电压以 1 伏标准差的无限持续时间的高斯白噪声的时域电信号。
如果高斯过程的期望值或均值为常数 0,即对于所有 t ∈ T {\displaystyle t\in T} ,有 m ( t ) := E ( X t ) = 0 {\displaystyle m(t):=\mathbb {E} (X_{t})=0} ,则称该高斯过程为中心化 的。
如果协方差函数 k ( t , t ′ ) := Cov ( X t , X t ′ ) {\displaystyle k(t,t'):=\operatorname {Cov} (X_{t},X_{t'})} 是平移不变的,即可以用一个相对函数 k ( t , t ′ ) = k ( t − t ′ ) {\displaystyle k(t,t')=k(t-t')} 来描述,则称该协方差函数为平稳 的。 [ 2]
如果高斯过程的协方差函数是平稳的,并且其均值为常数,则称该高斯过程为平稳 的(或平移不变 的)。[ 3]
如果函数 k ( t , t ′ ) = k ( | t − t ′ | ) {\displaystyle k(t,t')=k(|t-t'|)} 是使用欧几里得范数 | ⋅ | {\displaystyle |\cdot |} 的一维参数径向对称,则称该协方差函数为径向 的。它被用于描述具有各向同性模型特性的系统。
常数: m ( t ) = 0 {\displaystyle m(t)=0} 以及 k ( t , t ′ ) = σ 2 {\displaystyle k(t,t')=\sigma ^{2}}
对应于来自具有标准差 σ {\displaystyle \sigma } 的高斯分布的常数值。
偏移: m ( t ) = c {\displaystyle m(t)=c} 以及 k ( t , t ′ ) = 0 {\displaystyle k(t,t')=0}
对应于由 c {\displaystyle c} 给定的常数值。
高斯白噪声: k ( t , t ′ ) = σ 2 δ t , t ′ {\displaystyle k(t,t')=\sigma ^{2}\delta _{t,t'}}
( σ {\displaystyle \sigma } : 标准差, δ {\displaystyle \delta } : 克罗内克δ )
有理二次方: k ( r ) = ( 1 + r 2 ) − α , α ≥ 0 {\displaystyle k(r)=(1+r^{2})^{-\alpha },\quad \alpha \geq 0}
伽马指数: k ( r ) = exp ( − ( r ℓ ) γ ) {\displaystyle k(r)=\exp \left(-\left({\frac {r}{\ell }}\right)^{\gamma }\right)}
奥恩斯坦-乌伦贝克过程 :[ 4] k ( r ) = exp ( − r ℓ ) {\displaystyle k(r)=\exp \left(-{\frac {r}{\ell }}\right)}
对应于简单的 Gauss-Markov 过程,描述连续的、不可微分的函数,以及通过 RC 低通滤波器 后的白噪声。
平方指数: k ( r ) = exp ( − r 2 2 ℓ 2 ) {\displaystyle k(r)=\exp {\Big (}-{\frac {r^{2}}{2\ell ^{2}}}{\Big )}}
描述无限光滑可微函数。
k ν = p + 1 / 2 ( r ) = exp ( − 2 ν r ℓ ) Γ ( p + 1 ) Γ ( 2 p + 1 ) ∑ i = 0 p ( p + i ) ! i ! ( p − i ) ! ( 8 ν r ℓ ) p − i {\displaystyle k_{\nu =p+1/2}(r)=\exp \left(-{\frac {{\sqrt {2\nu }}r}{\ell }}\right){\frac {\Gamma (p+1)}{\Gamma (2p+1)}}\sum _{i=0}^{p}{\frac {(p+i)!}{i!(p-i)!}}\left({\frac {{\sqrt {8\nu }}r}{\ell }}\right)^{p-i}}
一个高度通用的高斯过程,用于描述大多数典型的测量曲线。如果 ν > n {\displaystyle \nu >n} ,则该高斯过程的函数是 n {\displaystyle n} 次连续可微。具有 ν = 1 / 2 {\displaystyle \nu =1/2} , 3 / 2 {\displaystyle 3/2} , 5 / 2 {\displaystyle 5/2} 等的协方差函数对应于通过 1、2 或 3 个 RC 低通滤波器或与函数 exp ( − | x | ) {\displaystyle \exp \left(-|x|\right)} 进行卷积后的白噪声。常见特例包括
k ν = 3 / 2 ( r ) = ( 1 + 3 r ℓ ) exp ( − 3 r ℓ ) {\displaystyle k_{\nu =3/2}(r)=\left(1+{\frac {{\sqrt {3}}r}{\ell }}\right)\exp \left(-{\frac {{\sqrt {3}}r}{\ell }}\right)}
k ν = 5 / 2 ( r ) = ( 1 + 5 r ℓ + 5 r 2 3 ℓ 2 ) exp ( − 5 r ℓ ) {\displaystyle k_{\nu =5/2}(r)=\left(1+{\frac {{\sqrt {5}}r}{\ell }}+{\frac {5r^{2}}{3\ell ^{2}}}\right)\exp \left(-{\frac {{\sqrt {5}}r}{\ell }}\right)}
k ν = 1 / 2 ( r ) {\displaystyle k_{\nu =1/2}(r)} 对应于 Ornstein-Uhlenbeck 协方差函数,以及 k ν → ∞ ( r ) {\displaystyle k_{\nu \rightarrow \infty }(r)} 对应于平方指数函数。
周期性: k ( r ) = exp ( − 2 sin 2 ( π r T ) ℓ 2 ) {\displaystyle k(r)=\exp \left(-{\frac {2\sin ^{2}\left(\pi {\frac {r}{T}}\right)}{\ell ^{2}}}\right)}
来自此高斯过程的函数既是周期为 T {\displaystyle T} 的周期函数,也是光滑的(平方指数)。如果将正弦函数周围的平方替换为绝对值,则会导致非光滑周期函数。
多项式: k ( t , t ′ ) = ( t ⊤ t ′ + σ 0 2 ) p {\displaystyle k(t,t')=\left(t^{\top }t'+\sigma _{0}^{2}\right)^{p}}
向外快速增长,通常是回归问题的糟糕选择,但在高维分类问题中可能有用。它是半正定的,不一定生成可逆协方差矩阵。[ 6]
布朗桥 : m ( t ) = 0 {\displaystyle m(t)=0} 以及 k ( t , t ′ ) = min ( t , t ′ ) − t t ′ {\displaystyle k(t,t')=\min(t,t')-tt'}
维纳过程 : m ( t ) = 0 {\displaystyle m(t)=0} 以及 k ( t , t ′ ) = min ( t , t ′ ) {\displaystyle k(t,t')=\min(t,t')}
对应于 布朗运动 或高斯白噪声的积分。
伊藤过程 : 如果 T = R + {\displaystyle T=\mathbb {R} _{+}} 以及 f {\displaystyle f} , g {\displaystyle g} 是两个可积的实值函数,并且 ( W t ) {\displaystyle (W_{t})} 是一个维纳过程,那么伊藤过程
X t = ∫ 0 t f ( s ) d s + ∫ 0 t g ( s ) d W s {\displaystyle X_{t}=\int _{0}^{t}f(s)\,\mathrm {d} s+\int _{0}^{t}g(s)\,\mathrm {d} W_{s}}
是一个高斯过程,其中 m ( t ) = ∫ 0 t f ( s ) d s {\displaystyle m(t)=\int _{0}^{t}f(s)\,\mathrm {d} s} 且 k ( t , t ′ ) = ∫ 0 min ( t , t ′ ) g 2 ( s ) d s {\displaystyle k(t,t')=\int _{0}^{\min(t,{t'})}g^{2}(s)\,\mathrm {d} s} .
备注
r := ‖ t − t ′ ‖ {\displaystyle r:=\|t-t'\|} 是对于平稳且径向协方差函数 k ( t , t ′ ) = k ( r ) {\displaystyle k(t,t')=k(r)} 的距离。
ℓ {\displaystyle \ell } 是协方差函数的特征长度尺度,在此尺度下,相关性衰减到大约 e − 1 {\displaystyle e^{-1}} .
大多数平稳协方差函数 k ( r ) {\displaystyle k(r)} 都被归一化为 k ( 0 ) = 1 {\displaystyle k(0)=1} ,因此等效于相关函数 。为了用作协方差函数,它们乘以方差 σ 2 {\displaystyle \sigma ^{2}} ,这为变量分配了缩放和/或物理单位。
协方差函数不能是任意的函数 k ( r ) {\displaystyle k(r)} 或 k ( t , t ′ ) {\displaystyle k(t,t')} ,因为必须确保它们是正定的 。[ 7] 半正定函数也是有效的协方差函数,但需要注意的是,它们不一定导致可逆协方差矩阵,因此通常与正定函数结合使用。
高斯过程(或正态分布)可用于执行各种随机运算,这些运算允许将具有正态分布误差的不同函数连接在一起或从彼此中提取。如果函数之间存在互相关,则假设它们遵循联合正态分布。例如,在信号处理中,这些运算用于处理时域信号及其测量不确定性。这些函数的分布在以下运算中以有限个插值点的向量和矩阵表示法描述 y ∼ N ( μ , Σ ) {\displaystyle y\sim {\mathcal {N}}\left(\mu ,\Sigma \right)} ,类似地适用于任意均值函数 m ( t ) {\displaystyle m(t)} 和协方差函数 k ( t , t ′ ) {\displaystyle k(t,t')} 。相应地将正态分布向量( y 1 {\displaystyle y_{1}} 、 y 2 {\displaystyle y_{2}} 等)描述为函数。
如果构建两个独立(尤其是互不相关)函数的总和,则它们的均值函数和协方差函数加起来。
y 1 + y 2 ∼ N ( μ 1 , Σ 1 ) + N ( μ 2 , Σ 2 ) = N ( μ 1 + μ 2 , Σ 1 + Σ 2 ) {\displaystyle y_{1}+y_{2}\sim {\mathcal {N}}\left(\mu _{1},\Sigma _{1}\right)+{\mathcal {N}}\left(\mu _{2},\Sigma _{2}\right)={\mathcal {N}}\left(\mu _{1}+\mu _{2},\Sigma _{1}+\Sigma _{2}\right)} .
相关的概率密度函数因此经过 卷积 。
相关函数在极端情况下可以是相同的,或者仅相差常数因子。然后总和对应于与添加的因子的 乘法 。如果两个函数都相同,则结果为 y + y = 2 y ∼ N ( 2 μ , 4 Σ ) {\displaystyle y+y=2y\sim {\mathcal {N}}\left(2\mu ,4\Sigma \right)} 。
如果构建两个独立不相关函数的差值,则它们的均值函数相减,而它们的协方差函数相加 。
y 1 − y 2 ∼ N ( μ 1 , Σ 1 ) − N ( μ 2 , Σ 2 ) = N ( μ 1 − μ 2 , Σ 1 + Σ 2 ) {\displaystyle y_{1}-y_{2}\sim {\mathcal {N}}\left(\mu _{1},\Sigma _{1}\right)-{\mathcal {N}}\left(\mu _{2},\Sigma _{2}\right)={\mathcal {N}}\left(\mu _{1}-\mu _{2},\Sigma _{1}+\Sigma _{2}\right)} .
如果高斯过程的函数y2 描述了另一个高斯过程的加性成分y1 ,则减去此成分会导致均值函数和协方差函数的减法。
y 1 − y 2 ∼ N ( μ 1 , Σ 1 ) ∖ N ( μ 2 , Σ 2 ) = N ( μ 1 − μ 2 , Σ 1 − Σ 2 ) {\displaystyle y_{1}-y_{2}\sim {\mathcal {N}}\left(\mu _{1},\Sigma _{1}\right)\setminus {\mathcal {N}}\left(\mu _{2},\Sigma _{2}\right)={\mathcal {N}}\left(\mu _{1}-\mu _{2},\Sigma _{1}-\Sigma _{2}\right)}
反斜杠运算符 ∖ {\displaystyle \setminus } 在这里象征性地用于“*无包含组件*”的意义。
以下与任意矩阵 F {\displaystyle F} 的乘法也包括与函数(对角矩阵 F {\displaystyle F} )或与标量( F = c ⋅ I {\displaystyle F=c\cdot \mathbb {I} } )的乘积的特殊情况。
F y ∼ F ⋅ N ( μ , Σ ) = N ( F μ , F Σ F ⊤ ) {\displaystyle Fy\sim F\cdot {\mathcal {N}}\left(\mu ,\Sigma \right)={\mathcal {N}}\left(F\mu ,F\Sigma F^{\top }\right)}
这里应该注意,两个高斯过程的函数相互乘积不会导致另一个高斯过程,因为得到的概率分布将失去是高斯或正态的性质。
所有之前显示的操作都是一般线性变换的特殊情况
A ⋅ N ( μ 1 , Σ 1 ) + B ⋅ N ( μ 2 , Σ 2 ) = N ( A μ 1 + B μ 2 , A Σ 1 A ⊤ + B Σ 2 B ⊤ + A Σ 12 B ⊤ + B Σ 12 ⊤ A ⊤ ) {\displaystyle A\cdot {\mathcal {N}}\left(\mu _{1},\Sigma _{1}\right)+B\cdot {\mathcal {N}}\left(\mu _{2},\Sigma _{2}\right)={\mathcal {N}}\left(A\mu _{1}+B\mu _{2},A\Sigma _{1}A^{\top }+B\Sigma _{2}B^{\top }+A\Sigma _{12}B^{\top }+B\Sigma _{12}^{\top }A^{\top }\right)}
This relation[ 8] describes the sum A ⋅ y 1 + B ⋅ y 2 {\displaystyle A\cdot y_{1}+B\cdot y_{2}} with constant matrices A {\displaystyle A} and B {\displaystyle B} and the support point vectors y 1 {\displaystyle y_{1}} and y 2 {\displaystyle y_{2}} of the functions of two Gaussian processes with y 1 ∼ N ( μ 1 , Σ 1 ) {\displaystyle y_{1}\sim {\mathcal {N}}\left(\mu _{1},\Sigma _{1}\right)} and y 2 ∼ N ( μ 2 , Σ 2 ) {\displaystyle y_{2}\sim {\mathcal {N}}\left(\mu _{2},\Sigma _{2}\right)} . For partially correlated functions y 1 {\displaystyle y_{1}} and y 2 {\displaystyle y_{2}} , the cross-covariance matrix Σ 12 {\displaystyle \Sigma _{12}} must be given and all variables must be jointly normal (i.e. the must follow a common multivariate normal distribution) as a precondition. In such case the sum A ⋅ y 1 + B ⋅ y 2 {\displaystyle A\cdot y_{1}+B\cdot y_{2}} is correlated with y 1 {\displaystyle y_{1}} by the cross-covariance matrix A Σ 1 + B Σ 12 {\displaystyle A\Sigma _{1}+B\Sigma _{12}} and with y 2 {\displaystyle y_{2}} by A Σ 12 + B Σ 2 {\displaystyle A\Sigma _{12}+B\Sigma _{2}} .[ 9] A cross-covariance matrix Σ X Y {\displaystyle \Sigma _{XY}} between two functions X {\displaystyle X} and Y {\displaystyle Y} can be converted into a cross-correlation matrix C X Y {\displaystyle C_{XY}} using their covariance matrices Σ X {\displaystyle \Sigma _{X}} and Σ Y {\displaystyle \Sigma _{Y}} through the relation [ C X Y ] i j = [ Σ X Y ] i j / [ Σ X ] i i [ Σ Y ] j j {\displaystyle \left[C_{XY}\right]{ij}=\left[\Sigma {XY}\right]{ij}/{\sqrt {\left[\Sigma _{X}\right]{ii}\left[\Sigma _{Y}\right]_{jj}}}} . In the case of two partially correlated Gaussian processes, it should be noted that special dependencies may exist where the sum does not result in a normal distribution and the equation accordingly loses its validity, although both input quantities are normally distributed.
如果同一个未知函数由两个不同的高斯过程描述,它们对彼此的误差是不相关的,那么可以形成这两个部分信息部分的并集或融合(也称为 传感器融合 ),以实现误差或方差的减少。例如,在信号处理中,同一个波形由两个不同的传感器测量(例如,飞机的轨迹由 惯性传感器 独立测量,以及由 GNSS 位置确定独立测量),它们叠加了两个不同的独立噪声或误差信号。联合分布
Σ Fusion = ( Σ 1 − 1 + Σ 2 − 1 ) − 1 {\displaystyle \Sigma _{\text{Fusion}}=\left(\Sigma _{1}^{-1}+\Sigma _{2}^{-1}\right)^{-1}}
μ Fusion = Σ Fusion Σ 1 − 1 μ 1 + Σ Fusion Σ 2 − 1 μ 2 {\displaystyle \mu _{\text{Fusion}}=\Sigma _{\text{Fusion}}\Sigma _{1}^{-1}\mu _{1}+\Sigma _{\text{Fusion}}\Sigma _{2}^{-1}\mu _{2}}
它对应于两个概率密度函数的重叠或归一化乘积,并描述了考虑到两部分信息的可能性最大的高斯过程(另请参见逆方差加权 )。这些表达式也可以重新排列,[ 10] 以便只需要执行一次矩阵求逆。
μ Fusion = μ 1 − Σ 1 ( Σ 1 + Σ 2 ) − 1 ( μ 1 − μ 2 ) = Σ 2 ( Σ 1 + Σ 2 ) − 1 μ 1 + Σ 1 ( Σ 1 + Σ 2 ) − 1 μ 2 {\displaystyle \mu _{\text{Fusion}}=\mu _{1}-\Sigma _{1}\left(\Sigma _{1}+\Sigma _{2}\right)^{-1}\left(\mu _{1}-\mu _{2}\right)=\Sigma _{2}\left(\Sigma _{1}+\Sigma _{2}\right)^{-1}\mu _{1}+\Sigma _{1}\left(\Sigma _{1}+\Sigma _{2}\right)^{-1}\mu _{2}}
Σ Fusion = Σ 1 − Σ 1 ( Σ 1 + Σ 2 ) − 1 Σ 1 = Σ 1 ( Σ 1 + Σ 2 ) − 1 Σ 2 {\displaystyle \Sigma _{\text{Fusion}}=\Sigma _{1}-\Sigma _{1}\left(\Sigma _{1}+\Sigma _{2}\right)^{-1}\Sigma _{1}=\Sigma _{1}\left(\Sigma _{1}+\Sigma _{2}\right)^{-1}\Sigma _{2}}
公式的有效性要求函数对具有完全不相关的误差。但是,如果存在部分相关性,交叉协方差为 Σ 12 {\displaystyle \Sigma _{12}} ,那么扩展和广义公式(即所谓的Bar-Shalom-Campo 融合 )适用,[ 11] 其中相关部分被暂时减去,然后在融合后加回来。
μ Fusion = μ 1 − ( Σ 1 − Σ 12 ) ( Σ 1 + Σ 2 − Σ 12 − Σ 21 ) − 1 ( μ 1 − μ 2 ) {\displaystyle \mu _{\text{Fusion}}=\mu _{1}-(\Sigma _{1}-\Sigma _{12})(\Sigma _{1}+\Sigma _{2}-\Sigma _{12}-\Sigma _{21})^{-1}(\mu _{1}-\mu _{2})}
Σ Fusion = Σ 1 − ( Σ 1 − Σ 12 ) ( Σ 1 + Σ 2 − Σ 12 − Σ 21 ) − 1 ( Σ 1 − Σ 21 ) {\displaystyle \Sigma _{\text{Fusion}}=\Sigma _{1}-(\Sigma _{1}-\Sigma _{12})(\Sigma _{1}+\Sigma _{2}-\Sigma _{12}-\Sigma _{21})^{-1}(\Sigma _{1}-\Sigma _{21})}
当给出整个函数和各个分量的先验分布时,给定函数 y sum {\displaystyle y_{\text{sum}}} 可以近似分解为其加性分量。根据加法规则 ,整个函数的高斯过程
μ sum = μ 1 + … + μ n {\displaystyle \mu _{\text{sum}}=\mu _{1}+\ldots +\mu _{n}}
Σ sum = Σ 1 + … + Σ n {\displaystyle \Sigma _{\text{sum}}=\Sigma _{1}+\ldots +\Sigma _{n}}
由各分量的先验分布组成。单个分量 y i {\displaystyle y_{i}} 然后可以通过后验高斯过程估计
μ post, i = μ i + Σ i Σ sum − 1 ( y sum − μ sum ) {\displaystyle \mu _{{\text{post,}}i}=\mu _{i}+\Sigma _{i}\Sigma _{\text{sum}}^{-1}\left(y_{\text{sum}}-\mu _{\text{sum}}\right)}
Σ post, i = Σ i − Σ i Σ sum − 1 Σ i ⊤ {\displaystyle \Sigma _{{\text{post,}}i}=\Sigma _{i}-\Sigma _{i}\Sigma _{\text{sum}}^{-1}\Sigma _{i}^{\top }}
它们通过交叉协方差相互关联
Σ post, i , j = − Σ i Σ sum − 1 Σ j ⊤ {\displaystyle \Sigma _{{\text{post,}}i,j}=-\Sigma _{i}\Sigma _{\text{sum}}^{-1}\Sigma _{j}^{\top }} .
除了非常特殊的情况外,这种分解是模棱两可的。因此,这些成分是围绕最可能成分的可能解的耦合概率分布(另见 示例:信号分解 )。
该分解基于上一节中融合方程,这些方程应用于特定分布 N ( μ sum , Σ sum ) {\displaystyle {\mathcal {N}}\left(\mu _{\text{sum}},\Sigma _{\text{sum}}\right)} 和 N ( μ i , Σ i ) {\displaystyle {\mathcal {N}}\left(\mu _{i},\Sigma _{i}\right)} 。在这种情况下,密度乘积或重叠提取相应的成分。[ 12]
高斯过程可用于插值、外推或平滑映射 R n → R {\displaystyle \mathbb {R} ^{n}\to \mathbb {R} } 的离散测量数据。这种高斯过程的应用称为高斯过程回归。由于历史原因,该方法通常被称为 *克里金*,特别是在空间域。它特别适用于没有已知特定模型函数的问题。作为一种机器学习方法,其属性允许基于观察结果自动构建模型。在这个应用中,高斯过程捕捉了系统的典型行为,可以用来推导出问题的最佳插值。结果是可能的插值函数的概率分布以及概率最高的解。
高斯过程回归的计算可以通过以下步骤执行
先验均值函数: 如果测量值中存在一致的趋势,则构建先验均值函数以使趋势均衡。
先验协方差函数: 协方差函数根据系统的某些定性属性选择,或者根据某些规则从不同属性的协方差函数中组合而成。
参数微调: 为了获得定量上正确的协方差,所选协方差函数被调整为可用的测量值,要么是目标,要么是通过优化过程,直到协方差函数反映出经验协方差。
条件分布: 通过考虑已知的测量值,从先验 高斯过程计算出具有未知值的新的支撑点的条件后验 高斯过程。
解释 :最后,从后验高斯过程中,均值函数被用作最佳可能的插值,并且如果需要,协方差函数的对角线被用作位置相关的方差。
在实际应用中,高斯过程必须从有限个离散测量值或有限个样本曲线中确定。类似于一维高斯分布,它完全由离散测量值的均值和标准差决定,人们会期望几个单个但完整的函数 f i ( t ) {\displaystyle f_{i}(t)} ,以便计算均值函数
m ( t ) = 1 N ∑ i = 1 N f i ( t ) {\displaystyle m(t)={\frac {1}{N}}\sum _{i=1}^{N}f_{i}(t)}
以及(经验)协方差函数
k ( t , t ′ ) = 1 N − 1 ∑ i = 1 N [ f i ( t ) − m ( t ) ] ⋅ [ f i ( t ′ ) − m ( t ′ ) ] {\displaystyle k(t,t')={\frac {1}{N-1}}\sum _{i=1}^{N}\left[f_{i}(t)-m(t)\right]\cdot \left[f_{i}(t')-m(t')\right]} .
然而,通常情况下,没有这样的典型函数分布可用。在回归问题中,只知道单个函数的离散插值点,需要对其进行插值或平滑。在这种情况下,也可以确定高斯过程。为此,不是考虑这个单个函数,而是考虑一组许多彼此平移的函数副本。现在可以用协方差函数来描述这种分布。通常,它可以表示为这种平移的相对函数 k ( t , t ′ ) = k ( t ′ − t ) {\displaystyle k(t,t')=k(t'-t)} 。然后它被称为平稳协方差函数 ,它对函数的所有位置都适用,并描述了每个点对其邻域的处处相等(因此是平稳的)相关性,以及相邻点之间的相关性。
协方差函数以解析形式表示,并通过启发式方法确定或从文献中查找。解析协方差函数的自由参数根据测量值拟合。许多物理系统具有相似的平稳协方差函数形式,因此,通过几个表格化的解析协方差函数,大多数应用都可以描述。例如,存在关于抽象属性(如平滑度、粗糙度(不可微分性)、周期性或噪声)的协方差函数,可以根据某些规则进行组合和拟合,以再现测量值的属性。
下表显示了具有这些抽象属性的协方差函数示例。示例曲线是相应高斯过程的随机样本,代表典型的函数形状。它们是用相应的协方差矩阵 Σ i j = k ( t i , t j ) {\displaystyle \Sigma _{ij}=k(t_{i},t_{j})} 和多维正态分布的随机生成器作为相关的随机向量生成的。平稳协方差函数 k ( t , t ′ ) {\displaystyle k(t,t')} 在此简化为一维函数 k ( r ) {\displaystyle k(r)} ,其中 r := | t − t ′ | {\displaystyle r:=|t-t'|} .
属性
平稳协方差函数的示例
随机函数 f ( t ) {\displaystyle f(t)}
常数
k ( r ) = 1 {\displaystyle k(r)=1}
平滑
k ( r ) = exp ( − r 2 / 5 ) {\displaystyle k(r)=\exp \left(-r^{2}/5\right)}
粗糙
k ( r ) = exp ( − r / 15 ) {\displaystyle k(r)=\exp \left(-r/15\right)}
周期性
k ( r ) = exp ( − | sin ( 0 , 4 π r ) | / 2.5 ) {\displaystyle k(r)=\exp \left(-\left|\sin \left(0{,}4\pi r\right)\right|/2.5\right)}
噪声
k ( r ) = { 0.2 : r = 0 0 : r ≠ 0 {\displaystyle {\begin{aligned}k(r)={\begin{cases}0.2:&r=0\\0:&r\neq 0\end{cases}}\end{aligned}}}
混合 (周期性, 平滑和 噪声)
k ( r ) = exp ( − sin 2 ( π 2 r ) / 4 − r 2 / 40 ) + { 0.005 : r = 0 0 : r ≠ 0 {\displaystyle {\begin{aligned}k(r)=&\,\exp \left(-\sin ^{2}({\tfrac {\pi }{2}}r)/4\right.\\&\left.-r^{2}/40\right)+{\begin{cases}0.005:&r=0\\0:&r\neq 0\end{cases}}\end{aligned}}}
这些属性可以根据某些计算规则组合。构建协方差函数的基本目标是尽可能精确地重现真实的协方差,同时满足正定性 条件。除常数外,所示示例具有后一种属性,并且此类函数的加法和乘法也保持正定。常数协方差函数仅是半正定的,必须与至少一个正定函数组合。表中最低的协方差函数显示了不同属性的可能混合。此示例中的函数在一定距离内呈周期性,具有相对平滑的行为,并且叠加了一定程度的测量噪声。
对于混合属性,以下规则适用:[ 13]
在加性效应的情况下,协方差被加在一起,例如在测量噪声的叠加中。
对于相互增强或减弱的效应,协方差相乘,例如在周期性缓慢衰减的情况下。
这里用一维函数展示的内容可以类似地转移到多维系统,只需用相应的n维距离范数替换距离 r {\displaystyle r} 。高维中的支撑点按任意顺序展开并用向量表示,以便它们可以像一维情况下那样进行处理。下图显示了两个二维高斯过程的示例,以及不同的平稳和径向协方差函数。在右图中显示了高斯过程的随机抽取。
高斯过程也可以具有协方差函数的非平稳 属性,即相对于位置变化的相对协方差函数。文献描述了如何构建非平稳协方差函数,以确保正定性。例如,一种简单的方法是使用反距离加权 在位置上对不同的协方差函数进行插值。
定性构建的协方差函数包含参数,称为超参数 ,这些参数必须针对系统进行调整(或校准),才能获得定量上正确的结果。这可以通过对系统的直接了解来完成,例如,已知的测量噪声的标准偏差或整个系统的先验标准偏差(先验sigma ,平方对应于协方差矩阵的对角元素)。
但是,这些参数也可以自动调整。为此,人们使用边缘似然 ,即给定测量曲线上的概率密度作为假设高斯过程与现有测量曲线之间一致性的度量。然后优化参数以使这种一致性最大化。由于指数函数是严格单调的,因此最大化概率密度函数的指数(即所谓的对数边缘似然 函数)就足够了[ 14]
log p ( y ) = − 1 2 y ⊤ Σ − 1 y − 1 2 log | Σ | − n 2 log ( 2 π ) {\displaystyle \log p(\mathbf {y} )=-{\frac {1}{2}}\mathbf {y} ^{\top }\Sigma ^{-1}\mathbf {y} -{\frac {1}{2}}\log |\Sigma |-{\frac {n}{2}}\log(2\pi )}
使用长度为 n {\displaystyle n} 的测量向量 y {\displaystyle \mathbf {y} } 和依赖于超参数的协方差矩阵 Σ {\displaystyle \Sigma } 。从数学上讲,最大化边际似然会导致精度(最小化残差)和理论简单性之间的最佳权衡。一个简单的理论的特点是大的非对角元素,描述了系统中高度的相关性。这意味着系统中自由度很少,因此在某种意义上,该理论可以用很少的规则来解释所有的相关性。如果这些规则选择得太简单,测量结果将无法充分再现,残差误差会增长太多。在最大边际似然处,如果提供了足够多的测量数据以获得良好的条件,则可以找到最佳理论的平衡。最大似然估计的这种隐含性质也可以被理解为最大似然估计 ,也可以理解为奥卡姆剃刀原理 。
如果系统的高斯过程已经如上所述确定,即如果先验均值函数和协方差函数已知,则当仅通过测量知道所需函数的几个支撑点时,可以使用高斯过程计算任意插值中间值的预测。预测是通过给定部分信息的多维高斯分布的条件概率完成的。多维高斯分布的维度
X = ( X U X K ) ∼ N ( ( μ U μ K ) , ( Σ UU Σ UK Σ KU Σ KK ) ) {\displaystyle {X}={\binom {{X}_{\text{U}}}{{X}_{\text{K}}}}\sim {\mathcal {N}}\left({\binom {{\mu }_{\text{U}}}{{\mu }_{\text{K}}}},{\begin{pmatrix}{\Sigma }_{\text{UU}}&{\Sigma }_{\text{UK}}\\{\Sigma }_{\text{KU}}&{\Sigma }_{\text{KK}}\end{pmatrix}}\right)}
被分为要预测的未知值(未知索引 U)和已知的测量值(已知索引 K)。因此,向量分解为两部分。协方差矩阵相应地被分为四个块:未知值内的协方差(UU)、已知的测量值内的协方差(KK)以及未知值和已知值之间的协方差(UK 和 KU)。协方差矩阵的值取自协方差函数的离散点,均值向量取自均值函数的对应点: Σ i j = k ( t i , t j ) {\displaystyle \Sigma _{ij}=k(t_{i},t_{j})} 或 μ i = m ( t i ) {\displaystyle \mu _{i}=m(t_{i})} .
通过考虑已知的测量值 X K {\displaystyle X_{\text{K}}} ,分布变为条件 或后验 正态分布
X U ∣ X K ∼ N ( μ U + Σ UK Σ KK − 1 ( X K − μ K ) , Σ UU − Σ UK Σ KK − 1 Σ KU ) {\displaystyle X_{\text{U}}\mid X_{\text{K}}\sim {\mathcal {N}}\left(\mu _{\text{U}}+\Sigma _{\text{UK}}\Sigma _{\text{KK}}^{-1}(X_{\text{K}}-\mu _{\text{K}}),\Sigma _{\text{UU}}-\Sigma _{\text{UK}}\Sigma _{\text{KK}}^{-1}\Sigma _{\text{KU}}\right)} ,
其中 X U {\displaystyle X_{\text{U}}} 是待确定的未知变量。符号 ∣ X K {\displaystyle \mid X_{\text{K}}} 表示“给定 X K {\displaystyle X_{\text{K}}} ”,这意味着在给定 X K {\displaystyle X_{\text{K}}} 的条件下 。
所得高斯分布的第一个参数描述了我们正在寻找的新均值向量,它现在对应于插值的最高概率函数值。此外,整个预测的新协方差矩阵在第二个参数中给出。特别是,它包含了预测均值的置信区间,由主对角线 元素的平方根给出。
方差为 σ noise 2 {\displaystyle \sigma _{\text{noise}}^{2}} 的白噪声可以作为先验协方差模型的一部分进行建模,方法是在 Σ KK {\displaystyle \Sigma _{\text{KK}}} 的对角线上添加适当的项。如果相同的协方差函数也用于形成矩阵 Σ UU {\displaystyle \Sigma _{\text{UU}}} ,则预测的分布也会描述一个方差为 σ noise 2 {\displaystyle \sigma _{\text{noise}}^{2}} 的白噪声。为了获得无噪声信号的预测,在后验 分布中
X U ∣ X K ∼ N ( μ U + Σ UK [ Σ KK + I σ noise 2 ] − 1 ( X K − μ K ) , Σ UU − Σ UK [ Σ KK + I σ noise 2 ] − 1 Σ KU ) {\displaystyle X_{\text{U}}\mid X_{\text{K}}\sim {\mathcal {N}}\left(\mu _{\text{U}}+\Sigma _{\text{UK}}\left[\Sigma _{\text{KK}}+\mathbb {I} \sigma _{\text{noise}}^{2}\right]^{-1}(X_{\text{K}}-\mu _{\text{K}}),\Sigma _{\text{UU}}-\Sigma _{\text{UK}}\left[\Sigma _{\text{KK}}+\mathbb {I} \sigma _{\text{noise}}^{2}\right]^{-1}\Sigma _{\text{KU}}\right)}
相应的术语在 Σ UU {\displaystyle \Sigma _{\text{UU}}} 中被省略,如果适用的话,在 Σ UK {\displaystyle \Sigma _{\text{UK}}} 和 Σ KU {\displaystyle \Sigma _{\text{KU}}} 中也一样。这尽可能地平均了测量噪声,这也正确地反映在预测的置信区间中。同样地,任何不需要的加性噪声信号都可以从测量数据中去除(参见算术运算 分解 ),只要它可以用协方差函数来描述,并且与所需信号分量足够容易区分。为此,代替对角矩阵 I σ noise 2 {\displaystyle \mathbb {I} \sigma _{\text{noise}}^{2}} ,使用干扰的相应协方差矩阵 Σ noise {\displaystyle \Sigma _{\text{noise}}} 。因此,具有噪声信号的测量需要两个协方差模型: k ( t , t ′ ) {\displaystyle k(t,t')} 用于估计所需的信号分量,以及 k ( t , t ′ ) + k noise ( t , t ′ ) {\displaystyle k(t,t')+k_{\text{noise}}(t,t')} 用于原始信号。
推导可以通过 贝叶斯公式 完成,方法是代入已知和未知支撑点的两个概率密度以及复合概率密度。得到的条件后验正态分布对应于高斯分布与已知值所跨越的子向量空间的重叠或交集。
对于本身是多维正态分布的噪声测量,通过将两个概率密度相乘来获得对先验分布的重叠。两个多维正态分布的概率密度的乘积对应于算术运算 融合 ,它可以用来推导出抑制噪声的分布。
在作为高斯过程的完整符号中,后验高斯过程产生
( X t ) ∼ G P ( m , k ) {\displaystyle (X_{t})\sim {\mathcal {GP}}(m,k)}
以及在坐标 t = ( t 1 , t 2 , … , t n ) {\displaystyle \mathbf {t} =(t_{1},t_{2},\ldots ,t_{n})} 的 n {\displaystyle n} 个已知测量值 x = ( x 1 , x 2 , … , x n ) {\displaystyle \mathbf {x} =(x_{1},x_{2},\ldots ,x_{n})} ,一个新的分布由条件后验 高斯过程给出
( X t ∣ t , x ) ∼ G P ( m p o s t , k p o s t ) {\displaystyle (X_{t}\mid \mathbf {t} ,\mathbf {x} )\sim {\mathcal {GP}}\left(m_{\mathrm {post} },k_{\mathrm {post} }\right)}
这里, K {\displaystyle K} 是通过对协方差函数 k {\displaystyle k} 在离散行 t i {\displaystyle t_{i}} 和离散列 t j {\displaystyle t_{j}} 上进行评估而得到的协方差矩阵。此外, k {\displaystyle \mathbf {k} } 是通过仅在离散行或仅在离散列上评估 k {\displaystyle k} 而适当地形成的函数向量。
在具有有限数量的支持点的实际数值计算中,只使用条件多元正态分布的方程。后验高斯过程的符号在这里仅用于理论理解,以便描述函数形式的连续体的极限,从而描绘坐标值的分配。
从先验高斯过程,使用测量值来获得后验高斯过程,它考虑了已知的局部信息。高斯过程回归的结果不仅仅是一个解,而是所有可能的插值解函数的集合,这些函数以不同的概率加权。这种不确定性并非该方法的弱点。它完全符合问题本身,因为对于不完全已知的理论或存在噪声测量的理论,原则上无法确定唯一的解。然而,我们通常特别感兴趣的是至少具有最高概率的解。它由后验高斯过程第一个参数中的均值函数 m p o s t ( t ) {\displaystyle m_{\mathrm {post} }(t)} 给出。从第二个参数中的条件协方差函数,可以获得围绕该解的散布。协方差函数的对角线 k p o s t ( t , t ) {\displaystyle k_{\mathrm {post} }(t,t)} 给出了一个函数,该函数具有预测的最可能函数的方差。然后,置信区间由边界 m p o s t ( t ) ± k p o s t ( t , t ) {\displaystyle m_{\mathrm {post} }(t)\pm {\sqrt {k_{\mathrm {post} }(t,t)}}} 给出。
先验和后验高斯过程
先验高斯过程 ,由它生成的随机曲线表示。
先验高斯过程 ,由均值函数和置信区间的面积表示。
当已知三个支持点时,后验高斯过程 ,由随机曲线表示。
后验高斯过程 ,由均值函数和置信区间的面积表示。
后验高斯过程 ,假设测量噪声。插值不再精确地通过点。
后验高斯过程 ,假设测量噪声。均值函数变得更平滑,置信区间保持大于零。
后验高斯过程 ,对间隙进行插值,由均值函数和置信区间的面积表示。
后验高斯过程 ,对间隙进行插值,由根据分布进行的动画随机波动表示。
示例的 Python 代码可在各自的图像描述页面上找到。
在某些条件高斯过程的情况下,线性相关的测量值组完全不确定。例如,对于来自欠定方程的间接测量,这种情况就出现了,例如,对于形式为 A ⊤ Σ − 1 A {\displaystyle A^{\top }\Sigma ^{-1}A} 的不可逆正半定矩阵。然后,网格点不能轻易地划分成已知和未知值,并且相关的协方差矩阵将由于无限的不确定性而变得奇异。这将对应于在与坐标轴横向的某些空间方向上无限延伸的正态分布。为了考虑不确定变量之间的关系,在这种情况下,必须使用逆矩阵 Σ 2 − 1 {\displaystyle \Sigma _{\text{2}}^{-1}} ,称为精度矩阵 。这可以描述完全不确定的测量,这在对角线上用零来表示。对于这种奇异分布 N ( μ 2 , Σ 2 ) {\displaystyle {\mathcal {N}}\left(\mu _{\text{2}},\Sigma _{\text{2}}\right)} ,其中部分测量值 μ 2 {\displaystyle \mu _{\text{2}}} 未知,且测量不确定性 Σ 2 {\displaystyle \Sigma _{\text{2}}} 奇异,所需的后验分布是通过与先验高斯过程模型 N ( μ 1 , Σ 1 ) {\displaystyle {\mathcal {N}}\left(\mu _{\text{1}},\Sigma _{\text{1}}\right)} 的重叠获得的,通过将概率密度相乘来计算。两个正态分布的并集
Σ Fusion = ( I + Σ 1 Σ 2 − 1 ) − 1 Σ 1 {\displaystyle \Sigma _{\text{Fusion}}=\left(\mathbb {I} +\Sigma _{\text{1}}\Sigma _{\text{2}}^{-1}\right)^{-1}\Sigma _{\text{1}}}
μ Fusion = ( I + Σ 1 Σ 2 − 1 ) − 1 μ 1 + Σ Fusion Σ 2 − 1 μ 2 {\displaystyle \mu _{\text{Fusion}}=\left(\mathbb {I} +\Sigma _{\text{1}}\Sigma _{\text{2}}^{-1}\right)^{-1}\mu _{\text{1}}+\Sigma _{\text{Fusion}}\Sigma _{\text{2}}^{-1}\mu _{\text{2}}}
是通过适当的转换,在融合 操作后获得的,使得两个矩阵的奇异性保持逆运算。结果始终是有限分布,因为有限矩阵占主导地位。如果两者都是有限的,则该方程可以写成与条件分布部分中相同形式的后验高斯过程。
给定基函数 φ j ( t ) {\displaystyle \varphi _{j}(t)} ,需要形成一个线性组合,使其与相关高斯过程 G P ( m , k ) {\displaystyle {\mathcal {GP}}(m,k)} 的分布 N ( μ , Σ ) {\displaystyle {\mathcal {N}}(\mu ,\Sigma )} 具有最大重叠。 或者,需要近似测量值 μ {\displaystyle \mu } ,同时尽可能忽略其中包含的干扰信号 N ( 0 , Σ ) {\displaystyle {\mathcal {N}}(0,\Sigma )} 。 在这两种情况下,都可以使用 广义最小二乘估计 来计算所需的系数。
c = ( A ⊤ Σ − 1 A ) − 1 A ⊤ Σ − 1 μ {\displaystyle c=\left(A^{\top }\Sigma ^{-1}A\right)^{-1}A^{\top }\Sigma ^{-1}\mu }
Σ c = ( A ⊤ Σ − 1 A ) − 1 {\displaystyle \Sigma _{c}=\left(A^{\top }\Sigma ^{-1}A\right)^{-1}}
矩阵 A i j = φ j ( t i ) {\displaystyle A_{ij}=\varphi _{j}(t_{i})} 包含基函数 φ j ( t ) {\displaystyle \varphi _{j}(t)} 在插值点 t i {\displaystyle t_{i}} 处的函数值。 得到的系数 c 及其相关协方差矩阵 Σ c {\displaystyle \Sigma _{c}} 描述了在分布 N ( μ , Σ ) {\displaystyle {\mathcal {N}}(\mu ,\Sigma )} 中具有最大可能概率密度的线性组合。 因此,线性组合以使残差最好地由协方差矩阵 Σ {\displaystyle \Sigma } 描述的方式来近似平均函数或测量值 μ {\displaystyle \mu } 。 例如,该方法在 Scikit-learn 程序库中用于经验性地估计高斯过程的多项式平均函数。
经验确定的高斯过程
m ( t ) = 1 N ∑ p = 1 N f p ( t ) {\displaystyle m(t)={\frac {1}{N}}\sum _{p=1}^{N}f_{p}(t)}
k ( t , t ′ ) = 1 N − 1 ∑ p = 1 N [ f p ( t ) − m ( t ) ] ⋅ [ f p ( t ′ ) − m ( t ′ ) ] {\displaystyle k(t,t')={\frac {1}{N-1}}\sum _{p=1}^{N}\left[f_{p}(t)-m(t)\right]\cdot \left[f_{p}(t')-m(t')\right]}
例如,一些具有少量自由度的函数 f p ( t ) {\displaystyle f_{p}(t)} ,可以使用 特征值分解 或 奇异值分解 进行近似和简化。
Σ = V S V ⊤ {\displaystyle \Sigma =VSV^{\top }}
对协方差矩阵 Σ i j = k ( t i , t j ) {\displaystyle \Sigma _{ij}=k(t_{i},t_{j})} 进行分解。这是通过选择对角矩阵 S {\displaystyle S} 中最大的 n {\displaystyle n} 个特征值或奇异值 λ p = σ p 2 {\displaystyle \lambda _{p}=\sigma _{p}^{2}} 来实现。相应的列 v p {\displaystyle v_{p}} 是矩阵 V {\displaystyle V} 的主成分(参见 主成分分析 )。如果这些列表示为函数 v p ( t ) {\displaystyle v_{p}(t)} ,则原始高斯过程可以用平均函数 m ( t ) {\displaystyle m(t)} 和协方差函数来表示。
k ( t , t ′ ) ≈ ∑ p = 1 n σ p 2 v p ( t ) v p ( t ′ ) {\displaystyle k(t,t')\approx \sum _{p=1}^{n}\sigma _{p}^{2}v_{p}(t)v_{p}(t')}
该高斯过程仅描述线性组合的函数:
f ( t ) = m ( t ) + ∑ p c p v p ( t ) {\displaystyle f(t)=m(t)+\sum _{p}c_{p}v_{p}(t)} ,
其中每个系数 c p {\displaystyle c_{p}} 围绕零均值分散,方差为 σ p 2 = λ p {\displaystyle \sigma _{p}^{2}=\lambda _{p}} 的独立随机变量。
这种简化方法是半正定的,通常缺乏描述小尺度变化的属性。可以通过将拟合到残差的平稳协方差函数的形式添加到协方差函数中来添加这些属性。
k ( t , t ′ ) ≈ ∑ p = 1 n σ p 2 v p ( t ) v p ( t ′ ) + k stat ( t ′ − t ) {\displaystyle k(t,t')\approx \sum _{p=1}^{n}\sigma _{p}^{2}v_{p}(t)v_{p}(t')+k_{\text{stat}}(t'-t)}
在市场调研的假设应用示例中,需要预测“滑雪板”主题的未来需求。为此,需要计算该词语在 Google 搜索次数的推断值[ 15] 。
在过去的数据中,可以观察到周期性的非正弦季节性依赖关系,这可以通过北半球的冬季来解释。此外,趋势在过去十年中持续下降。此外,人们注意到每四年奥运会期间搜索查询会反复增加。因此,协方差函数通过缓慢趋势和一年和四年周期建模。
k ( r ) = 0 , 8 exp ( − 1 2 | sin ( π r ) | − | r / 25 | 2 − 2 , 5 ) + ( 0 , 2 − 0 , 01 ) exp ( − | sin ( 1 4 π r ) | / 0 , 2 ) + 0 , 01 exp ( − r / 45 ) {\displaystyle k(r)=0{,}8\exp \left(-{\tfrac {1}{2}}\left|\sin(\pi r)\right|-|r/25|^{2}-2{,}5\right)+(0{,}2-0{,}01)\exp \left(-\left|\sin \left({\tfrac {1}{4}}\pi r\right)\right|/0{,}2\right)+0{,}01\exp \left(-r/45\right)}
趋势似乎也存在显著的非对称性。如果基础随机效应没有叠加而是互相强化,则可能出现这种情况,导致出现对数正态分布 。但是,这些值的対数描述了正态分布,可以应用高斯过程回归。
该图显示了曲线的推断值(虚线右侧)。由于此处结果是使用指数函数从对数图转换回来的,因此预测的置信区间相应地是非对称的(灰色区域)。推断值合理地显示了季节性模式,以及每四年奥运会期间搜索次数的增加。混合属性的示例很好地展示了高斯过程回归的多功能建模可能性,这些可能性在单一插值方法中得到了统一。
示例计算的 Python 源代码
在工业应用示例中,需要使用高斯过程校准传感器。由于制造过程中的公差,传感器的特征曲线 f ( x ) {\displaystyle f(x)} 显示出很大的个体差异。这会导致校准成本很高,因为必须测量每个传感器的完整特征曲线。但是,可以通过高斯过程学习散射的精确行为,从而最大限度地减少工作量。为此,需要测量 N {\displaystyle N} 个随机选择的代表性传感器的完整特征曲线 f i ( x ) {\displaystyle f_{i}(x)} ,从而通过以下公式计算散射的高斯过程 G P ( m , k ) {\displaystyle {\mathcal {GP}}(m,k)} :
m ( x ) = 1 N ∑ i = 1 N f i ( x ) {\displaystyle m(x)={\frac {1}{N}}\sum _{i=1}^{N}f_{i}(x)}
k ( x , x ′ ) = 1 N − 1 ∑ i = 1 N [ f i ( x ) − m ( x ) ] ⋅ [ f i ( x ′ ) − m ( x ′ ) ] {\displaystyle k(x,x')={\frac {1}{N-1}}\sum _{i=1}^{N}\left[f_{i}(x)-m(x)\right]\cdot \left[f_{i}(x')-m(x')\right]}
如示例所示,给出了 15 条代表性的特性曲线。得到的 Gaussian 过程由均值函数 m ( x ) {\displaystyle m(x)} 和置信区间 m ( x ) ± k ( x , x ) {\displaystyle m(x)\pm {\sqrt {k(x,x)}}} 表示。
对于条件 Gaussian 过程 G P ( m post , k post ) {\displaystyle {\mathcal {GP}}(m_{\text{post}},k_{\text{post}})} ,其中
m p o s t ( x ) = m ( x ) + k ⊤ ( x , x ) K ( x , x ) − 1 ( y − m ( x ) ) {\displaystyle m_{\mathrm {post} }(x)=m(x)+\mathbf {k} ^{\top }(x,\mathbf {x} )K(\mathbf {x} ,\mathbf {x} )^{-1}(\mathbf {y} -m(\mathbf {x} ))}
k p o s t ( x , x ′ ) = k ( x , x ′ ) − k ⊤ ( x , x ) K ( x , x ) − 1 k ( x , x ′ ) {\displaystyle k_{\mathrm {post} }(x,x')=k(x,x')-\mathbf {k} ^{\top }(x,\mathbf {x} )K(\mathbf {x} ,\mathbf {x} )^{-1}\mathbf {k} (\mathbf {x} ,x')}
现在可以使用少量个别测量值 y {\displaystyle \mathbf {y} } (在坐标 x {\displaystyle \mathbf {x} } 处)来重建每个新传感器的完整特性映射。测量值的个数至少要对应于公差的自由度个数,公差对特性曲线的形状具有独立的线性影响。
在示例中,单个测量值还不足以明确且精确地确定特性曲线。置信区间显示了尚未达到足够精度的曲线区域。通过在该范围内进行另一次测量,可以最终完全消除剩余的不确定性。因此,在本例中,不同传感器之间的示例波动似乎是由两个相关的内部自由度的公差引起的。
示例计算的 Python 源代码
在信号处理应用程序示例中,要将时间信号分解为其各个成分。假设已知该系统包含三个成分,它们遵循以下三个协方差函数:
k 1 ( r ) = 2 , 7 2 exp ( − r 2 ) {\displaystyle k_{1}(r)=2{,}7^{2}\exp(-r^{2})}
k 2 ( r ) = 2 , 7 2 exp ( − 0 , 4 | sin ( r / 2 , 5 ) | ) {\displaystyle k_{2}(r)=2{,}7^{2}\exp(-0{,}4|\sin(r/2{,}5)|)}
k 3 ( r ) = 0 , 6 2 δ r {\displaystyle k_{3}(r)=0{,}6^{2}\delta _{r}}
然后,总信号遵循协方差函数的加法规则
k sum ( r ) = k 1 ( r ) + k 2 ( r ) + k 3 ( r ) {\displaystyle k_{\text{sum}}(r)=k_{1}(r)+k_{2}(r)+k_{3}(r)} .
以下两张图显示了三个随机信号,它们使用这些协方差函数生成并相加,用于演示。在信号的总和中,人们很难用肉眼识别出隐藏其中的周期性信号,因为它的频谱范围与其他两个成分的频谱范围重叠。
借助于分解 操作,和式 y sum {\displaystyle y_{\text{sum}}} 可以再次分解成三个分量
y 1 = Σ 1 Σ sum − 1 y sum + 3 {\displaystyle y_{1}=\Sigma _{1}\Sigma _{\text{sum}}^{-1}y_{\text{sum}}+3}
y 2 = Σ 2 Σ sum − 1 y sum − 3 {\displaystyle y_{2}=\Sigma _{2}\Sigma _{\text{sum}}^{-1}y_{\text{sum}}-3}
y 3 = Σ 3 Σ sum − 1 y sum {\displaystyle y_{3}=\Sigma _{3}\Sigma _{\text{sum}}^{-1}y_{\text{sum}}}
其中 ( Σ x ) i j = k x ( | t j − t i | ) {\displaystyle (\Sigma _{x})_{ij}=k_{x}(|t_{j}-t_{i}|)} 。最可能分解的估计显示了在这种情况下分离的可行性以及信号与原始信号的接近程度。动画中通过随机波动显示了考虑了互相关性的估计不确定性。
该示例展示了如何使用这种方法一步一步地分离非常不同的信号。相比之下,其他滤波方法,例如移动平均、傅立叶滤波、多项式回归或样条逼近,针对特定的信号特征进行了优化,既不提供精确的误差估计,也不提供互相关性。
如果给定信号的各个分量的 Gaussian 过程不完全已知,那么在某些情况下可以使用对数边际似然函数执行假设检验,前提是可用数据足以很好地调节该函数。通过其最大化,可以将推测的协方差函数的参数拟合到测量数据。
示例计算的 Python 源代码
↑ Kanagawa,M.,Hennig,P.,Sejdinovic,D.,Sriperumbudur,B. K.(2018),Gaussian 过程和核方法:关于连接和等价性的综述 ,arXiv {{citation }}
: CS1 maint: uses authors parameter (link )
↑ C. E. Rasmussen,C. K. I. Williams:机器学习中的 Gaussian 过程 ,第 4.1 章预备知识
↑ 概率主题:Gaussian 分析 ,数学 7880-1,2015 年春季,犹他大学,第 6 章“Gaussian 过程”,参见定义 1.7 的平稳性和引理 1.8 的平移不变性。
↑ C. E. Rasmussen,C. K. I. Williams:机器学习中的 Gaussian 过程 。 麻省理工学院出版社,2006,ISBN 0-262-18253-X ,第 4.2 章协方差函数的示例 ,第 85 页
↑ C. E. Rasmussen, C. K. I. Williams: 机器学习中的高斯过程 . MIT Press, 2006, ISBN 0-262-18253-X , 第 4.2 章 协方差函数示例 ,第 84 页
↑ C. E. Rasmussen, C. K. I. Williams: 机器学习中的高斯过程 MIT Press, 2006, ISBN 0-262-18253-X , 第 4.2.2 章 点积协方差函数。 第 89 页和第 94 页表 4.1。
↑ C. E. Rasmussen, C. K. I. Williams: 机器学习中的高斯过程 . MIT Press, 2006, ISBN 0-262-18253-X , 第 4 章“协方差函数”,有效的协方差函数在第 94 页表 4.1 中列为“ND”。
↑ 一般线性变换的推导基于方程 F ⋅ N ( μ , Σ ) = N ( F μ , F Σ F ⊤ ) {\displaystyle F\cdot {\mathcal {N}}\left(\mu ,\Sigma \right)={\mathcal {N}}\left(F\mu ,F\Sigma F^{\top }\right)} ,通过将矩阵 F 选择为 [A B], μ {\displaystyle \mu } 作为向量 ( μ 1 {\displaystyle \mu _{1}} μ 2 {\displaystyle \mu _{2}} ) 和 Σ {\displaystyle \Sigma } 来自相应的四个块。
↑ 推导基于乘法的协方差规则 cov ( A x , B y ) = A cov ( x , y ) B ⊤ {\displaystyle {\text{cov}}(Ax,By)=A{\text{cov}}(x,y)B^{\top }} 和结合律 cov ( x , y + z ) = cov ( x , y ) + cov ( x , z ) {\displaystyle {\text{cov}}(x,y+z)={\text{cov}}(x,y)+{\text{cov}}(x,z)} 。
↑ 例如,变换涉及将 1 = Σ1 /Σ1 相乘或添加 0 = Σ1 -Σ1 ,并相应地截断逆矩阵。
↑ Bar-Shalom, Yaakov; Campo, Leon (1986 年 11 月). “公共过程噪声对双传感器融合跟踪协方差的影响”. 航空航天和电子系统 IEEE 汇刊 . AES-22 (6): 803–805. doi :10.1109/TAES.1986.310815 .
↑ 该策略对应于具有测量不确定性的后验高斯过程,请参阅教科书 C. E. Rasmussen, C. K. I. Williams: 机器学习中的高斯过程 , 第 2 章 回归 中关于高斯过程回归的章节。 卡尔曼滤波器 也使用数据融合来分离信号和测量不确定性。
↑ C. E. Rasmussen, C. K. I. Williams: 机器学习中的高斯过程 , 第 4.2.4 章 从旧内核创建新内核。 第 94 页。
↑ C. E. Rasmussen, C. K. I. Williams: 机器学习中的高斯过程 , 第 5.2 章 贝叶斯模型选择。 第 108 页。
↑ 数据可在 Google trends 中搜索“snowboard” 获得。