高斯过程分类(Gaussian Process Classification)的拉普拉斯近似推断过程
字数 3803 2025-11-05 23:45:49

高斯过程分类(Gaussian Process Classification)的拉普拉斯近似推断过程

题目描述
高斯过程分类(GPC)是一种基于贝叶斯框架的非参数概率模型,用于解决二分类问题(如预测样本属于类别+1或-1的概率)。与高斯过程回归(GPR)直接对连续函数建模不同,GPC需将高斯过程先验通过非线性函数(如sigmoid)映射到[0,1]区间,以表示概率。但由于非线性映射导致后验分布无法直接计算,需用近似推断方法。拉普拉斯近似(Laplace Approximation)是其中一种经典方法,其核心思想:用高斯分布近似真实后验分布,通过寻找后验的众数(模式)并基于该点曲率构造近似分布。本题要求详细解释拉普拉斯近似在GPC中的推导步骤。

解题过程

  1. 问题定义与先验设置

    • 输入训练集 \(\{(\mathbf{x}_i, y_i)\}_{i=1}^n\),其中 \(y_i \in \{-1, +1\}\)。引入隐变量 \(\mathbf{f} = [f_1, \dots, f_n]^\top\),每个 \(f_i\) 对应 \(\mathbf{x}_i\) 的潜在函数值。
    • 假设隐变量 \(\mathbf{f}\) 服从高斯过程先验:\(\mathbf{f} \sim \mathcal{N}(\mathbf{0}, \mathbf{K})\),其中 \(\mathbf{K}\) 是核矩阵(如RBF核),\(K_{ij} = k(\mathbf{x}_i, \mathbf{x}_j)\)
    • 通过sigmoid函数(如logistic函数 \(\sigma(z) = 1/(1+e^{-z})\))将 \(f_i\) 映射为概率:\(p(y_i = +1 | f_i) = \sigma(f_i)\)。分类概率可统一写为 \(p(y_i | f_i) = \sigma(y_i f_i)\)
  2. 后验分布与近似目标

    • 后验分布 \(p(\mathbf{f} | \mathbf{X}, \mathbf{y}) \propto p(\mathbf{y} | \mathbf{f}) p(\mathbf{f} | \mathbf{X})\),其中似然项 \(p(\mathbf{y} | \mathbf{f}) = \prod_{i=1}^n \sigma(y_i f_i)\)。由于似然非高斯,后验无法解析求解。
    • 拉普拉斯近似目标:用一个高斯分布 \(q(\mathbf{f} | \mathbf{X}, \mathbf{y}) = \mathcal{N}(\mathbf{f} | \hat{\mathbf{f}}, \mathbf{A}^{-1})\) 近似真实后验,其中 \(\hat{\mathbf{f}}\) 是后验众数,\(\mathbf{A}\) 是负Hessian矩阵。
  3. 寻找后验众数 \(\hat{\mathbf{f}}\)

    • 后验的对数形式:\(\Psi(\mathbf{f}) = \log p(\mathbf{y} | \mathbf{f}) + \log p(\mathbf{f} | \mathbf{X}) + \text{const}\)
      展开为:

\[ \Psi(\mathbf{f}) = \sum_{i=1}^n \log \sigma(y_i f_i) - \frac{1}{2} \mathbf{f}^\top \mathbf{K}^{-1} \mathbf{f} - \frac{1}{2} \log |\mathbf{K}| + \text{const}. \]

  • 众数 \(\hat{\mathbf{f}}\) 需满足梯度 \(\nabla \Psi(\mathbf{f}) = 0\)。计算梯度:

\[ \nabla \Psi(\mathbf{f}) = \nabla \log p(\mathbf{y} | \mathbf{f}) - \mathbf{K}^{-1} \mathbf{f}, \]

 其中 $ \nabla \log p(\mathbf{y} | \mathbf{f}) = \mathbf{y} \odot (\mathbf{1} - \boldsymbol{\sigma}(\mathbf{y} \odot \mathbf{f})) $,$ \boldsymbol{\sigma} $ 表示逐元素sigmoid函数,$ \odot $ 为逐元素乘。  
  • 使用牛顿-拉弗森法迭代求解:

\[ \mathbf{f}_{\text{new}} = \mathbf{f} - (\nabla^2 \Psi)^{-1} \nabla \Psi, \]

 其中Hessian矩阵 $ \nabla^2 \Psi = -\mathbf{W} - \mathbf{K}^{-1} $,$ \mathbf{W} $ 是对角矩阵,元素 $ W_{ii} = -\frac{\partial^2 \log p(y_i | f_i)}{\partial f_i^2} = \sigma(f_i)(1-\sigma(f_i)) $(当 $ y_i=1 $ 时)。迭代至收敛得 $ \hat{\mathbf{f}} $.
  1. 构造高斯近似分布

    • 在众数 \(\hat{\mathbf{f}}\) 处,Hessian矩阵 \(\mathbf{A} = -\nabla^2 \Psi(\mathbf{f})|_{\mathbf{f}=\hat{\mathbf{f}}} = \mathbf{W} + \mathbf{K}^{-1}\),其中 \(\mathbf{W}\)\(\hat{\mathbf{f}}\) 计算。
    • 近似后验为 \(q(\mathbf{f} | \mathbf{X}, \mathbf{y}) = \mathcal{N}(\hat{\mathbf{f}}, \mathbf{A}^{-1})\)。利用矩阵恒等式可写协方差为 \(\mathbf{A}^{-1} = (\mathbf{K}^{-1} + \mathbf{W})^{-1} = \mathbf{K} - \mathbf{K}(\mathbf{K} + \mathbf{W}^{-1})^{-1} \mathbf{K}\).
  2. 预测新样本

    • 对新样本 \(\mathbf{x}_*\),预测其隐变量 \(f_*\) 的后验:

\[ q(f_* | \mathbf{X}, \mathbf{y}, \mathbf{x}_*) = \int p(f_* | \mathbf{X}, \mathbf{x}_*, \mathbf{f}) q(\mathbf{f} | \mathbf{X}, \mathbf{y}) d\mathbf{f}, \]

 其中 $ p(f_* | \mathbf{X}, \mathbf{x}_*, \mathbf{f}) = \mathcal{N}(\mathbf{k}_*^\top \mathbf{K}^{-1} \mathbf{f}, k_{**} - \mathbf{k}_*^\top \mathbf{K}^{-1} \mathbf{k}_*) $,$ \mathbf{k}_* = [k(\mathbf{x}_*, \mathbf{x}_1), \dots, k(\mathbf{x}_*, \mathbf{x}_n)]^\top $,$ k_{**} = k(\mathbf{x}_*, \mathbf{x}_*) $.  
  • 由于积分涉及高斯分布,结果仍为高斯:\(q(f_* | \mathbf{X}, \mathbf{y}, \mathbf{x}_*) = \mathcal{N}(\mu_*, \sigma_*^2)\),其中

\[ \mu_* = \mathbf{k}_*^\top \mathbf{K}^{-1} \hat{\mathbf{f}}, \quad \sigma_*^2 = k_{**} - \mathbf{k}_*^\top (\mathbf{K} + \mathbf{W}^{-1})^{-1} \mathbf{k}_*. \]

  • 最终分类概率需积分:\(p(y_* = +1 | \mathbf{X}, \mathbf{y}, \mathbf{x}_*) = \int \sigma(f_*) q(f_* | \mathbf{X}, \mathbf{y}, \mathbf{x}_*) df_*\)。此积分无闭式解,但可借助probit函数近似或数值积分(如高斯-埃尔米特积分)计算。

关键点总结
拉普拉斯近似通过将非高斯后验在众数处用高斯分布逼近,将推断转化为优化问题(找众数)和矩阵运算。其精度取决于后验分布的单峰性与对称性,适用于中等规模数据集。

高斯过程分类(Gaussian Process Classification)的拉普拉斯近似推断过程 题目描述 高斯过程分类(GPC)是一种基于贝叶斯框架的非参数概率模型,用于解决二分类问题(如预测样本属于类别+1或-1的概率)。与高斯过程回归(GPR)直接对连续函数建模不同,GPC需将高斯过程先验通过非线性函数(如sigmoid)映射到[ 0,1 ]区间,以表示概率。但由于非线性映射导致后验分布无法直接计算,需用近似推断方法。拉普拉斯近似(Laplace Approximation)是其中一种经典方法,其核心思想:用高斯分布近似真实后验分布,通过寻找后验的众数(模式)并基于该点曲率构造近似分布。本题要求详细解释拉普拉斯近似在GPC中的推导步骤。 解题过程 问题定义与先验设置 输入训练集 \( \{(\mathbf{x} i, y_ i)\} {i=1}^n \),其中 \( y_ i \in \{-1, +1\} \)。引入隐变量 \( \mathbf{f} = [ f_ 1, \dots, f_ n]^\top \),每个 \( f_ i \) 对应 \( \mathbf{x}_ i \) 的潜在函数值。 假设隐变量 \( \mathbf{f} \) 服从高斯过程先验:\( \mathbf{f} \sim \mathcal{N}(\mathbf{0}, \mathbf{K}) \),其中 \( \mathbf{K} \) 是核矩阵(如RBF核),\( K_ {ij} = k(\mathbf{x}_ i, \mathbf{x}_ j) \)。 通过sigmoid函数(如logistic函数 \( \sigma(z) = 1/(1+e^{-z}) \))将 \( f_ i \) 映射为概率:\( p(y_ i = +1 | f_ i) = \sigma(f_ i) \)。分类概率可统一写为 \( p(y_ i | f_ i) = \sigma(y_ i f_ i) \)。 后验分布与近似目标 后验分布 \( p(\mathbf{f} | \mathbf{X}, \mathbf{y}) \propto p(\mathbf{y} | \mathbf{f}) p(\mathbf{f} | \mathbf{X}) \),其中似然项 \( p(\mathbf{y} | \mathbf{f}) = \prod_ {i=1}^n \sigma(y_ i f_ i) \)。由于似然非高斯,后验无法解析求解。 拉普拉斯近似目标:用一个高斯分布 \( q(\mathbf{f} | \mathbf{X}, \mathbf{y}) = \mathcal{N}(\mathbf{f} | \hat{\mathbf{f}}, \mathbf{A}^{-1}) \) 近似真实后验,其中 \( \hat{\mathbf{f}} \) 是后验众数,\( \mathbf{A} \) 是负Hessian矩阵。 寻找后验众数 \( \hat{\mathbf{f}} \) 后验的对数形式:\( \Psi(\mathbf{f}) = \log p(\mathbf{y} | \mathbf{f}) + \log p(\mathbf{f} | \mathbf{X}) + \text{const} \)。 展开为: \[ \Psi(\mathbf{f}) = \sum_ {i=1}^n \log \sigma(y_ i f_ i) - \frac{1}{2} \mathbf{f}^\top \mathbf{K}^{-1} \mathbf{f} - \frac{1}{2} \log |\mathbf{K}| + \text{const}. \] 众数 \( \hat{\mathbf{f}} \) 需满足梯度 \( \nabla \Psi(\mathbf{f}) = 0 \)。计算梯度: \[ \nabla \Psi(\mathbf{f}) = \nabla \log p(\mathbf{y} | \mathbf{f}) - \mathbf{K}^{-1} \mathbf{f}, \] 其中 \( \nabla \log p(\mathbf{y} | \mathbf{f}) = \mathbf{y} \odot (\mathbf{1} - \boldsymbol{\sigma}(\mathbf{y} \odot \mathbf{f})) \),\( \boldsymbol{\sigma} \) 表示逐元素sigmoid函数,\( \odot \) 为逐元素乘。 使用牛顿-拉弗森法迭代求解: \[ \mathbf{f} {\text{new}} = \mathbf{f} - (\nabla^2 \Psi)^{-1} \nabla \Psi, \] 其中Hessian矩阵 \( \nabla^2 \Psi = -\mathbf{W} - \mathbf{K}^{-1} \),\( \mathbf{W} \) 是对角矩阵,元素 \( W {ii} = -\frac{\partial^2 \log p(y_ i | f_ i)}{\partial f_ i^2} = \sigma(f_ i)(1-\sigma(f_ i)) \)(当 \( y_ i=1 \) 时)。迭代至收敛得 \( \hat{\mathbf{f}} \). 构造高斯近似分布 在众数 \( \hat{\mathbf{f}} \) 处,Hessian矩阵 \( \mathbf{A} = -\nabla^2 \Psi(\mathbf{f})|_ {\mathbf{f}=\hat{\mathbf{f}}} = \mathbf{W} + \mathbf{K}^{-1} \),其中 \( \mathbf{W} \) 由 \( \hat{\mathbf{f}} \) 计算。 近似后验为 \( q(\mathbf{f} | \mathbf{X}, \mathbf{y}) = \mathcal{N}(\hat{\mathbf{f}}, \mathbf{A}^{-1}) \)。利用矩阵恒等式可写协方差为 \( \mathbf{A}^{-1} = (\mathbf{K}^{-1} + \mathbf{W})^{-1} = \mathbf{K} - \mathbf{K}(\mathbf{K} + \mathbf{W}^{-1})^{-1} \mathbf{K} \). 预测新样本 对新样本 \( \mathbf{x} * \),预测其隐变量 \( f * \) 的后验: \[ q(f_* | \mathbf{X}, \mathbf{y}, \mathbf{x} * ) = \int p(f * | \mathbf{X}, \mathbf{x} * , \mathbf{f}) q(\mathbf{f} | \mathbf{X}, \mathbf{y}) d\mathbf{f}, \] 其中 \( p(f * | \mathbf{X}, \mathbf{x} * , \mathbf{f}) = \mathcal{N}(\mathbf{k} ^\top \mathbf{K}^{-1} \mathbf{f}, k_ {** } - \mathbf{k}_ ^\top \mathbf{K}^{-1} \mathbf{k} * ) \),\( \mathbf{k} * = [ k(\mathbf{x} , \mathbf{x} 1), \dots, k(\mathbf{x} , \mathbf{x} n)]^\top \),\( k {** } = k(\mathbf{x} , \mathbf{x}_ ) \). 由于积分涉及高斯分布,结果仍为高斯:\( q(f_* | \mathbf{X}, \mathbf{y}, \mathbf{x} * ) = \mathcal{N}(\mu , \sigma_ ^2) \),其中 \[ \mu_* = \mathbf{k} * ^\top \mathbf{K}^{-1} \hat{\mathbf{f}}, \quad \sigma ^2 = k_ {** } - \mathbf{k}_ ^\top (\mathbf{K} + \mathbf{W}^{-1})^{-1} \mathbf{k}_ * . \] 最终分类概率需积分:\( p(y_* = +1 | \mathbf{X}, \mathbf{y}, \mathbf{x} * ) = \int \sigma(f ) q(f_ | \mathbf{X}, \mathbf{y}, \mathbf{x} * ) df * \)。此积分无闭式解,但可借助probit函数近似或数值积分(如高斯-埃尔米特积分)计算。 关键点总结 拉普拉斯近似通过将非高斯后验在众数处用高斯分布逼近,将推断转化为优化问题(找众数)和矩阵运算。其精度取决于后验分布的单峰性与对称性,适用于中等规模数据集。