高斯过程回归(Gaussian Process Regression)的原理与预测过程
题目描述
高斯过程回归(GPR)是一种基于贝叶斯思想的非参数回归方法。它假设函数值服从多元高斯分布,通过先验和观测数据推导后验分布,从而预测新样本的输出。题目要求:详细解释高斯过程的数学定义、核函数的作用、后验预测分布的推导步骤,并举例说明预测过程。
解题过程
1. 高斯过程的基本定义
- 核心思想:将函数 \(f(x)\) 视为随机变量的集合,任意有限个函数值 \(f(x_1), f(x_2), \dots, f(x_n)\) 的联合分布是多元高斯分布。
- 数学表达:
\[ f(\mathbf{x}) \sim \mathcal{GP}(m(\mathbf{x}), k(\mathbf{x}, \mathbf{x}')) \]
其中 \(m(\mathbf{x})\) 是均值函数(通常设为0),\(k(\mathbf{x}, \mathbf{x}')\) 是协方差函数(核函数),衡量 \(\mathbf{x}\) 和 \(\mathbf{x}'\) 的相似性。
2. 核函数的作用与选择
- 作用:核函数决定函数的平滑度、周期性等性质。例如:
- 径向基函数(RBF)核:
\[ k(\mathbf{x}, \mathbf{x}') = \exp\left(-\frac{\|\mathbf{x} - \mathbf{x}'\|^2}{2l^2}\right) \]
参数 $ l $ 控制变化尺度(长度尺度)。
- 重要性:核函数的选择直接影响模型对数据模式的捕捉能力。
3. 后验预测分布推导
假设观测数据 \(\mathbf{X} = [\mathbf{x}_1, \dots, \mathbf{x}_n]\) 对应输出 \(\mathbf{y} = [y_1, \dots, y_n]^\top\),且 \(y_i = f(\mathbf{x}_i) + \epsilon\),其中 \(\epsilon \sim \mathcal{N}(0, \sigma_n^2)\) 是噪声。
- 先验分布:所有函数值 \(\mathbf{f} = [f(\mathbf{x}_1), \dots, f(\mathbf{x}_n)]^\top\) 满足:
\[ \mathbf{f} \sim \mathcal{N}(\mathbf{0}, K(\mathbf{X}, \mathbf{X})) \]
这里 \(K(\mathbf{X}, \mathbf{X})\) 是 \(n \times n\) 矩阵,元素 \(K_{ij} = k(\mathbf{x}_i, \mathbf{x}_j)\)。
- 联合分布:对于新点 \(\mathbf{x}_*\),观测值 \(\mathbf{y}\) 与预测值 \(f_* = f(\mathbf{x}_*)\) 的联合分布为:
\[ \begin{bmatrix} \mathbf{y} \\ 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{X}, \mathbf{x}_*)\) 是训练点与预测点之间的协方差向量。
- 后验分布:利用条件高斯分布公式,可得后验预测分布:
\[ p(f_* \mid \mathbf{X}, \mathbf{y}, \mathbf{x}_*) = \mathcal{N}(\mu_*, \sigma_*^2) \]
其中:
\[ \mu_* = K(\mathbf{x}_*, \mathbf{X}) \left[ K(\mathbf{X}, \mathbf{X}) + \sigma_n^2 I \right]^{-1} \mathbf{y} \]
\[ \sigma_*^2 = k(\mathbf{x}_*, \mathbf{x}_*) - K(\mathbf{x}_*, \mathbf{X}) \left[ K(\mathbf{X}, \mathbf{X}) + \sigma_n^2 I \right]^{-1} K(\mathbf{X}, \mathbf{x}_*) \]
4. 实例演示
假设训练数据为 \(\mathbf{X} = [1, 2]\),\(\mathbf{y} = [3, 5]\),核函数为 RBF(\(l=1.0\)),噪声 \(\sigma_n = 0.1\)。预测点 \(\mathbf{x}_* = 3\)。
- 步骤1:计算协方差矩阵:
\(K(\mathbf{X}, \mathbf{X}) = \begin{bmatrix} k(1,1) & k(1,2) \\ k(2,1) & k(2,2) \end{bmatrix} = \begin{bmatrix} 1 & e^{-0.5} \\ e^{-0.5} & 1 \end{bmatrix} \approx \begin{bmatrix} 1 & 0.61 \\ 0.61 & 1 \end{bmatrix}\)
加入噪声:\(K(\mathbf{X}, \mathbf{X}) + \sigma_n^2 I \approx \begin{bmatrix} 1.01 & 0.61 \\ 0.61 & 1.01 \end{bmatrix}\)。 - 步骤2:计算 \(K(\mathbf{x}_*, \mathbf{X}) = [k(3,1), k(3,2)] = [e^{-2}, e^{-0.5}] \approx [0.14, 0.61]\)。
- 步骤3:求解权重向量:
\[ \alpha = \left[ K(\mathbf{X}, \mathbf{X}) + \sigma_n^2 I \right]^{-1} \mathbf{y} \approx \begin{bmatrix} 1.01 & 0.61 \\ 0.61 & 1.01 \end{bmatrix}^{-1} \begin{bmatrix} 3 \\ 5 \end{bmatrix} \approx \begin{bmatrix} 1.42 \\ 3.65 \end{bmatrix} \]
- 步骤4:预测均值和方差:
\(\mu_* = K(\mathbf{x}_*, \mathbf{X}) \alpha \approx [0.14, 0.61] \cdot [1.42, 3.65]^\top \approx 2.48\)
\(\sigma_*^2 = k(3,3) - K(\mathbf{x}_*, \mathbf{X}) \alpha \approx 1 - [0.14, 0.61] \cdot \alpha \approx 0.72\)
5. 关键要点总结
- GPR 提供预测的不确定性估计(方差),适用于小样本数据。
- 计算复杂度为 \(O(n^3)\)(求逆矩阵),需优化大规模数据。
- 核函数超参通常通过最大化边缘似然函数优化。