高斯过程(Gaussian Process)
字数 3870 2025-10-27 23:31:03

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

高斯过程是概率论和统计学中一个非常重要的概念,它扩展了多元高斯分布(即正态分布)到无限维的情况,为处理函数空间上的不确定性提供了一套强大的框架。它在机器学习(特别是贝叶斯优化和回归)、空间统计学等领域有广泛应用。

让我们循序渐进地理解它。

步骤一:从一元高斯分布到多元高斯分布

  1. 一元高斯分布(复习)
  • 这是最基础的分布,描述一个单一随机变量 \(X\) 的分布。
    • 它完全由两个参数决定:均值(μ)方差(σ²)
  • 概率密度函数(PDF)为: \(f(x) = \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)\)
  • 它告诉我们随机变量 \(X\) 取某个值的可能性有多大。
  1. 多元高斯分布
  • 当我们有多个(比如 \(n\) 个)随机变量 \(\mathbf{X} = (X_1, X_2, ..., X_n)\) 时,我们就需要考虑它们之间的相关性
    • 多元高斯分布是描述这组随机变量的联合分布。它由两个参数完全确定:
  • 均值向量(μ): 一个 \(n\) 维向量,表示每个随机变量各自的均值。
  • 协方差矩阵(Σ): 一个 \(n \times n\) 的矩阵。对角线上的元素 \(\Sigma_{ii}\) 是每个变量 \(X_i\) 的方差,而非对角线上的元素 \(\Sigma_{ij}\) 则描述了变量 \(X_i\)\(X_j\) 之间的协方差(即相关性)。
    • 关键思想: 多元高斯分布不仅描述了每个点的分布,还描述了这些点之间如何共同变化。如果你从多元高斯分布中抽取一个样本,你得到的不再是一个单一的数字,而是一个向量(即一组相关的数字)。

步骤二:从有限维到无限维——函数的视角

现在,我们进行一个思想上的飞跃。假设我们关心的不是一个有限的点集,而是一个函数 \(f(x)\)。例如,\(f(x)\) 可能是在位置 \(x\) 测得的温度。

  1. 问题: 我们如何对一个函数的概率分布进行建模?函数有无限多个点(每个 \(x\) 对应一个 \(f(x)\)),我们无法用一个无限维的向量来定义传统的多元高斯分布。

  2. 高斯过程的定义

    • 一个高斯过程(GP)被定义为:一个随机过程的集合,其中任意有限个点上的函数值的联合分布都是高斯分布。
    • 让我们来拆解这个定义:
      • 随机过程: 可以理解为一个随机函数。每次你“运行”这个过程,你就会得到一条不同的函数曲线。
  • 任意有限个点: 虽然函数是无限的,但我们总是可以从中选取有限个点,例如 \(\mathbf{x} = (x_1, x_2, ..., x_n)\)
  • 函数值的联合分布是高斯分布: 对于你选取的这 \(n\) 个点,对应的函数值 \(\mathbf{f} = (f(x_1), f(x_2), ..., f(x_n))\) 的联合分布是一个 \(n\) 维的多元高斯分布。

步骤三:高斯过程的参数化——均值函数和协方差函数

既然任意有限个点的集合都服从多元高斯分布,那么我们如何描述整个高斯过程呢?回想一下,一个多元高斯分布由均值向量和协方差矩阵决定。对于高斯过程,这两个概念被推广为函数:

  1. 均值函数(Mean Function), \(m(x)\)
  • 它定义了在任意点 \(x\) 上,函数 \(f(x)\)平均值。即 \(m(x) = \mathbb{E}[f(x)]\)
  • 通常,为了简化,我们假设均值函数为零(\(m(x) = 0\)),或者先对数据进行去均值处理。因为所有的“动作”基本上都发生在协方差中。
  1. 协方差函数(Covariance Function)或核函数(Kernel Function), \(k(x, x’)\)
  • 这是高斯过程的灵魂。它定义了函数在不同点 \(x\)\(x'\) 处的值之间的相关性
  • \(k(x, x') = \mathbb{E}[(f(x) - m(x))(f(x') - m(x'))]\)
    • 核函数的作用
      • 平滑度: 它控制了你从过程中抽取的样本函数有多平滑。例如,常用的平方指数核(也称径向基函数核,RBF Kernel) 为:
        \(k(x, x') = \sigma_f^2 \exp\left(-\frac{\|x - x'\|^2}{2l^2}\right)\)
  • \(l\)长度尺度(length-scale),决定了函数变化的“速度”。\(l\) 越大,函数越平滑缓慢;\(l\) 越小,函数越崎岖快速。
  • \(\sigma_f^2\)信号方差(signal variance),决定了函数整体的波动范围。
    * 结构: 不同的核函数可以捕捉函数的不同结构,如周期性、线性趋势等。

因此,一个高斯过程被正式写为:
\(f(x) \sim \mathcal{GP}(m(x),\, k(x, x'))\)

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

高斯过程最强大的应用之一是作为贝叶斯非参数回归工具。其核心思想是:从带有噪声的数据中学习一个函数

  1. 设定
  • 我们有一些观测数据,称为训练点:输入 \(\mathbf{X} = (x_1, ..., x_n)\),输出 \(\mathbf{y} = (y_1, ..., y_n)\)
  • 我们假设观测值带有噪声: \(y = f(x) + \epsilon\),其中 \(\epsilon\) 是高斯噪声 \(\mathcal{N}(0, \sigma_n^2)\)
  • 我们想要在新的测试点 \(\mathbf{X}_*\) 上预测函数值 \(\mathbf{f}_*\)
  1. 贝叶斯推断
  • 我们为未知函数 \(f\) 设定一个先验\(f(x) \sim \mathcal{GP}(0, k(x, x'))\)。这表达了我们在看到数据之前对函数的信念(例如,它有多平滑)。
    • 由于训练点和测试点上的函数值联合服从一个多元高斯分布,我们可以写出:
      \(\begin{bmatrix} \mathbf{y} \\ \mathbf{f}_* \end{bmatrix} \sim \mathcal{N} \left( \mathbf{0}, \begin{bmatrix} K(\mathbf{X}, \mathbf{X}) + \sigma_n^2 I & K(\mathbf{X}, \mathbf{X}_*) \\ K(\mathbf{X}_*, \mathbf{X}) & K(\mathbf{X}_*, \mathbf{X}_*) \end{bmatrix} \right)\)
      这里,\(K(\mathbf{A}, \mathbf{B})\) 表示通过核函数 \(k\) 计算矩阵 \(A\)\(B\) 中所有点对之间的协方差所得到的矩阵。
    • 利用多元高斯分布的条件分布性质,我们可以得到后验预测分布
      \(\mathbf{f}_* | \mathbf{X}, \mathbf{y}, \mathbf{X}_* \sim \mathcal{N}(\bar{\mathbf{f}}_*, \text{cov}(\mathbf{f}_*))\)
      其中:
  • 后验均值\(\bar{\mathbf{f}}_* = K(\mathbf{X}_*, \mathbf{X}) [K(\mathbf{X}, \mathbf{X}) + \sigma_n^2 I]^{-1} \mathbf{y}\)
  • 后验协方差\(\text{cov}(\mathbf{f}_*) = K(\mathbf{X}_*, \mathbf{X}_*) - K(\mathbf{X}_*, \mathbf{X}) [K(\mathbf{X}, \mathbf{X}) + \sigma_n^2 I]^{-1} K(\mathbf{X}, \mathbf{X}_*)\)
  1. 直观理解
  • 后验均值 \(\bar{\mathbf{f}}_*\) 就是我们的预测函数。它完美地穿过了数据的“趋势”,同时保持了平滑性。
  • 后验协方差 \(\text{cov}(\mathbf{f}_*)\) 给出了预测的不确定性。在数据点附近,不确定性小(置信区间窄);在远离数据点的地方,不确定性大(置信区间宽)。这完美体现了贝叶斯思想:预测不仅是一个值,而是一个完整的概率分布。

总结

  • 高斯过程是将多元高斯分布推广到函数空间的一种方法。
  • 它由均值函数协方差函数(核函数) 完全定义。
  • 核函数决定了函数的结构特性,如平滑度、周期性等。
  • 高斯过程回归中,它提供了一种优雅的贝叶斯方法来从数据中学习函数,并同时提供预测的不确定性估计。

这个框架非常灵活,是理解许多现代机器学习算法和空间统计模型的基础。

好的,我们开始学习新的词条: 高斯过程(Gaussian Process) 。 高斯过程是概率论和统计学中一个非常重要的概念,它扩展了多元高斯分布(即正态分布)到无限维的情况,为处理函数空间上的不确定性提供了一套强大的框架。它在机器学习(特别是贝叶斯优化和回归)、空间统计学等领域有广泛应用。 让我们循序渐进地理解它。 步骤一:从一元高斯分布到多元高斯分布 一元高斯分布(复习) : 这是最基础的分布,描述一个单一随机变量 \( X \) 的分布。 它完全由两个参数决定: 均值(μ) 和 方差(σ²) 。 概率密度函数(PDF)为: \( f(x) = \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right) \)。 它告诉我们随机变量 \( X \) 取某个值的可能性有多大。 多元高斯分布 : 当我们有多个(比如 \( n \) 个)随机变量 \( \mathbf{X} = (X_ 1, X_ 2, ..., X_ n) \) 时,我们就需要考虑它们之间的 相关性 。 多元高斯分布是描述这组随机变量的联合分布。它由两个参数完全确定: 均值向量(μ) : 一个 \( n \) 维向量,表示每个随机变量各自的均值。 协方差矩阵(Σ) : 一个 \( n \times n \) 的矩阵。对角线上的元素 \( \Sigma_ {ii} \) 是每个变量 \( X_ i \) 的方差,而非对角线上的元素 \( \Sigma_ {ij} \) 则描述了变量 \( X_ i \) 和 \( X_ j \) 之间的协方差(即相关性)。 关键思想 : 多元高斯分布不仅描述了每个点的分布,还描述了这些点之间如何共同变化。如果你从多元高斯分布中抽取一个样本,你得到的不再是一个单一的数字,而是一个 向量 (即一组相关的数字)。 步骤二:从有限维到无限维——函数的视角 现在,我们进行一个思想上的飞跃。假设我们关心的不是一个有限的点集,而是一个 函数 \( f(x) \)。例如,\( f(x) \) 可能是在位置 \( x \) 测得的温度。 问题 : 我们如何对一个 函数 的概率分布进行建模?函数有无限多个点(每个 \( x \) 对应一个 \( f(x) \)),我们无法用一个无限维的向量来定义传统的多元高斯分布。 高斯过程的定义 : 一个高斯过程(GP)被定义为: 一个随机过程的集合,其中任意有限个点上的函数值的联合分布都是高斯分布。 让我们来拆解这个定义: 随机过程 : 可以理解为一个随机函数。每次你“运行”这个过程,你就会得到一条不同的函数曲线。 任意有限个点 : 虽然函数是无限的,但我们总是可以从中选取有限个点,例如 \( \mathbf{x} = (x_ 1, x_ 2, ..., x_ n) \)。 函数值的联合分布是高斯分布 : 对于你选取的这 \( n \) 个点,对应的函数值 \( \mathbf{f} = (f(x_ 1), f(x_ 2), ..., f(x_ n)) \) 的联合分布是一个 \( n \) 维的多元高斯分布。 步骤三:高斯过程的参数化——均值函数和协方差函数 既然任意有限个点的集合都服从多元高斯分布,那么我们如何描述整个高斯过程呢?回想一下,一个多元高斯分布由均值向量和协方差矩阵决定。对于高斯过程,这两个概念被推广为函数: 均值函数(Mean Function), \( m(x) \) : 它定义了在任意点 \( x \) 上,函数 \( f(x) \) 的 平均值 。即 \( m(x) = \mathbb{E}[ f(x) ] \)。 通常,为了简化,我们假设均值函数为零(\( m(x) = 0 \)),或者先对数据进行去均值处理。因为所有的“动作”基本上都发生在协方差中。 协方差函数(Covariance Function)或核函数(Kernel Function), \( k(x, x’) \) : 这是高斯过程的 灵魂 。它定义了函数在不同点 \( x \) 和 \( x' \) 处的值之间的 相关性 。 \( k(x, x') = \mathbb{E}[ (f(x) - m(x))(f(x') - m(x')) ] \)。 核函数的作用 : 平滑度 : 它控制了你从过程中抽取的样本函数有多平滑。例如,常用的 平方指数核(也称径向基函数核,RBF Kernel) 为: \( k(x, x') = \sigma_ f^2 \exp\left(-\frac{\|x - x'\|^2}{2l^2}\right) \) \( l \) 是 长度尺度(length-scale) ,决定了函数变化的“速度”。\( l \) 越大,函数越平滑缓慢;\( l \) 越小,函数越崎岖快速。 \( \sigma_ f^2 \) 是 信号方差(signal variance) ,决定了函数整体的波动范围。 结构 : 不同的核函数可以捕捉函数的不同结构,如周期性、线性趋势等。 因此,一个高斯过程被正式写为: \( f(x) \sim \mathcal{GP}(m(x),\, k(x, x')) \) 步骤四:高斯过程回归(预测) 高斯过程最强大的应用之一是作为贝叶斯非参数回归工具。其核心思想是: 从带有噪声的数据中学习一个函数 。 设定 : 我们有一些观测数据,称为 训练点 :输入 \( \mathbf{X} = (x_ 1, ..., x_ n) \),输出 \( \mathbf{y} = (y_ 1, ..., y_ n) \)。 我们假设观测值带有噪声: \( y = f(x) + \epsilon \),其中 \( \epsilon \) 是高斯噪声 \( \mathcal{N}(0, \sigma_ n^2) \)。 我们想要在新的 测试点 \( \mathbf{X} * \) 上预测函数值 \( \mathbf{f} * \)。 贝叶斯推断 : 我们为未知函数 \( f \) 设定一个 先验 : \( f(x) \sim \mathcal{GP}(0, k(x, x')) \)。这表达了我们在看到数据之前对函数的信念(例如,它有多平滑)。 由于训练点和测试点上的函数值联合服从一个多元高斯分布,我们可以写出: \( \begin{bmatrix} \mathbf{y} \\ \mathbf{f} * \end{bmatrix} \sim \mathcal{N} \left( \mathbf{0}, \begin{bmatrix} K(\mathbf{X}, \mathbf{X}) + \sigma_ n^2 I & K(\mathbf{X}, \mathbf{X} ) \\ K(\mathbf{X}_ , \mathbf{X}) & K(\mathbf{X} * , \mathbf{X} * ) \end{bmatrix} \right) \) 这里,\( K(\mathbf{A}, \mathbf{B}) \) 表示通过核函数 \( k \) 计算矩阵 \( A \) 和 \( B \) 中所有点对之间的协方差所得到的矩阵。 利用多元高斯分布的条件分布性质,我们可以得到 后验预测分布 : \( \mathbf{f} * | \mathbf{X}, \mathbf{y}, \mathbf{X} * \sim \mathcal{N}(\bar{\mathbf{f}} * , \text{cov}(\mathbf{f} * )) \) 其中: 后验均值 : \( \bar{\mathbf{f}} * = K(\mathbf{X} * , \mathbf{X}) [ K(\mathbf{X}, \mathbf{X}) + \sigma_ n^2 I ]^{-1} \mathbf{y} \) 后验协方差 : \( \text{cov}(\mathbf{f} * ) = K(\mathbf{X} , \mathbf{X}_ ) - K(\mathbf{X} * , \mathbf{X}) [ K(\mathbf{X}, \mathbf{X}) + \sigma_ n^2 I]^{-1} K(\mathbf{X}, \mathbf{X} * ) \) 直观理解 : 后验均值 \( \bar{\mathbf{f}}_ * \) 就是我们的预测函数。它完美地穿过了数据的“趋势”,同时保持了平滑性。 后验协方差 \( \text{cov}(\mathbf{f}_ * ) \) 给出了预测的 不确定性 。在数据点附近,不确定性小(置信区间窄);在远离数据点的地方,不确定性大(置信区间宽)。这完美体现了贝叶斯思想:预测不仅是一个值,而是一个完整的概率分布。 总结 高斯过程 是将多元高斯分布推广到函数空间的一种方法。 它由 均值函数 和 协方差函数(核函数) 完全定义。 核函数决定了函数的结构特性,如平滑度、周期性等。 在 高斯过程回归 中,它提供了一种优雅的贝叶斯方法来从数据中学习函数,并同时提供预测的不确定性估计。 这个框架非常灵活,是理解许多现代机器学习算法和空间统计模型的基础。