[论文解读] Emulation of physical processes with Emukit
Emukit 是一个高度可定制的 Python 工具包,统一仿真、不确定性量化和决策,允许用户提供的模型和后端用于贝叶斯优化、实验设计等。
Decision making in uncertain scenarios is an ubiquitous challenge in real world systems. Tools to deal with this challenge include simulations to gather information and statistical emulation to quantify uncertainty. The machine learning community has developed a number of methods to facilitate decision making, but so far they are scattered in multiple different toolkits, and generally rely on a fixed backend. In this paper, we present Emukit, a highly adaptable Python toolkit for enriching decision making under uncertainty. Emukit allows users to: (i) use state of the art methods including Bayesian optimization, multi-fidelity emulation, experimental design, Bayesian quadrature and sensitivity analysis; (ii) easily prototype new decision making methods for new problems. Emukit is agnostic to the underlying modeling framework and enables users to use their own custom models. We show how Emukit can be used on three exemplary case studies.
研究动机与目标
- 在不确定的决策情境中,推动使用统计仿真以替代或增强慢速/确定性仿真的作用。
- 提供一个灵活的、后端无关的工具包,以实现决策方法的快速原型设计和公平基准测试。
- 提供一个模块化框架,将代理模型与决策过程在各类应用中耦合起来(例如优化、实验设计、贝叶斯积分)。
- 通过案例研究演示 Emukit 在真实物理过程建模中如何促进考虑不确定性的决策。
提出的方法
- 定义一个抽象的决策循环,捕捉贝叶斯优化、贝叶斯积分、实验设计和灵敏度分析的共通结构。
- 实现一个模块化、后端无关的架构,用户可以将自定义模型封装并接入 Emukit 的决策流程。
- 提供接口,将代理模型与决策过程连接起来,而不需要固定的后端(例如 NumPy、GPy、TensorFlow、PyTorch)。
- 支持迭代外循环工作流,在其中选择下一个输入、收集观测值,并更新仿真器,直到收敛或达到停止条件。
- 通过实际案例研究说明该方法,以展示在原型化新方法和基准测试方面的灵活性和使用便捷性。
实验结果
研究问题
- RQ1一个模型无关的工具包如何简化在不确定情境下的仿真与决策的集成?
- RQ2Emukit 是否能够在一个统一的工作流程中支持多种决策问题(优化、积分、实验设计)?
- RQ3案例研究是否在使用自定义模型和后端时展示出实际的效率和灵活性?
- RQ4模块化、基于组件的设计在基准测试和扩展决策方法方面有哪些优势?
主要发现
- Emukit 通过将用户定义的模型包装进标准决策循环,实现高效且考虑不确定性的决策。
- 该工具包在诸如流行病建模、量子谐振器设计和音乐合成器反向工程等多样领域显示出成功应用。
- Emukit 的后端无关设计通过允许组件(模型、采样器、优化器)的互换,促进公平基准测试和快速原型设计。
- 案例研究表明,与固定后端工作流相比,Emukit 能降低计算成本并实现更灵活的实验。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。