高斯过程回归【详细数学推导】

news2024/9/28 23:33:24

机器学习笔记

第一章 机器学习简介
第二章 感知机
第三章 支持向量机
第四章 朴素贝叶斯分类器
第五章 Logistic回归
第六章 线性回归和岭回归
第七章 多层感知机与反向传播【Python实例】
第八章 主成分分析【PCA降维】
第九章 隐马尔可夫模型
第十章 奇异值分解
第十一章 熵、交叉熵、KL散度
第十二章 什么是范数【向量范数、矩阵范数】
第十三章 熵、交叉熵、KL散度
第十四章 极大似然估计、最大后验估计、贝叶斯估计
第十五章 高斯过程回归模型


文章目录

  • 机器学习笔记
  • 高斯过程回归
  • 一、 一元高斯分布
  • 二、多元高斯分布
  • 三、 高斯过程
  • 四、高斯过程回归
  • 五、核函数
  • 六、超参数的优化
  • 参考资料


高斯过程回归

高斯过程回归(Gaussian Process Regression,简称GPR)是一种非参数的回归方法,它基于高斯过程(Gaussian Process)理论。在机器学习中,高斯过程是一种强大的工具,用于建模连续型的函数关系,特别适用于小样本的情况。在进行预测时,高斯过程回归会计算给定输入下目标函数的后验分布,这个后验分布也是一个高斯分布,它的均值给出了预测值,方差则表示了预测的不确定性。由于高斯过程回归是基于贝叶斯推断的,因此它能够提供预测结果的不确定性估计,这对于许多应用场景非常有用,尤其是在决策制定中需要考虑风险的情况下。

高斯过程回归的优点包括:

  1. 能够灵活地处理非线性关系,适用于各种类型的函数逼近。
  2. 能够提供预测的不确定性,有利于进行决策制定。
  3. 不需要事先指定复杂的模型结构,减轻了参数调节的负担。

一、 一元高斯分布

若随机变量 x x x 服从一个位置参数为 μ \mu μ 、尺度参数为 σ \sigma σ 的概率分布, 且其概率密度函数为 :
f ( x ) = 1 2 π σ exp ⁡ ( − ( x − μ ) 2 2 σ 2 ) f(x)=\frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{(x-\mu)^2}{2 \sigma^2}\right) f(x)=2π σ1exp(2σ2(xμ)2)
则这个随机变量就称为正态随机变量, 正态随机变量服从的分布就称为正态分布(也称为高斯分布), 记作 x ∼ N ( μ , σ 2 ) x \sim N\left(\mu, \sigma^2\right) xN(μ,σ2)。当 μ = 0 , σ = 1 \mu=0, \sigma=1 μ=0,σ=1 时, 正态分布就成为标准正态分布:
f ( x ) = 1 2 π exp ⁡ ( − x 2 2 ) f(x)=\frac{1}{\sqrt{2 \pi}} \exp\left(-\frac{x^2}{2}\right) f(x)=2π 1exp(2x2)

一元高斯分布有很多很好的性质,比如两个高斯分布的线性组合仍然是高斯分布,而多个一元高斯分布的联合分布则可以导出多元高斯分布。

二、多元高斯分布

若一个多维随机向量具有同一元高斯分布类似的概率规律时, 称此随机向量遵从多元高斯(multivariate Gaussian)分布。多元高斯分布可以从一元高斯分布导出,对于 D D D 维的随机变量量 x = ( x 1 , … , x D ) T \mathbf{x}=\left(x_1, \ldots, x_D\right)^T x=(x1,,xD)T , 多元高斯分布形式为:
N ( x ∣ μ , Σ ) = 1 ( 2 π ) D / 2 1 ∣ Σ ∣ 1 / 2 exp ⁡ { − 1 2 ( x − μ ) T Σ − 1 ( x − μ ) } N(\mathbf{x} \mid \mu, \boldsymbol{\Sigma})=\frac{1}{(2 \pi)^{D / 2}} \frac{1}{|\mathbf{\Sigma}|^{1 / 2}} \exp \left\{-\frac{1}{2}(\mathbf{x}-\mu)^T \mathbf{\Sigma}^{-1}(\mathbf{x}-\mu)\right\} N(xμ,Σ)=(2π)D/21Σ1/21exp{21(xμ)TΣ1(xμ)}
式中的 μ \mu μ D D D 维的均值向量, Σ \Sigma Σ D × D D \times D D×D 的协方差矩阵 (covariance matrix), ∣ Σ ∣ |\Sigma| ∣Σ∣ Σ \Sigma Σ的行列式。多元正态分布也有很好的性质, 例如, 多元正态分布的边缘分布仍为正态分布,它经任何线性变换得到的随机向量仍为多维正态分布,它的线性组合为一元正态分布。在后面高斯过程回归的推导中会用到多元高斯分布的条件概率分布,所以这里我们给出多元高斯分布条件概率分布的定理:

定理(多元高斯分布条件概率分布)

y ∼ N ( μ , Σ ) \boldsymbol{y} \sim \mathcal{N}(\boldsymbol{\mu}, \Sigma) yN(μ,Σ), 将 y , μ \boldsymbol{y}, \boldsymbol{\mu} y,μ Σ \Sigma Σ 分割成如下形式:
y = [ y 1 y 2 ] n 1 n 2 μ = [ μ 1 μ 2 ] n 1 n 2 Σ = [ Σ 11 Σ 12 Σ 21 Σ 22 ] n 1 n 2 \begin{aligned} & \boldsymbol{y}=\left[\begin{array}{l} \boldsymbol{y}_1 \\ \boldsymbol{y}_2 \end{array}\right]\begin{array}{l} n_1 \\ n_2 \end{array} \quad \quad \boldsymbol{\mu}=\left[\begin{array}{l} \boldsymbol{\mu}_1 \\ \boldsymbol{\mu}_2 \end{array}\right]\begin{array}{l} n_1 \\ n_2 \end{array} \\ & \Sigma=\left[\begin{array}{cc} \Sigma_{11} & \Sigma_{12} \\ \Sigma_{21} & \Sigma_{22} \end{array}\right] \begin{array}{l} n_1 \\ n_2 \end{array} \end{aligned} y=[y1y2]n1n2μ=[μ1μ2]n1n2Σ=[Σ11Σ21Σ12Σ22]n1n2
其中 y , μ ∈ R n \boldsymbol{y}, \boldsymbol{\mu} \in \mathbb{R}^n y,μRn Σ ∈ R n × n \Sigma \in \mathbb{R}^{n \times n} ΣRn×n。那么我们可以知道 y 1 ∼ N ( μ 1 , Σ 11 ) \boldsymbol{y}_1 \sim \mathcal{N}\left(\boldsymbol{\mu}_1, \Sigma_{11}\right) y1N(μ1,Σ11) ,进一步可以推出条件概率分布:
y 2 ∣ y 1 ∼ N ( μ 2 + Σ 21 Σ 11 − 1 ( y 1 − μ 1 ) , Σ 22 − Σ 21 Σ 11 − 1 Σ 12 ) \boldsymbol{y}_2 \mid \boldsymbol{y}_1 \sim \mathcal{N}\left(\boldsymbol{\mu}_2+\Sigma_{21} \Sigma_{11}^{-1}\left(\boldsymbol{y}_1-\boldsymbol{\mu}_1\right), \Sigma_{22}-\Sigma_{21} \Sigma_{11}^{-1} \Sigma_{12}\right) y2y1N(μ2+Σ21Σ111(y1μ1),Σ22Σ21Σ111Σ12)

三、 高斯过程

高斯过程是概率论和数理统计中随机过程的一种,是一系列服从高斯分布的随机变量在一指数集内的组合。高斯过程中任意个随机变量的线性组合都服从多元高斯分布,每个有限维分布都是联合高斯分布。对一个任意集合 X \mathcal{X} X, 一个定义在 X \mathcal{X} X上的高斯过程 ( G P ) (\mathrm{GP}) (GP) 是一个随机变量的集合 ( f ( x ) , x ∈ X ) (f(x), x \in \mathcal{X}) (f(x),xX) ,使得对任意的 n ∈ N n \in \mathbb{N} nN x 1 , … , x n ∈ X x_1, \ldots, x_n \in \mathcal{X} x1,,xnX,满足 ( f ( x 1 ) , … , f ( x n ) ) \left(f\left(x_1\right), \ldots, f\left(x_n\right)\right) (f(x1),,f(xn)) 是一个多元高斯分布。由于高斯分布由均值向量和协方差矩阵指定,因此,高斯过程也完全由均值函数 μ ( x ) \mu (x) μ(x)和协方差函数(或者叫核函数) k ( x , x ′ ) k(x,x') k(x,x)共同唯一确定,常表示为如下形式:
f ( x ) ∼ G P ( μ ( x ) , k ( x , x ′ ) ) f(\mathbf{x}) \sim \mathcal{G} \mathcal{P}\left(\mu(\mathbf{x}), k\left(\mathbf{x}, \mathbf{x}^{\prime}\right)\right) f(x)GP(μ(x),k(x,x))
其中均值函数反映了函数在输入点x处的均值:
μ ( x ) = E ( f ( x ) ) \mu(x) = \mathbb{E}(f(\mathbf{x})) μ(x)=E(f(x))
核函数 k ( x , x ′ ) k(x,x') k(x,x)刻画了函数值在 x x x x ′ x' x处的关系:
k ( x , x ′ ) = E [ ( f ( x ) − μ ( x ) ( f ( x ′ ) − μ ( x ′ ) ) ] k\left(\mathbf{x}, \mathbf{x}^{\prime}\right)=\mathbb{E}\left[(f(\mathbf{x})-\mu(\mathbf{x})\left(f\left(\mathbf{x}^{\prime}\right)-\mu\left(\mathbf{x}^{\prime}\right)\right)\right] k(x,x)=E[(f(x)μ(x)(f(x)μ(x))]
高斯过程的性质与其核函数有密切联系,不同的核函数可以赋予高斯过程不同的平滑性、各向同性、周期性和平稳性。核函数的选择要求满足Mercer定理(Mercer’s theorem),即核函数在样本空间内的任意格拉姆矩阵为半正定矩阵。

四、高斯过程回归

我们知道在机器学习中,监督学习可以分为回归问题和分类问题。分类问题的输出是离散的类标签,而回归是关于连续量的预测。而本文,我们主要是讨论多任务高斯过程在回归问题中的应用,所以这里首先介绍一下高斯过程回归的基本原理。

高斯过程回归模型通常可以从权重空间视角和函数空间视角去推导,这里我们从函数空间的视角进行介绍。通过刚才对高斯过程的介绍,我们可以发现回归模型能用高斯过程来表示,比如贝叶斯线性回归模型 f ( x ) = ϕ ( x ) T w f(\boldsymbol{x})=\boldsymbol{\phi}(\boldsymbol{x})^{\mathrm{T}} \boldsymbol{w} f(x)=ϕ(x)Tw ,其中 w ∼ N ( 0 , Σ p ) \boldsymbol{w} \sim \mathcal{N}\left(\mathbf{0}, \Sigma_p\right) wN(0,Σp) ϕ ( x ) \boldsymbol{\phi}(\boldsymbol{x}) ϕ(x)表示经过某种变换后的输入,于是可以得到:
μ ( x ) = E [ f ( x ) ] = ϕ ( x ) T E [ w ] = 0 k ( x , x ′ ) = E [ f ( x ) f ( x ′ ) ] = ϕ ( x ) T E [ w w T ] ϕ ( x ′ ) = ϕ ( x ) T Σ p ϕ ( x ′ ) \begin{aligned} \mu(\boldsymbol{x}) & =\mathbb{E}[f(\boldsymbol{x})]=\boldsymbol{\phi}(\boldsymbol{x})^{\mathrm{T}} \mathbb{E}[\boldsymbol{w}]=0 \\ k\left(\boldsymbol{x}, \boldsymbol{x}^{\prime}\right) & =\mathbb{E}\left[f(\boldsymbol{x}) f\left(\boldsymbol{x}^{\prime}\right)\right]=\boldsymbol{\phi}(\boldsymbol{x})^{\mathrm{T}} \mathbb{E}\left[\boldsymbol{w} \boldsymbol{w}^{\mathrm{T}}\right] \boldsymbol{\phi}\left(\boldsymbol{x}^{\prime}\right)=\boldsymbol{\phi}(\boldsymbol{x})^{\mathrm{T}} \Sigma_p \boldsymbol{\phi}\left(\boldsymbol{x}^{\prime}\right) \end{aligned} μ(x)k(x,x)=E[f(x)]=ϕ(x)TE[w]=0=E[f(x)f(x)]=ϕ(x)TE[wwT]ϕ(x)=ϕ(x)TΣpϕ(x)
所以 f ( x ) ∼ G P ( 0 , ϕ ( x ) T Σ p ϕ ( x ′ ) ) f(\boldsymbol{x}) \sim \mathcal{G P}\left(0, \boldsymbol{\phi}(\boldsymbol{x})^{\mathrm{T}} \Sigma_p \boldsymbol{\phi}\left(\boldsymbol{x}^{\prime}\right)\right) f(x)GP(0,ϕ(x)TΣpϕ(x))

进一步,我们可以考虑一个一般的带噪声的的回归模型:
y = f ( x ) + ε f ( x ) ∼ G P ( μ , k ) y=f(\boldsymbol{x})+\varepsilon \qquad f(\boldsymbol{x}) \sim \mathcal{G} \mathcal{P}(\mu, k) y=f(x)+εf(x)GP(μ,k)其中, f ( x ) f(\boldsymbol{x}) f(x)是参数待定的高斯过程,噪声满足 ε ∼ N ( 0 , σ n 2 ) \varepsilon \sim \mathcal{N}\left(0, \sigma_n^2\right) εN(0,σn2).现在我们假设数据集 D = { ( x i , y i ) ∣ i = 1 , … , n } \mathcal{D}=\left\{\left(\boldsymbol{x}_i, y_i\right) \mid i=1, \ldots, n\right\} D={(xi,yi)i=1,,n},其中 x i ∈ R d , y i ∈ R \boldsymbol{x}_i \in \mathbb{R}^d, y_i \in \mathbb{R} xiRd,yiR。可以表示为矩阵形式 D = ( X , y ) \mathcal{D}=(\mathrm{X},\boldsymbol{y}) D=(X,y),其中 X ∈ R n × d , y ∈ R n \mathrm{X}\in \mathbb{R}^{n\times d},\boldsymbol{y}\in\mathbb{R}^n XRn×d,yRn。当观测点满足回归模型时,按照高斯过程的定义,这些点的联合分布 [ f ( x 1 ) , … , f ( x n ) ] \left[f\left(\boldsymbol{x}_1\right), \ldots, f\left(\boldsymbol{x}_n\right)\right] [f(x1),,f(xn)] 需要满足一个多维高斯分布, 即:
[ f ( x 1 ) , f ( x 2 ) , … , f ( x n ) ] T ∼ N ( μ , K ) \left[f\left(\boldsymbol{x}_1\right), f\left(\boldsymbol{x}_2\right), \ldots, f\left(\boldsymbol{x}_n\right)\right]^{\mathrm{T}} \sim \mathcal{N}(\boldsymbol{\mu}, K) [f(x1),f(x2),,f(xn)]TN(μ,K)这里 μ = [ μ ( x 1 ) , … , μ ( x n ) ] T \boldsymbol{\mu}=\left[\mu\left(\boldsymbol{x}_1\right), \ldots, \mu\left(\boldsymbol{x}_n\right)\right]^{\mathrm{T}} μ=[μ(x1),,μ(xn)]T 是均值向量, K K K n × n n \times n n×n 的矩阵, 其中第 ( i , j ) (i, j) (i,j) 个元素是 K i j = k ( x i , x j ) K_{i j}=k\left(\boldsymbol{x}_i, \boldsymbol{x}_j\right) Kij=k(xi,xj).

为了预测在新的点处的函数值 f ∗ = f ( Z ) f_*=f(Z) f=f(Z), 其中 Z = [ z 1 , ⋯   , z m ] T Z=\left[\boldsymbol{z}_1, \cdots, \boldsymbol{z}_m\right]^{\mathrm{T}} Z=[z1,,zm]T, 根据高斯分布的性质, 训练点和预测点的联合分布仍然为高斯分布,即:
[ y f ∗ ] ∼ N ( [ μ ( X ) μ ( Z ) ] , [ K ( X , X ) + σ n 2 I K ( Z , X ) T K ( Z , X ) K ( Z , Z ) ] ) \left[\begin{array}{c} \boldsymbol{y} \\ f_* \end{array}\right] \sim \mathcal{N}\left(\left[\begin{array}{c} \boldsymbol{\mu}(X) \\ \boldsymbol{\mu}(Z) \end{array}\right],\left[\begin{array}{cc} K(X, X)+\sigma_n^2 \mathbf{I} & K(Z, X)^{\mathrm{T}} \\ K(Z, X) & K(Z, Z) \end{array}\right]\right) [yf]N([μ(X)μ(Z)],[K(X,X)+σn2IK(Z,X)K(Z,X)TK(Z,Z)])
其中:

  • μ ( X ) = μ , μ ( Z ) = [ μ ( z 1 ) , … , μ ( z m ) ] T , K ( X , X ) = K \boldsymbol{\mu}(X)=\boldsymbol{\mu}, \boldsymbol{\mu}(Z)=\left[\mu\left(\boldsymbol{z}_1\right), \ldots, \mu\left(\boldsymbol{z}_m\right)\right]^{\mathrm{T}}, K(X, X)=K μ(X)=μ,μ(Z)=[μ(z1),,μ(zm)]T,K(X,X)=K;
  • K ( Z , X ) K(Z, X) K(Z,X)是个 m × n m \times n m×n 的矩阵, 其中第 ( i , j ) (i, j) (i,j) 个元素 [ K ( Z , X ) ] i j = k ( z i , x j ) [K(Z, X)]_{i j}=k\left(\boldsymbol{z}_i, \boldsymbol{x}_j\right) [K(Z,X)]ij=k(zi,xj)
  • K ( Z , Z ) K(Z, Z) K(Z,Z)是个 m × m m \times m m×m 的 矩阵, 其中第 ( i , j ) (i, j) (i,j) 个元素 [ K ( Z , Z ) ] i j = k ( z i , z j ) [K(Z, Z)]_{i j}=k\left(\boldsymbol{z}_i, \boldsymbol{z}_j\right) [K(Z,Z)]ij=k(zi,zj) .
    最后利用高斯分布的条件分布性质, 我们可以得到关于预测值的条件概率分布:
    p ( f ∗ ∣ X , y , Z ) = N ( μ ^ , Σ ^ ) p\left(f_* \mid X, \boldsymbol{y}, Z\right)=\mathcal{N}(\hat{\boldsymbol{\mu}}, \hat{\Sigma}) p(fX,y,Z)=N(μ^,Σ^)其中:
    μ ^ = K ( Z , X ) ( K ( X , X ) + σ n 2 I ) − 1 ( y − μ ( X ) ) + μ ( Z ) Σ ^ = K ( Z , Z ) − K ( Z , X ) ( K ( X , X ) + σ n 2 I ) − 1 K ( Z , X ) T \begin{aligned} &\hat{\boldsymbol{\mu}}=K(Z, X)\left(K(X, X)+\sigma_n^2 \mathbf{I}\right)^{-1}(\boldsymbol{y}-\boldsymbol{\mu}(X))+\boldsymbol{\mu}(Z) \\ &\hat{\Sigma}=K(Z, Z)-K(Z, X)\left(K(X, X)+\sigma_n^2 \mathbf{I}\right)^{-1} K(Z, X)^{T} \end{aligned} μ^=K(Z,X)(K(X,X)+σn2I)1(yμ(X))+μ(Z)Σ^=K(Z,Z)K(Z,X)(K(X,X)+σn2I)1K(Z,X)T如果将预测值的噪声考虑进来,条件概率分布如下:
    p ( y ∗ ∣ X , y , Z ) = N ( μ ^ , Σ ^ + σ n 2 I ) p\left(\boldsymbol{y}_* \mid X, \boldsymbol{y}, Z\right)=\mathcal{N}\left(\hat{\boldsymbol{\mu}}, \hat{\Sigma}+\sigma_n^2 \mathbf{I}\right) p(yX,y,Z)=N(μ^,Σ^+σn2I)在实际应用中,我们通常将令均值函数 μ ( x ) = 0 \mu(x) = 0 μ(x)=0(本文如无特殊说明,也都采用值为0的均值函数),那么预测的均值函数和预测的协方差函数的结果可以更为简单的表示为:
    ​ μ ^ = K ( Z , X ) ( K ( X , X ) + σ n 2 I ) − 1 y ​ Σ ^ = K ( Z , Z ) − K ( Z , X ) ( K ( X , X ) + σ n 2 I ) − 1 K ( Z , X ) T ​ \begin{aligned} ​ \hat{\boldsymbol{\mu}} &= K(Z,X)(K(X,X) + \sigma^2_n \mathbf{I})^{-1}\boldsymbol{y}\\ ​ \hat{\Sigma} &= K(Z,Z) - K(Z,X)(K(X,X) + \sigma^2_n \mathbf{I})^{-1}K(Z,X)^{\mathrm{T}} ​ \end{aligned} μ^Σ^=K(Z,X)(K(X,X)+σn2I)1y=K(Z,Z)K(Z,X)(K(X,X)+σn2I)1K(Z,X)T
    至此,我们便完成了从函数空间视角出发的高斯过程回归模型的推导。观察上式,我们可以发现一些有趣的性质:
  1. 首先来看均值 μ ^ \hat{\boldsymbol{\mu}} μ^,由于测试数据集一共有m个点,因而 μ ^ \hat{\boldsymbol{\mu}} μ^理应是 m × 1 m \times 1 m×1,而对应等式右边的 y \boldsymbol{y} y应当是 n×1 ,而 μ ^ \hat{\boldsymbol{\mu}} μ^等式右边除了 y \boldsymbol{y} y的其他部分理应为 m×n的,所以预测均值是观测点 y \boldsymbol{y} y的线性组合。
  2. 再来看协方差 Σ ^ \hat{\boldsymbol{\Sigma}} Σ^,等式右边的第一部分是我们的先验的协方差,减掉的后面的那一项实际上表示了观测到数据后函数分布不确定性的减少,如果第二项非常接近于 0,说明观测数据后我们的不确定性几乎不变,反之如果第二项非常大,则说明不确定性降低了很多。

如果我们再换一种视角来看均值 μ ^ \hat{\boldsymbol{\mu}} μ^,将 ( K ( X , X ) + σ n 2 I ) − 1 y \left(K(X, X)+\sigma_n^2 \mathbf{I}\right)^{-1} \boldsymbol{y} (K(X,X)+σn2I)1y 看做整体 α \alpha α, 则
μ ^ i = ∑ j = 1 n α j k ( x j , z i ) \hat{\boldsymbol{\mu}}_i=\sum_{j=1}^n \alpha_j k\left(\boldsymbol{x}_j, \boldsymbol{z}_i\right) μ^i=j=1nαjk(xj,zi)最终结果表示,预测值 μ ^ i \hat{\boldsymbol{\mu}}_i μ^i可以看做是预测点和观测点之间核函数的线性组合,这个方程表明高斯过程回归等价于使用核函数 k ( x , x ′ ) k(x,x') k(x,x)将输入投影到特征空间的线性回归模型。为了得到预测点的值,每个输出 μ i ^ \hat{\boldsymbol{\mu}_i} μi^被加权为其相关的输入 x j x_j xj与被预测点 z i z_i zi的相似度,这是由核函数诱导的相似度度量。这个加权和表明,高斯过程回归模型取决于选定的核函数和到目前为止观察到的数据,而不需要指定具体的模型函数形式,这就是为什么高斯过程回归是一种非参数方法。

用高斯过程对回归问题进行建模有很多优势。首先,GP利用有限的训练数据点计算核函数,建模复杂度与 x x x的维数无关 ,使得我们能够处理更高维的输入数据,理论上无限维都行。其次,刚刚提到,高斯过程是一种非参数的方法,对回归问题进行建模时,不需要指定模型的形式,这意味着高斯过程可以对任意形式的函数进行建模拟合。

五、核函数

我们看到 k ( x , x ′ ) k(x,x') k(x,x)对高斯过程回归模型至关重要,可以说核函数是一个高斯过程的核心,核函数决定了一个高斯过程的性质。

定义(核函数)

X \mathcal{X} X上的半正定核函数 k k k,需要满足如下条件 k : X × X ↦ R k: \mathcal{X} \times \mathcal{X} \mapsto \mathbb{R} k:X×XR, ∀ n ∈ N , ∀ x 1 , … , x n ∈ X \forall n \in \mathbb{N}, \forall x_1, \ldots, x_n \in \mathcal{X} nN,x1,,xnX, s.t.矩阵 C C C 都是半正定的, 其中 C i j = k ( x i , x j ) C_{i j}=k\left(x_i, x_j\right) Cij=k(xi,xj)

比如,当 X = R d , k ( x , x ′ ) = x T x ′ \mathcal{X}=\mathbb{R}^d, k(\boldsymbol{x}, \boldsymbol{x'})=\boldsymbol{x}^{\mathrm{T}} \boldsymbol{x'} X=Rd,k(x,x)=xTx时,可以得到 C = x x T C=\boldsymbol{x}\boldsymbol{x^T} C=xxT. 设 a ∈ R n \boldsymbol{a} \in \mathbb{R}^n aRn, 则 a T C a = a T x x T a = ( a x T ) 2 ≥ 0 \boldsymbol{a}^{\mathrm{T}} \boldsymbol{C} \boldsymbol{a}=\boldsymbol{a}^{\mathrm{T}} \boldsymbol{x} \boldsymbol{x}^{\mathrm{T}} \boldsymbol{a}=\left(\boldsymbol{a} \boldsymbol{x}^{\mathrm{T}}\right)^2 \geq 0 aTCa=aTxxTa=(axT)20. 所以,二元函数 k ( x , y ) = x T y k(\boldsymbol{x}, \boldsymbol{y})=\boldsymbol{x}^{\mathrm{T}} \boldsymbol{y} k(x,y)=xTy 是一个半正定的核函数。

在高斯过程中,核函数用于生成一个协方差矩阵来衡量任意两个点之间的“距离”,一个合理的假设通常是两点之间的相关性随两点之间的距离而衰减。 不同的核函数有不同的衡量方法,得到的高斯过程的性质也不一样。最常用的一个核函数为高斯核函数,也称为平方指数函数(Squared Exponential,SE),其基本形式如下:
​ k ( x i , x j ) = s f 2 e x p ( − ∥ x i − x j ∥ 2 2 2 l 2 ) ​ k(x _ i ,x _ j)=s_f^2 exp(-\frac{\Vert x_i-x_j\Vert_2 ^2}{2l^2}) k(xixj)=sf2exp(2l2xixj22)其中 s f s_f sf l l l是高斯核的超参数, s f s_f sf是信号方差(signal variance),控制输出的振幅。 l l l是长度尺度(length scale),控制输入方向的振荡频率,下图展示了两个超参数对高斯过程函数性质的影响。

截屏2024-04-22 18.06.05左边图展示了,当 s f s_f sf固定时,长度尺度 l l l对高斯过程的影响,可以看到不同的 l l l导致高斯过程曲线在水平轴上具有不同的振荡频率。右边图展示了,当 l l l固定时,信号方差 s f s_f sf对高斯过程的影响,可以看到不同的 s f s_f sf导致高斯过程曲线在纵轴上有不同的振幅。

高斯核函数提供了一个富有表现力的核来建模平滑、平稳的函数,超参数 l l l s f s_f sf可以控制点与点之间的先验相关性,从而控制高斯过程的预测性能。

六、超参数的优化

通过前面的介绍,我们已经知道了如何使用给定的核和零均值函数构造高斯过程回归模型。只要从数据中学习所有待定超参数 θ = { θ 1 , θ 2 , ⋯   } \boldsymbol{\theta}=\{\theta_1,\theta_2,\cdots\} θ={θ1,θ2,},就可以得到预测均值和方差。

由于高斯过程回归模型中超参数的后验分布不易获得,因此在实际应用中不经常使用超参数的全贝叶斯推理,通常的做法是通过最大化边际似然来获得超参数的点估计。所以可以采用最大似然估计(Maximum Likelihood Estimation,MLE),通过梯度下降等优化方法进行优化。

高斯过程模型的似然函数可以表示为:
p ( y ∣ X , θ ) = ∫ p ( y ∣ f , X , θ ) p ( f ∣ X , θ ) d f p(\boldsymbol{y} \mid X, \theta)=\int p(\boldsymbol{y} \mid \boldsymbol{f}, X, \theta) p(\boldsymbol{f} \mid X, \theta) \mathrm{d} \boldsymbol{f} p(yX,θ)=p(yf,X,θ)p(fX,θ)df
在高斯过程回归模型中,先验和似然函数都是高斯分布:
p ( f ∣ X , θ ) = N ( 0 , K ) , p ( y ∣ f , X , θ ) = N ( f , σ n 2 I ) . \begin{aligned} p(f \mid X, \boldsymbol{\theta}) & =\mathcal{N}(\mathbf{0}, K), \\ p(\boldsymbol{y} \mid f, X, \boldsymbol{\theta}) & =\mathcal{N}\left(f, \sigma_n^2 \mathrm{I}\right) . \end{aligned} p(fX,θ)p(yf,X,θ)=N(0,K),=N(f,σn2I).于是我们知道边缘似然函数也是服从高斯分布:
p ( y ∣ X , θ ) = ∫ N ( f , σ n 2 I ) N ( 0 , K ) d f = N ( 0 , K + σ n 2 I ) = N ( 0 , Σ θ ) , p(\boldsymbol{y} \mid X, \boldsymbol{\theta})=\int \mathcal{N}\left(f, \sigma_n^2 \mathrm{I}\right) \mathcal{N}(\mathbf{0}, K) \mathrm{d} f=\mathcal{N}\left(\mathbf{0}, K+\sigma_n^2 \mathrm{I}\right)=\mathcal{N}\left(\mathbf{0}, \Sigma_\theta\right), p(yX,θ)=N(f,σn2I)N(0,K)df=N(0,K+σn2I)=N(0,Σθ),
其中 Σ θ = K θ + σ n 2 I = K + σ n 2 I \Sigma_\theta=K_\theta+\sigma_n^2 \mathbf{I}=K+\sigma_n^2 \mathbf{I} Σθ=Kθ+σn2I=K+σn2I θ \boldsymbol{\theta} θ 包含于协方差函数 K K K中。而更常用的是负对数边缘似然函数(Negative Log Marginal Likelihood,NLML):
L ( θ ) = − log ⁡ p ( y ∣ X , θ ) = 1 2 y T Σ θ − 1 y + 1 2 log ⁡ ∣ Σ θ ∣ + n 2 log ⁡ 2 π \mathcal{L}(\boldsymbol{\theta})=-\log p(\boldsymbol{y} \mid X, \boldsymbol{\theta})=\frac{1}{2} \boldsymbol{y}^{\mathrm{T}} \Sigma_\theta^{-1} \boldsymbol{y}+\frac{1}{2} \log \vert \Sigma_\theta \vert +\frac{n}{2} \log 2 \pi L(θ)=logp(yX,θ)=21yTΣθ1y+21logΣθ+2nlog2π
得到负对数似然函数 L \mathcal{L} L后,剩下的就是优化问题了,可以对上式关于 θ \theta θ求偏导:
∂ L ∂ θ i = 1 2 tr ⁡ ( Σ θ − 1 ∂ Σ θ ∂ θ i ) − 1 2 y T Σ θ − 1 ∂ Σ θ ∂ θ i Σ θ − 1 y . \frac{\partial \mathcal{L}}{\partial \theta_i}=\frac{1}{2} \operatorname{tr}\left(\Sigma_\theta^{-1} \frac{\partial \Sigma_\theta}{\partial \theta_i}\right)-\frac{1}{2} \boldsymbol{y}^{\mathrm{T}} \Sigma_\theta^{-1} \frac{\partial \Sigma_\theta}{\partial \theta_i} \Sigma_\theta^{-1} \boldsymbol{y}. θiL=21tr(Σθ1θiΣθ)21yTΣθ1θiΣθΣθ1y.

于是,就可以利用梯度下降之类的方法求得超参数 θ \boldsymbol{\theta} θ。不过值得注意的是,MLE方法有一些局限性。对于许多核函数,边际似然函数相对于超参数不是凸的,因此优化算法可能收敛到局部最优点,而不是全局最优点。因此,通过最大似然估计优化超参数,得到的GPR性能取决于优化算法的初始值 ,所以如何对模型参数的初始化十分关键。

参考资料

  1. 高斯过程的简洁推导

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1614858.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[移动通讯]【无线感知-P1】[从菲涅尔区模型到CSI模型-3][Mobius transformations-3]

前言: 参考 Professor Bonfert-Taylors 《Mobius transformations》,我们重点理解 因此莫比乌斯变换是共形映射( conformal mappinngs )以及反演特性inversion 目录 mobious transfromation 定义 mobious transfromation 性质…

掌握item_get_app,提升电商推广转化率

一、引言 在数字化时代,电商行业蓬勃发展,竞争也日趋激烈。为了提高销售额和用户满意度,电商企业需要不断探索新的推广策略和技术手段。其中,掌握item_get_app技术,对于提升电商推广转化率具有重要意义。本文将深入探…

FreeRTOS之中断管理

1.中断简介: 2.中断优先级分组: 注意,中断优先级数值越低,其优先级越高。而在任务优先级数值越高,其优先级越大。 3.中断相关寄存器介绍: 4.系统中断优先级设置: FreeRTOS管理中断的两个函数&am…

屏幕太小?教你如何轻松将苹果电脑投射到安卓电视!

好几个人开组会,一台电脑怎么够看?那岂不是要好几颗脑袋挤在一起盯着屏幕?如果能将电脑屏幕投屏到大电视上,视觉就没有压力了。 将电脑屏幕投射到电视上,不仅能够让观众更加集中注意力,还能让信息的传递更加…

基于PyAutoGUI图片定位的自动化截图工具--完成了

1、计划 压测完成后需要编写性能测试报告,报告中所需数据截图较多,使用自动化操作方便快捷,就编写一个界面工具以便后续复用。 基于PyAutoGUI图片定位的自动化截图工具–jmeter部分 基于PyAutoGUI图片定位的自动化截图工具–jmeter部分&#…

Linux命令接着学习

which命令,找到各种命令程序所处在的位置 语法:which查找的命令 那么对于我们想查找其他类型文件所在的位置,我们可以用到find命令 find命令 选项为-name,表示按照文件名进行查找 find命令中通配符 find命令和前面rm命令一样&…

2024/4/21周报

文章目录 摘要Abstract文献阅读题目问题贡献方法卷积及池化层LSTM层CNN-LSTM模型 数据集参数设置评估指标实验结果 深度学习使用GRU和LSTM进行时间预测1.库的导入&数据集2.数据预处理3.模型定义4.训练过程5.模型训练 总结 摘要 本周阅读了一篇基于CNN-LSTM黄金价格时间序列…

数据结构与算法笔记:线性建堆

ACM大牛带你玩转算法与数据结构-课程资料 本笔记属于船说系列课程之一,课程链接: 哔哩哔哩_bilibilihttps://www.bilibili.com/cheese/play/ep66799?csourceprivate_space_class_null&spm_id_from333.999.0.0 你也可以选择购买『船说系列课程-年度会…

IBM SPSS Statistics for Mac:强大的数据分析软件

IBM SPSS Statistics for Mac是一款功能强大的数据分析软件,专为Mac用户设计,提供了一系列专业的统计分析和数据管理功能。无论是科研人员、数据分析师还是学生,都能从中获得高效、准确的数据分析支持。 IBM SPSS Statistics for Mac v27.0.1…

Python与上位机开发day01

程序注释 程序注释主要是对代码进行解释说明,并不参与程序的运行 注释可以分为:单行注释和多行注释 1. 单行注释 单行注释以#开头,#后空一格后跟上注释的内容 # 这是单行注释 print(歪比巴卜)2. 多行注释 如果注释内容比较多的话,可以使用多行注释 多行注释以&…

电梯节能的推广意义

之前关于电梯能量回馈设备,小伍已经做了很多介绍,那么小伙伴们,他的推广意义你真的了解了么? 第一:节电降耗,电梯在运行过程中会产生大量的惯性能量,这些能量如果不被利用就会浪费。能量回馈技术…

SAP专家级实施商解读:SAP S/4HANA Cloud(PCE私有云) 的五大误解

五个关于SAP S/4HANA Cloud(PCE私有云)的重要疑问: ■ SAP太贵了? ■ SAP S/4HANA Cloud 只适用于大型企业? ■ ERP项目,尤其是 SAP 解决方案,太耗时了? ■ ERP项目/云项目没有优势&…

Sound Siphon for Mac:音频处理与录制工具

Sound Siphon for Mac是一款专为Mac用户设计的音频处理与录制工具,以其出色的性能、丰富的功能和简便的操作而备受赞誉。 Sound Siphon for Mac v3.6.8激活版下载 该软件支持多种音频格式,包括MP3、WAV、AAC、FLAC等,用户可以轻松导入各种音频…

一文扫盲(5):实验室管理系统的界面设计

本次带来第5期:实验室管理系统的设计,从系统定义、功能模块、界面构成和设计着力点四个方面讲解,大千UI工场愿意持续和大家分享,欢迎关注、点赞、转发。 一、什么是实验室管理系统 实验室管理系统是一种用于管理和监控实验室运作…

基于Springboot+Mybatis-Plus+mysql+html旅游网站

博主介绍: 大家好,本人精通Java、Python、C#、C、C编程语言,同时也熟练掌握微信小程序、Php和Android等技术,能够为大家提供全方位的技术支持和交流。 我有丰富的成品Java、Python、C#毕设项目经验,能够为学生提供各类…

【每日算法】理论:深度学习基础 刷题:KMP算法思想

上期文章 【每日算法】理论:常见网络架构 刷题:力扣字符串回顾 文章目录 上期文章一、上期问题二、本期理论问题1、注意力机制2、BatchNorm 和 LayerNorm 的区别3、Bert 的参数量是怎么决定的。4、为什么现在的大语言模型都采用Decoder only架构&#x…

【CAD打开提示未处理异常C0000027(c0000027h)的两种解决方法。】

cad打开提示错误c0000027h的第一种解决方法 去掉区域里的beta语言勾选。 https://autodesk8.com/cad/86.html 如果第一种方法没解决,尝试第二种方法大概率能解决 点击autoremove的扩展功能,输入c0000027点击搜索,然后双击出现的这个按钮既可…

键盘打字练习游戏代码

效果图 部分代码 index.html <!DOCTYPE html> <html lang"zh"> <head> <meta charset"UTF-8" /> <meta name"viewport" content"widthdevice-width, initial-scale1.0" /> <meta http-equiv"…

初识java——jdk?环境变量?及关于安装jdk的步骤

文章目录 JDK的安装在安装JDK时遇到的问题&#xff1a; 背景知识一 什么是jdkjdk简介jdk文件详解&#xff1a;1 bin目录&#xff1a;2 lib目录&#xff1a;3 include目录.exe文件是可执行的应用程序&#xff0c;这个我们都清楚&#xff0c;但.dll文件又是做什么的呢&#xff1f…

论文笔记:Leveraging Language Foundation Models for Human Mobility Forecasting

SIGSPATIAL 2022 1intro 语言模型POI客流量预测 2 方法 3 实验