资讯 人工智能学术
此为临时链接,仅用于文章预览,将在时失效

北大 DAIR 实验室AutoML团队开源高效的通用黑盒优化系统OpenBox (KDD2021)

作者:我在思考中
2021/08/05 10:54
北大 DAIR 实验室AutoML团队开源高效的通用黑盒优化系统OpenBox (KDD2021)
AI 科技评论报道
编辑 | 陈大鑫

近日,由北京大学崔斌教授数据与智能实验室( Data and Intelligence Research LAB, DAIR)开发的通用黑盒优化系统 OpenBox 开源发布!

相比于SMAC3,Hyperopt等现有开源系统,OpenBox支持更通用的黑盒优化场景,包括多目标优化,带约束优化场景等。在25个LightGBM调参任务上,OpenBox在7个对比系统中取得了平均1.25名(average rank)的优异成绩。

相关论文已经被KDD  2021录用,"OpenBox: A Generalized Black-box Optimization Service"。


1

研究背景

近年来,人工智能与机器学习备受关注,越来越多企业使用机器学习模型解决实际问题,如人脸识别、商品推荐等。在应用机器学习模型的过程中,模型超参数的选择对模型性能有着至关重要的影响,因此超参数优化问题成为了机器学习的重要挑战之一。超参数优化作为典型的黑盒优化问题,对于优化目标不存在具体表达式或梯度信息,且验证代价较大。其目标是在有限的验证次数内,尽快找到全局最优点。除超参数优化外,黑盒优化还拥有着广泛的使用场景,如自动化A/B测试、数据库参数调优、处理器架构和芯片设计等。

现有开源的黑盒优化系统往往存在以下问题:

1)使用场景有限。由于系统基于某个特定算法,一些系统只能支持单目标或是无约束的优化问题;

2)性能不稳定。基于优化问题中 “no free lunch”定理,现有系统中特定的算法无法在所有任务中表现出色;

3)有限的可扩展性。现有系统无法有效利用历史任务的结果以及分布式的验证资源。

针对这些问题,北京大学DAIR实验室AutoML项目组开发了一个名为 “OpenBox” 的轻量级黑盒优化系统,针对通用的黑盒优化场景,内置丰富的优化算法,并提供高效的并行支持,帮助用户“open the box”,解决棘手的黑盒优化问题。

项目Github开源地址:https://github.com/PKU-DAIR/open-box


2

OpenBox设计思路

为了解决现有系统上述的问题,OpenBox在设计上支持以下系统特性,包括:

北大 DAIR 实验室AutoML团队开源高效的通用黑盒优化系统OpenBox (KDD2021)

作者将现有系统对上述特点的支持情况总结如上(其中△表示不支持通用场景)。从表格中不难看出,现有开源黑盒优化系统无法支持特定的 使用场景,而 OpenBox 能够提供完整的支持。

北大 DAIR 实验室AutoML团队开源高效的通用黑盒优化系统OpenBox (KDD2021)

上图展示了 OpenBox 的并行架构,包含五个主要组件。服务主机(Service Master)负责节点管理、负载均衡和错误恢复。任务数据库(Task Database)保存所有任务的状态。建议服务器(Suggestion Server)为每个任务生成新 配置。REST API 在用户/工作者和建议服务器之间建立了桥梁。验证工作者(Evaluation Worker)由用户提供和拥有。

OpenBox内置大量优化组件,其中优化算法包括贝叶斯优化,遗传算法等,如下图所示:

北大 DAIR 实验室AutoML团队开源高效的通用黑盒优化系统OpenBox (KDD2021)

为简化用户的使用门槛以及提高系统在各问题上的性能,OpenBox 默认采用一种自动选择优化算法的策略,根据输入参数类型,目标个数,约束个数选择合适的优化算法。用户也可基于自身需求,在系统推荐的基础上自行选择优化策略。更多OpenBox的特性请参考开源文档: 

https://open-box.readthedocs.io/zh_CN/latest/overview/overview.html

目前OpenBox已在快手、阿里巴巴集团等企业落地部署与使用。

 

3

OpenBox性能验证

1、收敛效果对比

为体现OpenBox在通用黑盒优化问题上的性能,系统针对单/多目标,无/有约束,共4种场景对比OpenBox与现有算法与系统在优化数学函数上的效果,实验效果如下四图所示。可以看出在不同的优化场景中,OpenBox相较现有系统都有较为显著的收敛效果提升。


北大 DAIR 实验室AutoML团队开源高效的通用黑盒优化系统OpenBox (KDD2021)


北大 DAIR 实验室AutoML团队开源高效的通用黑盒优化系统OpenBox (KDD2021)



2、端到端效果对比

针对实际场景,Openbox以表格分类的机器学习任务为例,与现有开源系统BoTorch,GPGlowOpt,Spearmint,HyperMapper,SMAC3,Hyperopt进行对比。为保证公平性,Openbox使用串行方式执行任务,并汇报调参结果在测试集上的准确率。以下展示使用LightGBM与LibSVM两个模型在25个OpenML公开数据集上的调参结果平均排名。值得注意的是,由于LibSVM的搜索空间复杂且包含条件选择,OpenBox仅与支持复杂空间定义的SMAC3以及Hyperopt进行对比。

可以观察到OpenBox在两个模型调参中均获得了优异的性能。具体来说,OpenBox在Lightgbm调参中排名中位数为1.25,在LibSBM调参中为1.50,体现了OpenBox相比其它开源系统在超参数优化任务中的优势。

北大 DAIR 实验室AutoML团队开源高效的通用黑盒优化系统OpenBox (KDD2021)(a) AutoML任务LightGBM优化结果

北大 DAIR 实验室AutoML团队开源高效的通用黑盒优化系统OpenBox (KDD2021)(b) AutoML任务LibSVM优化结果

3、并行性能对比

OpenBox 支持高效的并行优化算法,使得在达到相同的优化效果的前提下,所需要的时间代价大幅降低。下图展示了使用 OpenBox 中并行优化算法在 LightGBM 调参任务上的提升,使用的数据集为公开数据集 optdigits 。其中“Sync”表示同步并行,“Async” 表示异步并行,“-n” 表示并发度。

北大 DAIR 实验室AutoML团队开源高效的通用黑盒优化系统OpenBox (KDD2021)

可以观察到,相比串行优化(Seq-1),并行能够带来很大程度上提升搜索效率。其中最显著的提升来自于并发度为8的异步优化算法,在达到与串行方法相同的优化结果时仅使用1/80的时间预算,也即实现7.5×的加速比。(理想加速比为8×)

更多关于OpenBox的实验结果,请参考OpenBox论文:

https://arxiv.org/abs/2106.00421


4

OpenBox使用示例

目前OpenBox支持主流平台(Linux、macOS、Window)使用。用户只需在代码中定义空间,给出目标函数,构造优化器即可运行。以下以一个简单的多目标带约束问题为例:

首先,我们需要import必要的组件:

北大 DAIR 实验室AutoML团队开源高效的通用黑盒优化系统OpenBox (KDD2021)

接下来,我们定义一个包含两个连续变量的搜索空间:

北大 DAIR 实验室AutoML团队开源高效的通用黑盒优化系统OpenBox (KDD2021)


随后,我们给出一个简单的以上述两个变量为输入的目标函数。这个目标函数包含两个目标以及两个约束:

北大 DAIR 实验室AutoML团队开源高效的通用黑盒优化系统OpenBox (KDD2021)

最后我们定义一个优化器,传入指定的参数后,只需调用run()即可开始优化。

北大 DAIR 实验室AutoML团队开源高效的通用黑盒优化系统OpenBox (KDD2021)

除了上述包调用的方法,OpenBox还支持用户通过接口访问服务,从服务端获取推荐的参数配置,在本地执行参数性能验证,并通过访问网站页面,可视化监视与管理优化过程。

完整的示例以及更多的使用场景,欢迎参考OpenBox官方文档:

https://open-box.readthedocs.io/zh_CN/latest/

论文地址:https://arxiv.org/abs/2106.00421

项目Github地址:https://github.com/PKU-DAIR/open-box

欢迎大家关注点赞!

参考文献

[1]Yang Li, Yu Shen, Wentao Zhang, Yuanwei Chen, Huaijun Jiang, Mingchao Liu, Jiawei Jiang, Jinyang Gao, Wentao Wu, Zhi Yang, Ce Zhang, Bin Cui.  "OpenBox: A Generalized Black-box Optimization Service." Proceedings of the 27rd ACM SIGKDD international conference on knowledge discovery and data mining. 2021.

[2] Bergstra, James, et al. "Algorithms for hyper-parameter optimization." Advances in neural information processing systems 24 (2011).

[3] Snoek, Jasper, Hugo Larochelle, and Ryan P. Adams. "Practical bayesian optimization of machine learning algorithms." Advances in neural information processing systems 25 (2012).

[4] Hutter, Frank, Holger H. Hoos, and Kevin Leyton-Brown. "Sequential model-based optimization for general algorithm configuration." International conference on learning and intelligent optimization. Springer, Berlin, Heidelberg, 2011.

[5] Balandat, Maximilian, et al. "BoTorch: A framework for efficient Monte-Carlo Bayesian optimization." Advances in Neural Information Processing Systems (NeurIPS) (2020).

[6] Knudde, Nicolas, et al. "GPflowOpt: A Bayesian optimization library using tensorflow." arXiv preprint arXiv:1711.03845 (2017).

[7] Golovin, Daniel, et al. "Google vizier: A service for black-box optimization." Proceedings of the 23rd ACM SIGKDD international conference on knowledge discovery and data mining. 2017.

[8] Nardi, Luigi, David Koeplinger, and Kunle Olukotun. "Practical design space exploration." 2019 IEEE 27th International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS). IEEE, 2019.

[9] Falkner, Stefan, Aaron Klein, and Frank Hutter. "BOHB: Robust and efficient hyperparameter optimization at scale." International Conference on Machine Learning. PMLR, 2018.


讲座预约丨权威专家再谈AlphaFold 2:AI是否会带来结构生物学的“大革命”?
为了更加深入、系统地讨论近期AlphaFold的系列成果,8月7日(本周六 9:30),雷锋网将举办主题为《权威专家再谈AlphaFold2:AI是否会带来结构生物学的“大革命》的线上圆桌论坛。
本次主题论坛由图像计算与数字医学国际研讨会(ISICDM)主办,雷锋网、医健AI掘金志协办。
想要提问的读者可扫描下方海报二维码,进入专家社群,我们会将您的问题收集、汇总后,反馈给参会嘉宾,并在讨论环节一一进行解答。

北大 DAIR 实验室AutoML团队开源高效的通用黑盒优化系统OpenBox (KDD2021)

雷锋网雷锋网雷锋网


长按图片保存图片,分享给好友或朋友圈

北大 DAIR 实验室AutoML团队开源高效的通用黑盒优化系统OpenBox (KDD2021)

扫码查看文章

正在生成分享图...

取消
相关文章