高斯过程回归(Gaussian Process Regression)的预测分布计算过程
题目描述
高斯过程回归(GPR)是一种非参数贝叶斯方法,用于解决回归问题。其核心思想是将函数视为随机变量的集合,并通过高斯过程先验对函数进行建模。在给定训练数据后,GPR通过贝叶斯推断计算预测分布,得到新输入点的后验预测均值(预测函数值)和方差(不确定性度量)。本题要求详细讲解GPR预测分布的计算过程,包括先验设置、后验推导以及核函数的作用。
解题过程
- 高斯过程先验定义
- 高斯过程(GP)由均值函数 \(m(\mathbf{x})\) 和协方差函数(核函数) \(k(\mathbf{x}, \mathbf{x}')\) 完全指定,记为:
\[ f(\mathbf{x}) \sim \mathcal{GP}(m(\mathbf{x}), k(\mathbf{x}, \mathbf{x}')) \]
- 通常假设先验均值为零(\(m(\mathbf{x}) = 0\)),简化计算而不失一般性。
- 核函数 \(k\) 衡量输入点之间的相似性,例如径向基函数(RBF)核:
\[ k(\mathbf{x}_i, \mathbf{x}_j) = \sigma_f^2 \exp\left(-\frac{\|\mathbf{x}_i - \mathbf{x}_j\|^2}{2l^2}\right) \]
其中 $ \sigma_f^2 $ 为信号方差,$ l $ 为长度尺度。
- 训练数据与噪声假设
- 设训练集为 \(\mathbf{X} = [\mathbf{x}_1, \dots, \mathbf{x}_n]^T\),观测目标值为 \(\mathbf{y} = [y_1, \dots, y_n]^T\)。
- 观测模型包含加性高斯噪声:
\[ y_i = f(\mathbf{x}_i) + \epsilon_i, \quad \epsilon_i \sim \mathcal{N}(0, \sigma_n^2) \]
- 训练数据的联合分布为:
\[ \mathbf{y} \sim \mathcal{N}(\mathbf{0}, K(\mathbf{X}, \mathbf{X}) + \sigma_n^2 I) \]
其中 $ K(\mathbf{X}, \mathbf{X}) $ 是核函数计算的 $ n \times n $ 协方差矩阵,$ K_{ij} = k(\mathbf{x}_i, \mathbf{x}_j) $。
- 预测分布推导
- 目标:给定新输入点 \(\mathbf{x}_*\),预测其函数值 \(f_*\) 的分布 \(p(f_* | \mathbf{X}, \mathbf{y}, \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}_*) $ 是训练点与测试点间的 $ n \times 1 $ 协方差向量。
- 利用多元高斯分布的条件分布公式,后验预测分布为高斯分布:
\[ p(f_* | \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} \]
表示对 $ f(\mathbf{x}_*) $ 的贝叶斯估计,是训练目标值的线性组合。
- **预测方差**:
\[ \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}_*) \]
衡量预测的不确定性,在训练数据密集的区域方差较小。
-
计算步骤与核函数的作用
- 步骤1:计算协方差矩阵 \(K(\mathbf{X}, \mathbf{X})\) 和向量 \(K(\mathbf{X}, \mathbf{x}_*)\)。
- 步骤2:求解线性系统 \([K(\mathbf{X}, \mathbf{X}) + \sigma_n^2 I]^{-1} \mathbf{y}\)(通常通过Cholesky分解避免直接求逆)。
- 步骤3:将结果代入公式计算 \(\mu_*\) 和 \(\sigma_*^2\)。
- 核函数的作用:
- 决定函数的平滑性和周期性等性质。
- 控制预测均值的插值行为:相似输入产生相似输出。
- 影响不确定性估计,如RBF核在远离训练数据处方差趋近 \(k(\mathbf{x}_*, \mathbf{x}_*) = \sigma_f^2\)。
-
扩展:处理非零均值函数
- 若先验均值非零(如线性函数 \(m(\mathbf{x}) = \mathbf{x}^T \beta\)),预测公式调整为:
\[ \mu_* = m(\mathbf{x}_*) + K(\mathbf{x}_*, \mathbf{X}) [K(\mathbf{X}, \mathbf{X}) + \sigma_n^2 I]^{-1} (\mathbf{y} - m(\mathbf{X})) \]
方差计算不变。