

关键词
Python
Black-box Optimization
Bayesian Optimization
Hyper-parameter Optimization
导 读
OpenBox:
用于通用黑盒优化的Python工具
黑盒优化(BBO)具有广泛的应用场景,包括自动化机器学习、实验设计和数据库参数调优等。然而,用户在使用现有黑盒优化工具解决问题时,仍然面临适用性、性能和效率方面的挑战。本文介绍了OpenBox,一个具有高可用性的开源黑盒优化工具。它实现了用户友好的接口和可视化界面,供用户定义和管理其任务。OpenBox背后的模块化设计有助于在现有系统中灵活部署。实验结果证明了OpenBox相较于现有工具的有效性和效率。
论文链接:
https://www.jmlr.org/papers/v25/23-0537.html
代码链接:
https://github.com/PKU-DAIR/open-box
问 题 背 景
黑盒优化(BBO)是在有限预算下优化目标函数的问题。然而,由于目标函数的评估通常很昂贵,黑盒优化的目标是找到一个尽可能接近最优配置的配置。最近,通用黑盒优化在各个领域引起了极大的关注,这比传统的黑盒优化任务需要更多的功能。具体而言,传统黑盒优化是指具有整数或浮点输入参数且只有一个目标的黑盒优化问题,而在通用黑盒优化中可以存在各种输入类型(例如类别型)、多个目标和约束。尽管许多软件和平台[1-4]已经针对传统黑盒优化进行开发,到目前为止,还没有专门针对通用黑盒优化设计的平台。当应用于通用黑盒优化场景时,现有工具存在以下局限性:
(1)应用范围受限。许多现有的黑盒优化工具无法支持多个目标和约束,也无法支持类别型参数。
(2) 跨问题性能不稳定。许多工具只实现一个或很少的黑盒优化算法。根据“天下没有免费的午餐”定理,当应用于各种问题时,这必然会导致性能不稳定。
(3) 可扩展性和效率有限。大多数工具以串行运行方式执行优化,这效率低下且不可扩展。
本文提出了OpenBox,以同时解决上述局限性。OpenBox具有以下特性:
(1)通用性。OpenBox托管了大多数最先进的优化算法,能够处理具有不同要求的黑盒优化任务。
(2)易用性。OpenBox提供用户友好的界面、可视化和算法自动决策。用户可以通过封装的服务或问答接口方便地定义他们的任务。
(3)顶尖性能。广泛的实验表明,OpenBox在通用黑盒优化任务上优于现有系统。
到目前为止,OpenBox已经帮助研究人员解决了各种现实的黑盒优化问题,如数据库调优[5-6]和交通流量模拟[7]。它还作为开源图学习系统SGL[8]和数据库调优系统DBTune[9]的核心部分运行。除了学术用途外,OpenBox在CIKM 2021 AnalytiCup Track 2[10]中获得了冠军,且部分工具已成功部署在腾讯[11]和字节跳动[12]等公司。

功 能 概 览
OpenBox为各种黑盒优化问题实现了最先进的算法(如图1)。具体而言,OpenBox能够处理具有不同数量目标和约束的黑盒优化问题,优化过程可以是串行的或并行的。为了确保在不同场景下的稳定性能,OpenBox实现了贝叶斯优化、遗传算法和其他具有竞争力方法(如CMA-ES)的变体。
由于用户为不同场景选择合适的算法可能具有挑战性,OpenBox还根据传入任务的特征(包括搜索空间、目标数量和约束数量)自动决定算法和设置,这些决定基于实验分析或实践经验。例如,如果输入空间中有超过十个参数,或者迭代次数超过300,我们选择概率随机森林(PRF)替代高斯过程(GP)作为代理模型,以避免贝叶斯优化中的不兼容或高计算复杂性。
系 统 设 计
在本节中,我们将介绍OpenBox的系统设计。如图2左上角所示,优化框架的核心是Optimizer,它以目标函数和搜索空间为输入,执行优化过程,并输出最终结果。Optimizer由三个主要组件组成:Advisor、Executor和Visualizer。Advisor实现了上节中描述的优化算法,并根据提供的搜索空间和存储的优化历史建议新的配置。然后,Executor在推荐的配置上运行目标函数并返回结果,即观察结果。为了监控优化过程,Visualizer为用户提供了全面的可视化API,包括收敛曲线、基于SHAP的参数重要性分析等。对于多目标问题,还可以使用帕累托前沿和超体积图。图2左下方提供了收敛曲线的示例,其中优化过程中观察到的最佳配置由蓝线连接。

为了便于使用,OpenBox还使用Advisor提供了问答接口。示例代码如图2右侧所示。用户首先基于搜索空间构建一个Advisor(第4-5行)。接下来,用户通过与Advisor交互来运行优化(第8-16行)。具体来说,用户从Advisor(第10行)获得配置建议,并自行评估配置的性能(第12行)。然后,用户构建一个包含评估结果(第14行)的Observation,并将Observation更新至Advisor(第16行)。最后,基于从Advisor获得的优化历史生成用于可视化的HTML页面(第19-20行)。这种问答接口与各种类型的优化算法兼容,使用户能够对优化过程进行灵活的修改。
性 能 实 验
为了证明OpenBox的通用性和高效性,我们在带约束多目标问题CONSTR和24个OpenML数据集上的LightGBM调优任务上进行了实验。实验报告了CONSTR问题中的最优超体积差值,以及LightGBM调优任务中最佳调优准确率的排名。在图3(a)中,我们观察到OpenBox在收敛速度和稳定性方面优于其他基线方法。在图3(b)中,我们观察到OpenBox优于其他具有竞争力的系统,达到了1.25的中位数排名,并且在24个数据集中的12个数据集上排名第一。

总 结
本文提出了一个用于求解通用黑盒优化任务的开源系统OpenBox。OpenBox拥有一系列最先进的优化算法,并提供用户友好的界面以及全面的可视化功能。实验展示了OpenBox相较于现有工具的卓越性能。最近发布的版本0.8.3已在Linux、macOS和Windows上进行了测试,并且可以通过PyPI(pip install openbox)轻松安装。OpenBox的源代码详见https://github.com/PKU-DAIR/open-box。更详细的示例、API和高级用法请参考OpenBox文档https://open-box.readthedocs.io/。
详细了解本工作,请访问下方链接地址:
论文链接:
https://www.jmlr.org/papers/v25/23-0537.html
References:
[1]Daniel Golovin, Benjamin Solnik, Subhodeep Moitra, Greg Kochanski, John Karro, and David Sculley. Google vizier: A service for black-box optimization. In Proceedings of the 23rd ACM SIGKDD international conference on knowledge discovery and data mining, pages 1487–1495, 2017.
[2] Takuya Akiba, Shotaro Sano, Toshihiko Yanase, Takeru Ohta, and Masanori Koyama. Optuna: A next-generation hyperparameter optimization framework. In Proceedings of the 25th ACM SIGKDD international conference on knowledge discovery & data mining, pages 2623–2631, 2019.
[3] Maximilian Balandat, Brian Karrer, Daniel R. Jiang, Samuel Daulton, Benjamin Letham, Andrew Gordon Wilson, and Eytan Bakshy. BoTorch: A Framework for Efficient Monte-Carlo Bayesian Optimization. In NeurIPS, 2020.
[4] Marius Lindauer, Katharina Eggensperger, Matthias Feurer, AndrÅLe Biedenkapp, Difan Deng, Carolin Benjamins, Tim Ruhkopf, RenÅLe Sass, and Frank Hutter. Smac3: A versatile bayesian optimization package for hyperparameter optimization. Journal of Machine Learning Research, 23(54):1–9, 2022.
[5] Konstantinos Kanellis, Cong Ding, Brian Kroth, Andreas MÅNuller, Carlo Curino, and Shivaram Venkataraman. Llamatune: sample-efficient dbms configuration tuning. Proceedings of the VLDB Endowment, 15(11):2953–2965, 2022.
[6] Xinyi Zhang, Hong Wu, Yang Li, Jian Tan, Feifei Li, and Bin Cui. Towards dynamic and safe configuration tuning for cloud databases. In Proceedings of the 2022 International Conference on Management of Data, pages 631–645, 2022c.
[7] Chumeng Liang, Zherui Huang, Yicheng Liu, Zhanyu Liu, Guanjie Zheng, Hanyuan Shi, Yuhao Du, Fuliang Li, and Zhenhui Li. Cblab: Scalable traffic simulation with enriched data supporting. arXiv preprint arXiv:2210.00896, 2022.
[8] Wentao Zhang, Yu Shen, Zheyu Lin, Yang Li, Xiaosen Li, Wen Ouyang, Yangyu Tao, Zhi Yang, and Bin Cui. Pasca: A graph neural architecture search system under the scalable paradigm. In Proceedings of the ACM Web Conference 2022, pages 1817–1828, 2022a.
[9] Xinyi Zhang, Zhuo Chang, Yang Li, Hong Wu, Jian Tan, Feifei Li, and Bin Cui. Facilitating database tuning with hyper-parameter optimization: a comprehensive experimental evaluation. Proceedings of the VLDB Endowment, 15(9):1808–1821, 2022b.
[10] Huaijun Jiang, Yu Shen, and Yang Li. Automated hyperparameter optimization challenge at cikm 2021 analyticcup. arXiv preprint arXiv:2111.00513, 2021.
[11] Yang Li, Huaijun Jiang, Yu Shen, Yide Fang, Xiaofeng Yang, Danqing Huang, Xinyi Zhang, Wentao Zhang, Ce Zhang, Peng Chen, and Bin Cui. Towards general and efficient online tuning for spark. Proc. VLDB Endow., 16(12):3570–3583, 2023.
[12] Yu Shen, Xinyuyang Ren, Yupeng Lu, Huaijun Jiang, Huanyong Xu, Di Peng, Yang Li, Wentao Zhang, and Bin Cui. Rover: An online spark sql tuning service via generalized transfer learning. In Proceedings of the 29th ACM SIGKDD Conference on Knowledge Discovery and Data Mining, pages 4800–4812, 2023.
欢迎关注本公众号,帮助您更好地了解北京大学数据与智能实验室(PKU-DAIR),第一时间了解PKU-DAIR实验室的最新成果!
实验室简介
北京大学数据与智能实验室(Data And Intelligence Research Lab at Peking Univeristy,PKU-DAIR实验室)由北京大学计算机学院崔斌教授领导,长期从事数据库系统、大数据管理与分析、人工智能等领域的前沿研究,在理论和技术创新以及系统研发上取得多项成果,已在国际顶级学术会议和期刊发表学术论文100余篇,发布多个开源项目。课题组同学曾数十次获得包括CCF优博、北大优博、微软学者、苹果奖学金、谷歌奖学金等荣誉。PKU-DAIR实验室持续与工业界展开卓有成效的合作,与腾讯、阿里巴巴、苹果、微软、百度、快手、中兴通讯等多家知名企业开展项目合作和前沿探索,解决实际问题,进行科研成果的转化落地。
内容中包含的图片若涉及版权问题,请及时与我们联系删除
评论
沙发等你来抢