什么是 采集函数(Acquisition Function)?
采集函数(Acquisition Function)是一种相对于真实目标较便宜的决策规则,它根据代理模型后验为一个或多个候选评估赋予效用,使序贯优化器能够选择下一步评估对象。
快速了解
| 规范文档 | 官方规范 |
|---|
工作原理
把后验信念转换为特定决策效用
对候选集合 X,策略可写成当前 f(X) 后验下某个效用的期望。BoTorch 采集函数文档区分单点解析函数和联合批量的 Monte Carlo 估计。EI 奖励期望正改进,PI 奖励跨过当前最优值的概率,UCB 加入不确定性奖励,信息型方法则衡量与决策有关的不确定性下降。
把采集优化视为真实数值问题
选择下一点需要在边界和约束内优化采集函数。这个次级目标可能非凸,在混合空间中不连续,因 Monte Carlo 估计而随机,或在大范围内近乎平坦。应采用多起点、约束优化器、稳定变换,必要时固定随机基样本,并与稠密网格或随机候选直接核对。弱优化器找到的高采集值,不能证明已找到全局采集最大值。
保持噪声、批量、成本与可行性的语义
批量效用应考虑联合后验相关性,不能重复选择单点最大值。异步系统必须表示仍在执行的 Pending Evaluations。带噪声目标要表达潜在当前最优值的不确定性,约束要声明可行性处理方式,不同成本则要定义单位资源效用或其他明确目标。Ax 的介绍说明 EI、PI 与 UCB 会产生不同行为,并存在带约束、噪声、多目标和批量扩展。
主要特点
- 把后验分布映射为候选决策效用
- 相对真实目标便宜,但自身仍需要优化
- 编码特定探索、利用或信息权衡
- 可以为单点或相关批量评分
- 必须一致表示噪声、约束、待完成任务与成本
- 需要策略消融与端到端目标评测
常见用途
- 选择贝叶斯优化的下一个评估点
- 为并行实验选择多样化批次
- 在黑盒约束下优先选择可行候选
- 在不同保真度或成本层级之间分配评估
- 在序贯学习中选择信息量高的标签或测量
示例
Loading code...常见问题
采集函数与目标函数是同一个函数吗?
不是。目标函数是系统最终要优化的昂贵量;采集函数是基于模型的低成本效用,用来决定下一次在哪里评估真实目标。优化采集函数本身不会产生新的真实目标观测。
应该选择哪一种采集函数?
先从决策契约出发。合适后验下 EI 是强基线;UCB 暴露探索参数;后验采样支持随机选择;信息型策略适合学习目标。所有策略都应使用相同初始化和总成本做比较。
为什么采集函数本身还需要优化?
连续搜索空间包含无限候选,下一次评估是某个通常非凸次级函数的最大点。多起点数值优化、约束、混合变量、Monte Carlo 误差和平坦梯度都会改变最终选择。
批量采集函数与直接取分数最高的多个点有什么区别?
直接取单点 Top-k 会忽略相关性,可能选出重复候选。联合批量策略在联合后验下评价整个集合,或使用明确的多样性近似;系统还必须考虑已经提交但尚未返回的评估。
采集函数能修复错设的代理模型吗?
不能。它只能根据收到的后验做决策。若核、似然、特征、噪声或约束错误,再复杂的策略也可能自信地把预算花在错误区域,因此必须验证代理模型并保留无模型基线。