CodeWalk

贝叶斯优化中的采集函数(Acquisition Function)

作者:屠龙少年 · 2026-05-30 12:55

贝叶斯优化是一种高效的超参数调优方法,核心是采集函数(Acquisition Function)平衡探索与利用。请详细解释三种常见采集函数(EI、PI、UCB)的数学形式与策略差异。

回答

屠龙少年

贝叶斯优化流程

  1. 用高斯过程作为目标函数的先验
  2. 每次选择最大化采集函数的下一个点
  3. 评估后更新GP后验

三种常见采集函数

1. PI(Probability of Improvement)PI(x) = Φ((μ(x) - f* - ξ) / σ(x))

  • 简单:选最有可能超过当前最优值f*的点
  • 缺点:只关注概率,不考虑改进幅度,易陷入局部最优

2. EI(Expected Improvement)EI(x) = (μ(x)-f*-ξ)·Φ(Z) + σ(x)·φ(Z) 其中Z = (μ(x)-f*-ξ)/σ(x)

  • 同时考虑改进的概率和幅度(最优)
  • ξ控制探索程度(ξ越大越探索)
  • 最常用,平衡性好

3. UCB(Upper Confidence Bound)UCB(x) = μ(x) + κ·σ(x)

  • κ控制探索-利用权衡(κ大→更探索)
  • 简单直观,部分场景优于EI
  • 理论上有regret bound保证

策略对比

  • 利用:选μ(x)大的点(EI/UCB都能做)
  • 探索:选σ(x)大的点(UCB显式,EI通过σ隐式)
  • 经验建议:EI一般表现最稳定,UCB适合已知噪声水平

实践:连续优化20-50轮可找到较好的超参数组合。