尽管高斯过程(GPs)为回归任务提供了一个简洁的框架,并内置了不确定性量化,但将其应用于分类需要应对一个重大挑战:似然函数不再是高斯分布。二元分类通常处理伯努利似然(输出 0 或 1),对于多类别问题,则处理类别似然。这些情况偏离了高斯先验与高斯似然之间方便的共轭关系,正是这种关系使得高斯过程回归能够解析可解。潜在函数方法解决高斯过程分类的常见做法是引入一个潜在函数,$f(\mathbf{x})$,它服从高斯过程先验: $$ f(\mathbf{x}) \sim \mathcal{GP}(m(\mathbf{x}), k(\mathbf{x}, \mathbf{x}')) $$ 其中,$m(\mathbf{x})$ 是均值函数(通常设为零),$k(\mathbf{x}, \mathbf{x}')$ 是协方差(核)函数,这与高斯过程回归中一样。这个潜在函数不是直接表示输出,而是通过一个连接函数(或广义线性模型术语中的逆连接函数,在此常被称为“压缩”函数)来生成类别标签的概率。对于二元分类($y \in {0, 1}$),一个常见选择是 Logistic Sigmoid 函数,$\sigma(z) = 1 / (1 + e^{-z})$: $$ p(y=1 | f(\mathbf{x})) = \sigma(f(\mathbf{x})) $$ 此外,也可以使用 Probit 连接函数(标准正态分布的累积密度函数)。完整模型涉及潜在函数 $f$ 上的高斯过程先验,以及在训练点 $\mathbf{X}$ 处给定潜在函数值 $\mathbf{f} = [f(\mathbf{x}_1), ..., f(\mathbf{x}N)]^T$ 时,观测标签 $\mathbf{y}$ 的非高斯似然: $$ p(\mathbf{y} | \mathbf{f}) = \prod{i=1}^N p(y_i | f(\mathbf{x}_i)) $$ 对于 Logistic Sigmoid 连接,此似然是伯努利概率的乘积:$p(y_i | f(\mathbf{x}_i)) = \sigma(f(\mathbf{x}_i))^{y_i} (1 - \sigma(f(\mathbf{x}_i)))^{1-y_i}$。难以处理的挑战主要难点出现于我们尝试计算潜在函数上的后验分布 $p(\mathbf{f} | \mathbf{y}, \mathbf{X})$ 时。根据贝叶斯定理: $$ p(\mathbf{f} | \mathbf{y}, \mathbf{X}) = \frac{p(\mathbf{y} | \mathbf{f}) p(\mathbf{f} | \mathbf{X})}{p(\mathbf{y} | \mathbf{X})} $$ 此处,$p(\mathbf{f} | \mathbf{X})$ 是高斯过程先验(多元高斯分布),但 $p(\mathbf{y} | \mathbf{f})$ 是非高斯分布(例如,伯努利分布的乘积)。高斯项与非高斯项的乘积通常不会得到高斯分布。这意味着后验 $p(\mathbf{f} | \mathbf{y}, \mathbf{X})$ 是非高斯分布且难以解析计算。此外,边际似然(或证据)$p(\mathbf{y} | \mathbf{X})$,其对于模型比较和超参数优化十分重要,也变得难以处理: $$ p(\mathbf{y} | \mathbf{X}) = \int p(\mathbf{y} | \mathbf{f}) p(\mathbf{f} | \mathbf{X}) d\mathbf{f} $$ 这个积分涉及对高维高斯先验与非高斯似然的乘积进行积分,这通常没有封闭形式的解。近似策略为了进行推断和预测,我们需要近似难以处理的后验 $p(\mathbf{f} | \mathbf{y}, \mathbf{X})$。最常用的方法是拉普拉斯近似(Laplace Approximation)和期望传播(Expectation Propagation, EP)。拉普拉斯近似拉普拉斯近似找到后验分布的众数,然后拟合一个以该众数为中心的高斯分布。这个高斯分布的协方差由众数处对数后验的曲率决定。找到众数: 我们使对数后验概率相对于 $\mathbf{f}$ 最大化: $$ \log p(\mathbf{f} | \mathbf{y}, \mathbf{X}) = \log p(\mathbf{y} | \mathbf{f}) + \log p(\mathbf{f} | \mathbf{X}) - \log p(\mathbf{y} | \mathbf{X}) $$ 由于 $\log p(\mathbf{y} | \mathbf{X})$ 相对于 $\mathbf{f}$ 是常数,我们最大化 $\Psi(\mathbf{f}) = \log p(\mathbf{y} | \mathbf{f}) + \log p(\mathbf{f} | \mathbf{X})$。这等同于找到 $\mathbf{f}$ 的最大后验(MAP)估计,表示为 $\mathbf{f}_{MAP}$。因为 $\log p(\mathbf{f} | \mathbf{X})$ 是 $\mathbf{f}$ 的二次函数(来自高斯先验),且 $\log p(\mathbf{y} | \mathbf{f})$ 通常是凹的(例如,对于 Logistic/Probit 似然),所以此优化问题通常是凸的,可以使用牛顿-拉普森等方法高效求解。拟合高斯: 我们用高斯分布 $q(\mathbf{f} | \mathbf{y}, \mathbf{X}) = \mathcal{N}(\mathbf{f} | \boldsymbol{\mu}{LA}, \boldsymbol{\Sigma}{LA})$ 来近似后验,其中:均值 $\boldsymbol{\mu}{LA} = \mathbf{f}{MAP}$。协方差 $\boldsymbol{\Sigma}{LA} = (-\nabla \nabla \Psi(\mathbf{f}{MAP}))^{-1}$。精度矩阵是对数后验在众数处评估的负海森矩阵。拉普拉斯近似提供了对真实后验 $p(\mathbf{f} | \mathbf{y}, \mathbf{X})$ 的高斯近似 $q(\mathbf{f})$,使得后续计算变得可行。然而,其准确性取决于真实后验由以其众数为中心的高斯分布表示的程度。如果后验显著偏斜或多峰,近似可能效果不佳。期望传播 (EP)期望传播(EP)提供了一种替代方法,通常更为准确。它旨在通过以特定方式最小化KL散度 $KL(p || q)$,用选定族(通常是高斯)中的分布 $q(\mathbf{f})$ 来近似后验 $p(\mathbf{f} | \mathbf{y}, \mathbf{X})$。EP 通过逐个纳入似然项,迭代改进近似来近似完整后验。它尝试将近似边际后验分布的某些矩(通常是均值和方差)与通过将先验与单个似然项结合而获得的分布的矩进行匹配。初始化: 从近似后验 $q(\mathbf{f}) \propto p(\mathbf{f})$ 开始。通常,$q(\mathbf{f})$ 被初始化为先验 $p(\mathbf{f})$。近似 $q(\mathbf{f})$ 通常以指数族形式保持,通常为高斯分布 $\mathcal{N}(\boldsymbol{\mu}{EP}, \boldsymbol{\Sigma}{EP})$。迭代改进: EP 通过考虑每个似然项 $p(y_i | f_i)$(称为“站点”)来迭代更新 $q(\mathbf{f})$ 的参数。对于每个站点 $i$:通过从 $q(\mathbf{f})$ 中移除站点 $i$ 当前近似的影响,形成一个“空腔分布”。通过将空腔分布与精确似然项 $p(y_i | f_i)$ 相乘,形成一个“倾斜分布”。这个倾斜分布通常是非高斯的。找到新的高斯站点近似的参数,使其最佳匹配倾斜分布的矩(均值和方差)。这通常涉及计算难以处理的积分,它们本身可能需要近似,特别是对于 Logistic 似然(尽管对于 Probit 似然是可处理的)。使用新的站点近似更新整体后验近似 $q(\mathbf{f})$。收敛: 重复迭代改进过程,直到 $q(\mathbf{f})$ 的参数收敛。EP 通常比拉普拉斯近似提供更灵活且通常更准确的近似,特别是在真实后验显著偏离众数周围的简单高斯形状时。然而,EP 计算量更大,其收敛性并非总能得到保证,并且矩匹配积分可能具有挑战性。进行预测一旦我们有了训练点潜在值后验的高斯近似,$q(\mathbf{f} | \mathbf{y}, \mathbf{X}) \approx \mathcal{N}(\boldsymbol{\mu}{approx}, \boldsymbol{\Sigma}{approx})$(其中“approx”指代拉普拉斯近似或期望传播),我们就可以推导出在新测试点 $\mathbf{x}*$ 处潜在函数值 $f*$ 的近似预测分布。与高斯过程回归类似,先验下 $\mathbf{f}$ 和 $f_$ 的联合分布是高斯分布。利用条件高斯分布的性质,近似预测分布 $q(f_ | \mathbf{y}, \mathbf{X})$ 也是高斯分布: $$ q(f_* | \mathbf{y}, \mathbf{X}) = \mathcal{N}(f_* | \mu_, \sigma_^2) $$ 其中 $\mu_$ 和 $\sigma_^2$ 取决于近似后验均值 $\boldsymbol{\mu}{approx}$、协方差 $\boldsymbol{\Sigma}{approx}$、涉及 $\mathbf{x}_*$ 的核函数评估,以及训练数据 $\mathbf{X}$。为了得到类别标签 $y_=1$ 的最终预测概率,我们需要在此近似预测分布上对似然 $\sigma(f_)$ 进行平均: $$ p(y_=1 | \mathbf{x}_, \mathbf{y}, \mathbf{X}) \approx \int \sigma(f_) q(f_ | \mathbf{y}, \mathbf{X}) df_* $$ 这个积分仍然通常难以处理(例如,对高斯分布上的 Logistic Sigmoid 函数进行积分)。常见的计算方法包括:数值积分(例如,高斯-埃尔米特积分)。蒙特卡洛估计:从 $q(f_* | \mathbf{y}, \mathbf{X})$ 中抽取 $f_*$ 值,通过 $\sigma(\cdot)$ 处理,然后对结果取平均。解析近似(对于 Probit 连接函数是可行的,此时积分涉及另一个高斯分布的 CDF)。得到的预测概率包含了由 $f_*$ 近似后验分布捕获的不确定性。{ "data": [ { "x": [-3, -2, -1, 0, 1, 2, 3], "y": [-2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 3.5], "type": "scatter", "mode": "markers", "marker": {"color": "#f03e3e", "size": 10}, "name": "类别 0 数据" }, { "x": [-2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 3.5], "y": [-1.8, -0.8, 0.2, 1.2, 2.2, 3.2, 4.2], "type": "scatter", "mode": "markers", "marker": {"color": "#1c7ed6", "size": 10}, "name": "类别 1 数据" }, { "x": [-4, -3, -2, -1, 0, 1, 2, 3, 4], "y": [-3.0, -2.0, -1.0, 0.0, 1.0, 2.0, 3.0, 4.0, 5.0], "type": "scatter", "mode": "lines", "line": {"color": "#495057", "dash": "dash"}, "name": "潜在函数 f(x) 均值" }, { "x": [-4, -3, -2, -1, 0, 1, 2, 3, 4, 4, 3, 2, 1, 0, -1, -2, -3, -4], "y": [-2.0, -1.2, -0.4, 0.4, 1.4, 2.4, 3.4, 4.4, 5.4, 4.6, 3.6, 2.6, 1.6, 0.6, -0.4, -1.2, -2.0, -2.6], "type": "scatter", "mode": "lines", "fill": "toself", "fillcolor": "rgba(134, 142, 150, 0.2)", "line": {"color": "rgba(0,0,0,0)"}, "name": "潜在不确定性" }, { "x": [-4, 4], "y": [0, 0], "type": "scatter", "mode": "lines", "line": {"color": "#adb5bd"}, "name": "决策阈值" } ], "layout": { "title": "高斯过程分类(一维)", "xaxis": { "title": "输入 x" }, "yaxis": { "title": "潜在函数 f(x)" }, "showlegend": true } }高斯过程一维分类结果的可视化示例。虚线表示近似后验潜在函数 $f(x)$ 的均值。阴影区域表示 $f(x)$ 的不确定性(例如,正负 2 倍标准差)。显示了来自两个类别的数据点。通过将 Sigmoid 函数应用于 $f(x)$ 来估计点属于类别 1 的概率。决策边界出现在均值潜在函数穿过零点(或 Sigmoid 输出为 0.5)的位置。 $f(x)$ 中的不确定性会转化为分类中的不确定性,尤其是在决策边界附近。超参数优化正如在高斯过程回归中一样,核超参数(例如,长度尺度、方差)和似然函数的任何参数都需要确定。这通常通过最大化对数边际似然 $\log p(\mathbf{y} | \mathbf{X}, \boldsymbol{\theta})$ 的近似值来完成,其中 $\boldsymbol{\theta}$ 表示超参数。拉普拉斯近似和期望传播都作为其近似过程的副产品提供了此量的估计。基于梯度的优化方法常用于找到使此近似边际似然最大化的超参数 $\boldsymbol{\theta}$。总结来说,高斯过程分类通过引入潜在函数并采用拉普拉斯或期望传播等近似技术来处理由此产生的解析不可处理性,从而将高斯过程的核心思想扩展到具有非高斯似然的场景。这些方法使我们能够获得近似后验分布和预测概率,即使在分类环境中也能保持贝叶斯方法量化不确定性的能力。拉普拉斯与期望传播之间的选择通常涉及计算成本与后验近似准确性之间的权衡。