高斯过程(Gaussian Process)
字数 3440 2025-10-27 23:30:22

好的,我们开始学习一个新的词条:高斯过程(Gaussian Process)

第一步:从随机变量到随机过程

  1. 随机变量:我们先回顾一个你熟悉的概念。一个随机变量(例如,用 \(X\) 表示)是一个其数值由随机事件决定的变量。比如,掷一次骰子的结果就是一个随机变量。如果我们说 \(X\) 服从一个高斯分布(或称正态分布),那么我们就能知道 \(X\) 取任何特定值的概率是多少。这个分布完全由两个参数决定:均值 \(\mu\) 和方差 \(\sigma^2\),记作 \(X \sim \mathcal{N}(\mu, \sigma^2)\)。它的概率密度函数呈经典的“钟形曲线”。

  2. 随机向量:现在,考虑多个随机变量集合在一起,例如 \(\mathbf{X} = [X_1, X_2, ..., X_n]\)。如果这些变量联合服从高斯分布,那么 \(\mathbf{X}\) 就是一个高斯随机向量。描述它不再仅仅依靠均值和方差,而是需要:

  • 均值向量\(\mathbf{\mu} = [\mu_1, \mu_2, ..., \mu_n]\),表示每个分量的平均值。
  • 协方差矩阵\(\Sigma\),一个 \(n \times n\) 的矩阵。对角线上的元素 \(\Sigma_{ii}\) 是每个 \(X_i\) 的方差,而非对角线上的元素 \(\Sigma_{ij}\) 则描述了 \(X_i\)\(X_j\) 之间的相关性(它们如何一起变化)。
  1. 随机过程:现在我们把索引从有限个(1, 2, ..., n)扩展到连续域,最常见的是时间 \(t\) 或空间 \(\mathbf{x}\)。一个随机过程 \(f(t)\) 可以看作是一个无穷维的随机向量,其中每个时间点 \(t\) 都对应一个随机变量 \(f_t\)。例如,一天内的温度变化、股票价格走势,都可以看作随机过程。

第二步:高斯过程的定义

高斯过程 就是将高斯分布的概念从有限维的随机向量推广到无限维的随机过程。

核心思想:一个高斯过程定义了一个函数的分布。也就是说,从这个过程中抽样,得到的不再是一个单一的数字,而是一条完整的曲线(函数)。

严谨定义:如果随机过程 \(f(\mathbf{x})\) 满足:对于任意有限个点 \(\mathbf{x}_1, \mathbf{x}_2, ..., \mathbf{x}_n\)(这些点可以任意选择,数量也可以任意),对应的随机变量集合 \([f(\mathbf{x}_1), f(\mathbf{x}_2), ..., f(\mathbf{x}_n)]\) 都服从一个联合高斯分布,那么 \(f\) 就是一个高斯过程。

这意味着一组函数值 \(f(\mathbf{x}_1), ..., f(\mathbf{x}_n)\) 的概率分布是一个多元高斯分布。正如一个多元高斯分布由均值向量和协方差矩阵完全确定一样,一个高斯过程也由两个函数完全确定:

  1. 均值函数 \(m(\mathbf{x})\):给出了在任意点 \(\mathbf{x}\) 处,函数 \(f(\mathbf{x})\) 的平均值。通常为了方便,会假设 \(m(\mathbf{x}) = 0\)
  2. 协方差函数(或称核函数)\(k(\mathbf{x}, \mathbf{x}’)\):这是高斯过程的灵魂。它定义了任意两个点 \(\mathbf{x}\)\(\mathbf{x}’\) 处的函数值 \(f(\mathbf{x})\)\(f(\mathbf{x}’)\) 之间的相关性。它决定了函数的平滑度、周期性和变化幅度等特性。

我们将其记作:

\[f(\mathbf{x}) \sim \mathcal{GP}(m(\mathbf{x}), k(\mathbf{x}, \mathbf{x}’)) \]

第三步:理解核函数的作用

核函数 \(k(\mathbf{x}, \mathbf{x}’)\) 是理解高斯过程的关键。它编码了我们对所要建模的函数的先验知识。

  • 如果两个点 \(\mathbf{x}\)\(\mathbf{x}’\) 很接近,那么它们的函数值 \(f(\mathbf{x})\)\(f(\mathbf{x}’)\) 很可能高度相关(即数值相近)。因此,核函数的值 \(k(\mathbf{x}, \mathbf{x}’)\) 应该很大。
  • 如果两个点相距很远,它们的函数值可能几乎不相关,核函数的值应该接近于零。

常见核函数示例

  • 平方指数核\(k(\mathbf{x}, \mathbf{x}’) = \sigma^2 \exp\left(-\frac{\|\mathbf{x} - \mathbf{x}’\|^2}{2l^2}\right)\)
  • \(\sigma^2\) 控制函数的整体方差(幅度)。
  • \(l\) 是长度尺度,控制函数的平滑度。\(l\) 越大,函数变化越缓慢。
    • 这个核会产生非常平滑、无限次可微的函数。

第四步:高斯过程回归(预测)

高斯过程最强大的应用之一是作为贝叶斯非参数回归工具,也称为克里金法

场景:我们有一些观测数据(训练点)\(\mathbf{X} = {\mathbf{x}_1, ..., \mathbf{x}_n}\) 和对应的观测值 \(\mathbf{y} = {y_1, ..., y_n}\)。这些观测值可能带有噪声,即 \(y = f(\mathbf{x}) + \epsilon\),其中 \(\epsilon\) 是高斯噪声。我们想预测在新的输入点 \(\mathbf{x}_*\) 处的函数值 \(f(\mathbf{x}_*)\)

贝叶斯框架

  1. 先验:在见到任何数据之前,我们假设函数 \(f\) 服从一个高斯过程先验,即 \(f \sim \mathcal{GP}(0, k(\mathbf{x}, \mathbf{x}’))\)
  2. 后验:当我们观察到数据 \((\mathbf{X}, \mathbf{y})\) 后,根据贝叶斯定理,我们可以计算出函数 \(f\) 的后验分布。这个后验分布仍然是一个高斯过程

结论:给定训练数据,在新的测试点 \(\mathbf{x}_*\) 处的函数值 \(f(\mathbf{x}_*)\) 的后验分布是一个高斯分布(正态分布):

\[p(f(\mathbf{x}_*) | \mathbf{X}, \mathbf{y}, \mathbf{x}_*) = \mathcal{N}(\mu_*, \sigma_*^2) \]

其中,

  • 后验均值 \(\mu_*\):是对 \(f(\mathbf{x}_*)\) 的最优预测。它本质上是所有经过数据点附近的光滑函数的加权平均。
  • 后验方差 \(\sigma_*^2\):表示了预测的不确定性。在数据点密集的区域,不确定性低(方差小);在远离数据点的区域,不确定性高(方差大)。

可视化:高斯过程回归的结果通常绘制成一条曲线(后验均值),并带有表示不确定性的置信区间(例如,均值 ± 2 标准差)。这个区间会自然地随着数据密度而变化,这是高斯过程一个非常优雅的特性。

第五步:总结与应用

总结:高斯过程是一个强大的非参数贝叶斯模型,它直接对函数进行建模。它由均值函数和核函数定义,并通过贝叶斯推理来提供预测和不确定性量化。

主要应用

  • 机器学习中的回归和分类(尤其是数据量不大的场景)。
  • 贝叶斯优化:用于优化黑箱函数,特别是在评估函数代价高昂时(如超参数调优、实验设计)。
  • 地质统计学(克里金法):用于空间数据插值。
  • 机器人学:用于环境建模和路径规划。

高斯过程的核心优势在于其原则性的不确定性量化能力灵活性(通过选择不同的核函数)。其主要的计算瓶颈在于处理大规模数据集时,需要对大型矩阵求逆,计算复杂度较高。

好的,我们开始学习一个新的词条: 高斯过程(Gaussian Process) 。 第一步:从随机变量到随机过程 随机变量 :我们先回顾一个你熟悉的概念。一个随机变量(例如,用 \( X \) 表示)是一个其数值由随机事件决定的变量。比如,掷一次骰子的结果就是一个随机变量。如果我们说 \( X \) 服从一个高斯分布(或称正态分布),那么我们就能知道 \( X \) 取任何特定值的概率是多少。这个分布完全由两个参数决定:均值 \( \mu \) 和方差 \( \sigma^2 \),记作 \( X \sim \mathcal{N}(\mu, \sigma^2) \)。它的概率密度函数呈经典的“钟形曲线”。 随机向量 :现在,考虑多个随机变量集合在一起,例如 \( \mathbf{X} = [ X_ 1, X_ 2, ..., X_ n ] \)。如果这些变量联合服从高斯分布,那么 \( \mathbf{X} \) 就是一个高斯随机向量。描述它不再仅仅依靠均值和方差,而是需要: 均值向量 :\( \mathbf{\mu} = [ \mu_ 1, \mu_ 2, ..., \mu_ n ] \),表示每个分量的平均值。 协方差矩阵 :\( \Sigma \),一个 \( n \times n \) 的矩阵。对角线上的元素 \( \Sigma_ {ii} \) 是每个 \( X_ i \) 的方差,而非对角线上的元素 \( \Sigma_ {ij} \) 则描述了 \( X_ i \) 和 \( X_ j \) 之间的相关性(它们如何一起变化)。 随机过程 :现在我们把索引从有限个(1, 2, ..., n)扩展到连续域,最常见的是时间 \( t \) 或空间 \( \mathbf{x} \)。一个随机过程 \( f(t) \) 可以看作是一个无穷维的随机向量,其中每个时间点 \( t \) 都对应一个随机变量 \( f_ t \)。例如,一天内的温度变化、股票价格走势,都可以看作随机过程。 第二步:高斯过程的定义 高斯过程 就是将高斯分布的概念从有限维的随机向量推广到无限维的随机过程。 核心思想 :一个高斯过程定义了一个函数的分布。也就是说,从这个过程中抽样,得到的不再是一个单一的数字,而是一条完整的曲线(函数)。 严谨定义 :如果随机过程 \( f(\mathbf{x}) \) 满足:对于任意有限个点 \( \mathbf{x}_ 1, \mathbf{x}_ 2, ..., \mathbf{x}_ n \)(这些点可以任意选择,数量也可以任意),对应的随机变量集合 \( [ f(\mathbf{x}_ 1), f(\mathbf{x}_ 2), ..., f(\mathbf{x}_ n) ] \) 都服从一个联合高斯分布,那么 \( f \) 就是一个高斯过程。 这意味着一组函数值 \( f(\mathbf{x}_ 1), ..., f(\mathbf{x}_ n) \) 的概率分布是一个多元高斯分布。正如一个多元高斯分布由均值向量和协方差矩阵完全确定一样,一个高斯过程也由两个函数完全确定: 均值函数 \( m(\mathbf{x}) \) :给出了在任意点 \( \mathbf{x} \) 处,函数 \( f(\mathbf{x}) \) 的平均值。通常为了方便,会假设 \( m(\mathbf{x}) = 0 \)。 协方差函数(或称核函数)\( k(\mathbf{x}, \mathbf{x}’) \) :这是高斯过程的灵魂。它定义了任意两个点 \( \mathbf{x} \) 和 \( \mathbf{x}’ \) 处的函数值 \( f(\mathbf{x}) \) 和 \( f(\mathbf{x}’) \) 之间的相关性。它决定了函数的平滑度、周期性和变化幅度等特性。 我们将其记作: \[ f(\mathbf{x}) \sim \mathcal{GP}(m(\mathbf{x}), k(\mathbf{x}, \mathbf{x}’)) \] 第三步:理解核函数的作用 核函数 \( k(\mathbf{x}, \mathbf{x}’) \) 是理解高斯过程的关键。它编码了我们对所要建模的函数的先验知识。 如果两个点 \( \mathbf{x} \) 和 \( \mathbf{x}’ \) 很接近 ,那么它们的函数值 \( f(\mathbf{x}) \) 和 \( f(\mathbf{x}’) \) 很可能高度相关(即数值相近)。因此,核函数的值 \( k(\mathbf{x}, \mathbf{x}’) \) 应该很大。 如果两个点相距很远 ,它们的函数值可能几乎不相关,核函数的值应该接近于零。 常见核函数示例 : 平方指数核 :\( k(\mathbf{x}, \mathbf{x}’) = \sigma^2 \exp\left(-\frac{\|\mathbf{x} - \mathbf{x}’\|^2}{2l^2}\right) \) \( \sigma^2 \) 控制函数的整体方差(幅度)。 \( l \) 是长度尺度,控制函数的平滑度。\( l \) 越大,函数变化越缓慢。 这个核会产生非常平滑、无限次可微的函数。 第四步:高斯过程回归(预测) 高斯过程最强大的应用之一是作为贝叶斯非参数回归工具,也称为 克里金法 。 场景 :我们有一些观测数据(训练点)\( \mathbf{X} = {\mathbf{x} 1, ..., \mathbf{x} n} \) 和对应的观测值 \( \mathbf{y} = {y_ 1, ..., y_ n} \)。这些观测值可能带有噪声,即 \( y = f(\mathbf{x}) + \epsilon \),其中 \( \epsilon \) 是高斯噪声。我们想预测在新的输入点 \( \mathbf{x} * \) 处的函数值 \( f(\mathbf{x} * ) \)。 贝叶斯框架 : 先验 :在见到任何数据之前,我们假设函数 \( f \) 服从一个高斯过程先验,即 \( f \sim \mathcal{GP}(0, k(\mathbf{x}, \mathbf{x}’)) \)。 后验 :当我们观察到数据 \( (\mathbf{X}, \mathbf{y}) \) 后,根据贝叶斯定理,我们可以计算出函数 \( f \) 的后验分布。这个后验分布 仍然是一个高斯过程 ! 结论 :给定训练数据,在新的测试点 \( \mathbf{x} * \) 处的函数值 \( f(\mathbf{x} ) \) 的后验分布是一个高斯分布(正态分布): \[ p(f(\mathbf{x}_ ) | \mathbf{X}, \mathbf{y}, \mathbf{x} * ) = \mathcal{N}(\mu , \sigma_ ^2) \] 其中, 后验均值 \( \mu_* \) :是对 \( f(\mathbf{x}_ * ) \) 的最优预测。它本质上是所有经过数据点附近的光滑函数的加权平均。 后验方差 \( \sigma_* ^2 \) :表示了预测的不确定性。在数据点密集的区域,不确定性低(方差小);在远离数据点的区域,不确定性高(方差大)。 可视化 :高斯过程回归的结果通常绘制成一条曲线(后验均值),并带有表示不确定性的 置信区间 (例如,均值 ± 2 标准差)。这个区间会自然地随着数据密度而变化,这是高斯过程一个非常优雅的特性。 第五步:总结与应用 总结 :高斯过程是一个强大的非参数贝叶斯模型,它直接对函数进行建模。它由均值函数和核函数定义,并通过贝叶斯推理来提供预测和不确定性量化。 主要应用 : 机器学习中的回归和分类 (尤其是数据量不大的场景)。 贝叶斯优化 :用于优化黑箱函数,特别是在评估函数代价高昂时(如超参数调优、实验设计)。 地质统计学 (克里金法):用于空间数据插值。 机器人学 :用于环境建模和路径规划。 高斯过程的核心优势在于其 原则性的不确定性量化能力 和 灵活性 (通过选择不同的核函数)。其主要的计算瓶颈在于处理大规模数据集时,需要对大型矩阵求逆,计算复杂度较高。