Bayesian Optimization:BoTorch、Optuna 与实验设计
一句话:
Bayesian Optimization / BoTorch / Optuna / Experiment Design 解读
面向对象: AI Platform PM / EvalOps Lead / Product Architect / Experimentation Lead。 核心问题: AI 产品中很多参数调优很昂贵: 模型组合、RAG chunk、reranker、prompt、阈值、价格、优惠、容量和发布策略。Bayesian Optimization 用少量实验更聪明地寻找高价值配置,但必须和安全约束、实验预算、可解释决策和治理连接。 学习目标: 理解 Gaussian Process surrogate、acquisition functions、EI/UCB/PI、BoTorch、Optuna、HPO、multi-objective/constrained BO,并映射到 AI 平台和金融零售实验设计。
Source Anchors
| Source | Link | 用途 |
|---|---|---|
| Practical Bayesian Optimization of ML Algorithms | https://arxiv.org/abs/1206.2944 | 理解用 GP 建模昂贵实验目标,并用 acquisition function 高效选择下一组参数 |
| BoTorch | https://botorch.org/ | 参考可编程 Bayesian Optimization、GPyTorch、MC acquisition 和 PyTorch 集成 |
| BoTorch paper | https://arxiv.org/abs/1910.06403 | 理解 BoTorch 的 Monte Carlo acquisition、模块化和实验设计定位 |
| Optuna docs | https://optuna.readthedocs.io/en/stable/index.html | 参考 study/trial、HPO、pruning 和工程化调参流程 |
| NIST AI RMF | https://www.nist.gov/itl/ai-risk-management-framework | 把自动实验和参数优化纳入治理、监控和风险控制 |
一句话:
Bayesian Optimization 是“昂贵实验的决策系统”: 用历史实验结果建立 surrogate model,再用 acquisition function 决定下一次最值得尝试的配置。
1. 为什么 Grid Search 不够
AI 系统的参数空间通常很大:
- RAG chunk size、overlap、top-k、reranker threshold。
- Prompt 模板、system instruction、tool selection policy。
- 模型路由阈值、cache threshold、fallback 策略。
- 信贷阈值、欺诈强认证阈值、催收触达节奏。
- 价格折扣、优惠券金额、营销频控。
- 服务器容量、批处理窗口、GPU 配额。
Grid search 的问题:
- 实验成本高。
- 不利用历史实验信息。
- 高维空间下组合爆炸。
- 不表达实验不确定性。
- 很难同时优化质量、成本、风险、延迟。
Bayesian Optimization 适合:
目标函数昂贵 + 参数可控 + 每次实验可记录 + 需要样本效率
2. Surrogate Model
BO 不直接知道真实目标函数,只能通过实验观察:
configuration -> metric outcome
Surrogate model 用来近似这个未知函数。经典选择是 Gaussian Process:
| 能力 | 产品意义 |
|---|---|
| Mean estimate | 当前认为该配置效果如何 |
| Uncertainty estimate | 哪些区域还不确定 |
| Kernel / prior | 对参数平滑性和相似性的假设 |
| Posterior update | 每次实验后更新认知 |
产品经理不需要推导 GP,但要理解: surrogate 的不确定性是 BO 能做探索的关键。
3. Acquisition Function
Acquisition function 决定下一次试哪里。
| Acquisition | 直觉 | 适用 |
|---|---|---|
| Expected Improvement | 找可能超过当前最好结果的配置 | 单目标实验 baseline |
| Upper Confidence Bound | 均值 + 不确定性奖励 | 需要显式探索/利用权衡 |
| Probability of Improvement | 找超过阈值概率高的配置 | 有明确达标线 |
| Knowledge Gradient | 追求信息价值 | 复杂/昂贵实验 |
产品上要把 acquisition 解释成:
下一个实验不是随便试,而是在“可能好”和“值得学”之间做权衡。
4. AI 平台中的 BO 应用
RAG 调优
参数:
- chunk size。
- chunk overlap。
- embedding model。
- top-k。
- reranker model。
- citation threshold。
目标:
- faithfulness。
- retrieval recall。
- citation accuracy。
- latency。
- cost per answer。
约束:
- PII leakage = 0。
- forbidden answer rate below threshold。
- latency P95 under SLO。
Prompt / Agent 策略调优
参数:
- prompt template。
- tool retry count。
- model route。
- refusal threshold。
- human escalation threshold。
目标:
- task success。
- safety pass。
- cost。
- escalation appropriateness。
金融零售业务参数调优
参数:
- offer amount。
- contact frequency。
- fraud step-up threshold。
- queue priority weights。
- discount depth。
目标:
- risk-adjusted revenue。
- complaint rate。
- loss reduction。
- margin。
5. Multi-Objective 和 Constrained BO
企业 AI 很少单目标优化。
| 目标 | 同时存在的约束 |
|---|---|
| 提高准确率 | 成本不能上升太多 |
| 降低延迟 | 安全指标不能恶化 |
| 提高转化 | 投诉和公平性不能恶化 |
| 降低欺诈损失 | 误拦和客户摩擦受控 |
设计方式:
- 用 Pareto frontier 展示 tradeoff。
- 把合规和安全设为硬约束。
- 用 constrained BO 只探索可接受区域。
- 对高风险配置要求人工审批。
- 在实验预算内优先学习不确定且高价值的区域。
6. Experiment Optimization Architecture
experiment registry
-> parameter space definition
-> objective and constraint metrics
-> Bayesian optimizer
-> experiment runner
-> metric evaluator
-> safety gate
-> decision memo
-> next-trial recommendation
关键组件:
| 组件 | 职责 |
|---|---|
| Parameter registry | 定义参数范围、类型、禁止组合 |
| Metric contract | 定义主指标、护栏指标、成本和风险指标 |
| BO service | BoTorch/Optuna/Ax 等生成下一组实验 |
| Experiment runner | 离线 eval、shadow、A/B、仿真或批处理实验 |
| Safety gate | 阻断违反安全、合规、成本或 SLO 的配置 |
| Results store | 保存配置、指标、版本、环境和证据 |
| Decision UI | 展示 Pareto frontier、uncertainty、推荐配置 |
7. 治理风险
自动调优很容易越界:
| 风险 | 例子 | 控制 |
|---|---|---|
| Metric gaming | 只优化答案长度或点击率 | 多指标和人工审查 |
| Unsafe configuration | 降低拒答阈值提高完成率 | 安全硬约束 |
| Data leakage | eval set 被反复调参过拟合 | holdout 和 rotating eval |
| Segment harm | 总体指标变好,弱势群体变差 | slice metrics |
| Cost spike | 选到高质量但高成本配置 | budget constraint |
| Reproducibility gap | 实验环境和生产环境不同 | experiment metadata |
BO 应进入 EvalOps 和 release gate,而不是数据科学家的个人 notebook。
8. 面试表达
30 秒版本
Bayesian Optimization 适合昂贵实验的参数搜索。它用 surrogate model 估计不同配置的表现和不确定性,再用 acquisition function 选择下一次最值得实验的配置。AI 平台里我会把它用于 RAG、prompt、模型路由、阈值和成本/质量 tradeoff,但必须有安全约束、holdout eval 和实验审计。
2 分钟版本
比如调 RAG,不同 chunk size、top-k、reranker、模型和引用阈值组合很多,grid search 成本很高。BO 会基于已有实验拟合 surrogate model,估计哪些配置可能更好、哪些区域还不确定,再推荐下一次实验。架构上需要 parameter registry、metric contract、BO service、experiment runner、results store 和 safety gate。目标不能只看 answer quality,还要看 citation accuracy、latency、cost、PII 和拒答。对金融零售,任何优化都要保留实验版本、数据版本、指标和审批证据。
CTO 追问
如果问 BO 和普通自动调参有什么差别,我会回答: 关键是样本效率和不确定性驱动。BO 特别适合每次实验成本高、预算有限、需要在探索和利用之间平衡的场景。但它不能替代业务指标定义和安全门禁。
9. Portfolio Task
做一个 “RAG Bayesian Optimization Pack”:
| Artifact | 内容 |
|---|---|
| Parameter space | chunk、top-k、reranker、threshold、model route |
| Metric contract | quality、faithfulness、citation、latency、cost、安全 |
| Constraint policy | PII、权限、拒答、安全和预算硬约束 |
| Experiment log | 每次配置、版本、结果、环境 |
| Pareto memo | 成本/质量/延迟 tradeoff |
| Release decision | 推荐配置、证据、回滚条件 |
最终要能讲清楚: BO 不是调参技巧,而是受治理约束的 sequential experiment decision system。