FunBO: Discovering Acquisition Functions for Bayesian Optimization with FunSearch
作者: Virginia Aglietti, Ira Ktena, Jessica Schrouff, Eleni Sgouritsa, Francisco J. R. Ruiz, Alan Malek, Alexis Bellot, Silvia Chiappa
分类: cs.LG, stat.ML
发布日期: 2024-06-07 (更新: 2024-07-01)
💡 一句话要点
FunBO:利用FunSearch发现贝叶斯优化中的新型采集函数
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 贝叶斯优化 采集函数 大型语言模型 自动机器学习 函数优化
📋 核心要点
- 贝叶斯优化依赖于采集函数,但最佳采集函数随问题变化,需要人工选择。
- FunBO利用大型语言模型FunSearch,自动发现并学习新的、以代码形式表达的采集函数。
- 实验表明,FunBO发现的采集函数在多种优化任务中泛化性良好,优于传统方法。
📝 摘要(中文)
贝叶斯优化算法的样本效率取决于精心设计的采集函数(AF),这些函数指导着函数评估的顺序收集。最佳的AF在不同的优化问题中可能差异很大,通常需要特定的选择。本文旨在设计在各种实验环境中表现良好的新型AF。基于FunSearch,一项最近使用大型语言模型(LLM)在数学科学中进行发现的工作,我们提出FunBO,这是一种基于LLM的方法,可用于通过利用对一组目标函数的有限评估来学习以计算机代码编写的新型AF。我们提供了所有发现的AF的解析表达式,并在各种全局优化基准和超参数优化任务中对其进行评估。我们展示了FunBO如何识别在函数训练分布内外都能很好地泛化的AF,从而胜过已建立的通用AF,并在针对特定函数类型定制并通过迁移学习算法学习的AF方面实现了具有竞争力的性能。
🔬 方法详解
问题定义:贝叶斯优化(BO)中,采集函数(AF)的选择至关重要,直接影响优化效率。现有方法依赖于人工设计的AF,这些AF往往是通用型的,难以适应不同类型的优化问题。针对特定问题定制的AF虽然效果更好,但需要大量领域知识和调参工作,成本高昂。因此,如何自动发现适用于不同优化问题的、高性能的AF是一个亟待解决的问题。
核心思路:FunBO的核心思路是利用大型语言模型(LLM)的强大代码生成能力,自动搜索和学习新的AF。具体来说,FunBO借鉴了FunSearch的思想,将AF的设计问题转化为一个代码生成问题,通过LLM生成候选AF的代码,并根据其在少量函数评估中的表现进行筛选和优化。这种方法避免了人工设计AF的繁琐过程,并能够发现传统方法难以触及的新型AF。
技术框架:FunBO的整体框架主要包含以下几个阶段: 1. LLM代码生成:使用LLM生成候选AF的Python代码。 2. 代码编译与执行:对生成的代码进行编译和执行,确保其能够正确计算AF值。 3. 性能评估:在少量目标函数评估中测试候选AF的性能。 4. 反馈与优化:根据AF的性能,对LLM进行反馈,引导其生成更优秀的AF代码。 5. AF选择:选择表现最佳的AF作为最终的优化策略。
关键创新:FunBO的关键创新在于将LLM引入到AF的设计过程中,实现了AF的自动发现和学习。与传统的基于人工设计的AF相比,FunBO能够探索更广阔的AF空间,发现具有更好泛化性能的新型AF。此外,FunBO还能够根据不同的优化问题,自适应地调整AF的设计,从而提高优化效率。
关键设计:FunBO的关键设计包括: 1. LLM的选择:选择具有强大代码生成能力的LLM,例如CodeLLama。 2. 代码生成提示词设计:设计合适的提示词,引导LLM生成符合要求的AF代码。 3. 性能评估指标:选择合适的性能评估指标,例如累积遗憾值(Cumulative Regret)。 4. 反馈机制:设计有效的反馈机制,将AF的性能信息传递给LLM,引导其生成更优秀的AF代码。
🖼️ 关键图片
📊 实验亮点
实验结果表明,FunBO在多个全局优化基准和超参数优化任务中表现出色。与传统的通用采集函数相比,FunBO能够取得更好的优化效果,并且在训练分布之外的函数上也能保持良好的泛化性能。此外,FunBO在特定函数类型上的性能与专门定制的采集函数相当,甚至超过了通过迁移学习算法学习的采集函数。
🎯 应用场景
FunBO具有广泛的应用前景,可应用于机器学习模型的超参数优化、药物发现、材料设计等领域。通过自动发现高性能的采集函数,FunBO能够显著提高贝叶斯优化的效率,降低优化成本,加速相关领域的研发进程。未来,FunBO有望成为一种通用的优化工具,为各行各业的优化问题提供解决方案。
📄 摘要(原文)
The sample efficiency of Bayesian optimization algorithms depends on carefully crafted acquisition functions (AFs) guiding the sequential collection of function evaluations. The best-performing AF can vary significantly across optimization problems, often requiring ad-hoc and problem-specific choices. This work tackles the challenge of designing novel AFs that perform well across a variety of experimental settings. Based on FunSearch, a recent work using Large Language Models (LLMs) for discovery in mathematical sciences, we propose FunBO, an LLM-based method that can be used to learn new AFs written in computer code by leveraging access to a limited number of evaluations for a set of objective functions. We provide the analytic expression of all discovered AFs and evaluate them on various global optimization benchmarks and hyperparameter optimization tasks. We show how FunBO identifies AFs that generalize well in and out of the training distribution of functions, thus outperforming established general-purpose AFs and achieving competitive performance against AFs that are customized to specific function types and are learned via transfer-learning algorithms.