2. 基本概念#
备注
本页介绍贝叶斯优化的基本概念以及 Bgolearn 如何实现它们。
2.1. 什么是贝叶斯优化?#
贝叶斯优化是一种强大的技术,用于优化评估成本高昂的函数。它在以下情况下特别有用:
函数评估成本高昂(实验、模拟)
导数不可用(黑盒函数)
测量中存在噪声
评估次数有限(预算有限)
核心思想
贝叶斯优化不是随机采样或使用网格搜索,而是构建函数的概率模型,并使用它智能地决定下一步在哪里采样。
2.2. 核心组件#
2.2.1. 1. 代理模型#
代理模型使用先前的观测值来近似昂贵的函数。
高斯过程 (Gaussian Process, GP) 是最常见的选择:
同时提供均值预测和不确定性估计
自然地处理观测中的噪声
灵活且适用于许多问题
# Example: Fitting a GP model in Bgolearn
from Bgolearn import BGOsampling
optimizer = BGOsampling.Bgolearn()
model = optimizer.fit(
data_matrix=X_train,
Measured_response=y_train,
virtual_samples=X_candidates
)
# Get predictions with uncertainty
mean_pred = model.virtual_samples_mean
std_pred = model.virtual_samples_std
2.2.2. 2. 采集函数#
采集函数通过平衡以下两者来决定下一步在哪里采样:
利用 (Exploitation):在模型预测良好值的地方采样
探索 (Exploration):在不确定性高的地方采样
Bgolearn 中的常见采集函数:
函数 |
描述 |
最适合 |
|---|---|---|
EI (Expected Improvement) |
相对于当前最佳值的期望提升 |
通用目的,平衡探索/利用 |
UCB (Upper Confidence Bound) |
带置信度的乐观估计 |
噪声函数,侧重探索 |
PI (Probability of Improvement) |
改进当前最佳值的概率 |
保守,侧重利用 |
PES (Predictive Entropy Search) |
信息论方法 |
复杂函数,有限预算 |
2.2.3. 3. 优化循环#
贝叶斯优化过程遵循以下迭代循环:
1. 初始数据
↓
2. 拟合代理模型
↓
3. 优化采集函数
↓
4. 在新点评估
↓
5. 更新数据集
↓
6. 停止准则?
├─ 否 → 返回步骤 2
└─ 是 → 返回最佳解决方案
2.3. 数学基础#
2.3.1. 高斯过程#
高斯过程由以下定义:
均值函数:\(m(x) = \mathbb{E}[f(x)]\)
协方差函数:\(k(x, x') = \text{Cov}[f(x), f(x')]\)
对于任何有限点集,函数值遵循多元高斯分布:
其中 \(\mu_i = m(x_i)\) 和 \(K_{ij} = k(x_i, x_j)\)。
2.3.2. 期望提升#
期望提升采集函数为:
其中 \(f^*\) 是当前观测到的最佳值。
对于均值为 \(\mu(x)\) 和方差为 \(\sigma^2(x)\) 的 GP 后验:
其中 \(Z = \frac{\mu(x) - f^*}{\sigma(x)}\),\(\Phi\) 是累积分布函数,\(\phi\) 是标准正态分布的概率密度函数。
2.4. 实际考虑#
2.4.1. 何时使用贝叶斯优化#
✅ 适用于:
昂贵的函数评估(每次评估 >1 秒)
连续或混合变量空间
噪声观测
有限的评估预算(10-1000 次评估)
无导数的黑盒函数
❌ 不太适合:
非常便宜的函数(使用基于梯度的方法)
非常高的维度(>20 个变量)
离散组合问题
具有已知结构的函数
2.4.2. 选择采集函数#
快速指南
从 EI 开始:良好的通用选择
对噪声函数使用 UCB:更好的探索
尝试 PI 进行利用:当您想要保守时
考虑 PES 用于复杂函数:信息论方法
2.4.3. 处理约束#
Bgolearn 支持各种约束类型:
盒约束:变量的简单边界
线性约束:线性等式/不等式约束
非线性约束:一般约束函数
分类变量:离散选择
# Example: Box constraints
bounds = {
'temperature': (100, 500), # Temperature range
'pressure': (1, 10), # Pressure range
'composition': (0, 1) # Composition fraction
}
2.5. 下一步#
现在您了解了基础知识:
了解采集函数:采集函数指南
参见
有关更深入的数学背景,请参阅:
Mockus et al., The application of Bayesian methods for seeking the extremum关于高斯过程Zhan et al.,Expected improvement for expensive optimization: a review关于原始 EI 论文