4. 高斯过程回归实战
高斯过程回归(GPR)是贝叶斯优化最常用的代理模型。它之所以适合实验设计,不是因为它“预测得准”,而是因为它同时给出两件事:对未知点的预测均值,以及对这次预测有多不确定的预测方差。前者告诉我们“哪里可能好”,后者告诉我们“哪里还没探索过”。理解这两者的分工,是理解贝叶斯优化采集函数的前提。
一、核函数:把“相似性”写进模型
GPR 的核心假设是:相近的输入点,其输出也倾向于相近。这个“相近”由核函数(协方差函数)定义。工程中最常用的是平方指数核(RBF)与 Matérn 核。
RBF 核形式为 k(x, x') = σ²·exp(−‖x−x'‖²/(2ℓ²))。其中 ℓ 是长度尺度,控制“相关性随距离衰减的快慢”;σ² 是信号方差,控制函数整体波动幅度。ℓ 越大,函数越平滑、变化越缓慢;ℓ 越小,函数越允许快速起伏。
Matérn 核(常用 ν=5/2)形式更复杂,但它允许函数具有一定“粗糙度”,在物理实验、仿真响应面中往往比 RBF 更贴近真实。经验上:响应平滑、噪声小,用 RBF;响应有拐点、局部突变或噪声较大,用 Matérn 5/2 更稳。
核函数选择不是“选一个最好的”,而是把对实验对象的先验认识写进模型。若你已知某参数在低区间几乎无影响、在高区间影响剧烈,就不应使用各向同性的单一 ℓ,而应考虑各维不同长度尺度的 ARD(自动相关性判定)核。
二、超参数学习:让数据自己说话
核函数里的 ℓ、σ²,以及观测噪声 σ_n²,统称超参数。它们不靠人工拍定,而是通过最大化对数边际似然(log marginal likelihood)来学习:
log p(y|X,θ) = −½ yᵀ(K+σ_n²I)⁻¹y − ½ log|K+σ_n²I| − (n/2)log(2π)
这个式子由两项构成:第一项奖励“拟合得好”,第二项惩罚“模型过于复杂”。因此超参数学习天然带有防过拟合的机制。实操中通常对 ℓ 和 σ² 取对数后做梯度优化,初值可取 ℓ 为各维输入范围的 1/4~1/2,σ_n² 取响应方差的 1%~10%。
需要提醒:如果实验点很少(如少于 5 个),超参数学习容易不稳定,此时可先固定 ℓ,仅学噪声;待点数增加后再放开全部超参数。
三、预测均值与方差:实验设计中的“利用”与“探索”
给定新点 x*,GPR 给出预测分布 N(μ(x*), σ²(x*))。μ 是均值预测,σ² 是预测方差。在实验设计中:
- μ 高:该点附近已有实验表明响应可能好,值得“利用”。
- σ² 大:该点附近实验稀疏或距离已有样本远,信息不足,值得“探索”。
- μ 高且 σ² 大:最理想的下一实验点,采集函数(如 EI、UCB)会优先选择。
因此,GPR 不只是拟合曲线,它输出的方差图就是一张“实验空白地图”。贝叶斯优化的每一步,本质上是在 μ 与 σ² 之间做权衡。
四、一个可复现的实操示例
假设我们要优化一个化学反应的产率 y(%),控制变量为温度 x(60~120 ℃)。已做 4 次实验:
| 实验号 | 温度 x / ℃ | 产率 y / % |
|---|---|---|
| 1 | 65 | 52 |
| 2 | 80 | 71 |
| 3 | 100 | 68 |
| 4 | 115 | 55 |
用 GPR 拟合(RBF 核,初值 ℓ=15,σ²=100,σ_n²=4),超参数学习后得到 ℓ≈12、σ²≈95、σ_n²≈3。此时在 x*=90 ℃ 处,模型给出 μ≈73%、σ≈2.5%;而在 x*=70 ℃ 与 x*=110 ℃ 之间,由于样本较密,σ 较小;在 x*=60 ℃ 与 x*=120 ℃ 两端,σ 明显增大,说明边界区域信息不足。
若采用 EI 采集函数,下一实验点很可能落在 85~95 ℃ 之间(μ 高且 σ 适中),而不是两端(σ 大但 μ 低)。这正是 GPR 方差在实验设计中的直接价值:它把“该去哪里做实验”变成一个可计算的优化问题。
五、常见误区与判断依据
- 只看 μ 不看 σ²:会陷入局部最优,错过真正更优的区域。
- σ_n² 设得过小:模型会强行穿过每个实验点,方差带在样本点处收缩到零,导致过度自信。
- ℓ 设得过大:预测过于平滑,方差带过宽,采集函数难以区分候选点。
- 用 GPR 外推:在训练数据范围外,GPR 会迅速回归到先验均值,方差也会增大,此时预测不可信。
判断 GPR 是否可用,可以看两点:一是预测均值是否穿过或贴近已测点;二是方差带在样本稀疏处是否明显变宽。若这两点都满足,说明模型结构合理,可以进入贝叶斯优化的采集与迭代阶段。