OpenBox: 高效通用的黑盒优化系统¶
OpenBox 是一个高效的开源系统,旨在解决泛化的黑盒优化(BBO)问题, 例如 自动化超参数调优 、自动化A/B测试、 实验设计、数据库参数调优、处理器体系结构和电路设计、资源分配、自动化学设计等。
OnenBox 的设计理念是将BBO作为一种服务提供给用户。 我们的目标是将 OpenBox 实现为一个分布式的、有容错、可扩展的、高效的服务。 它能够对各种应用场景提供广泛的支持,并保证稳定的性能。 OpenBox 简单易上手、方便移植和维护。
您可以使用以下两种方法使用 OpenBox: 单独的Python包 和 在线BBO服务。
OpenBox GitHub: https://github.com/PKU-DAIR/open-box
News¶
OpenBox based solutions achieved the First Place of ACM CIKM 2021 AnalyticCup (Track - Automated Hyperparameter Optimization of Recommendation System).
OpenBox team won the Top Prize (special prize) in the open-source innovation competition at 2021 CCF ChinaSoft conference.
Pasca, which adopts Openbox to support neural architecture search functionality, won the Best Student Paper Award at WWW’22.
OpenBox 针对的用户群体¶
想要为ML任务自动执行 超参数调优 的用户。
想要为配置搜索任务找到 最佳配置 的用户(例如,数据库参数调优)。
想要为数据平台提供 BBO服务 的用户。
想要方便地解决 通用BBO问题 的研究员和数据科学家。
OpenBox 的功能特性¶
OpenBox 有很多强大的功能和特性,包括:
1、 提供多目标和带约束条件的 BBO 服务支持。
2、 提供带迁移学习的 BBO 服务。
3、 提供分布式并行的 BBO 服务。
4、 提供多精度加速的 BBO 服务。
5、 提供带提前终止的 BBO 服务。
下表给出了现有BBO系统的分类:
FIOC: 支持不同的输入变量类型,包括 Float, Integer, Ordinal 和 Categorical。
多目标: 支持多目标优化。
约束条件: 支持不等式约束条件。
历史: 支持将以前任务的先验知识融入到当前搜索中(即迁移学习)。
分布式: 支持在分布式环境中并行评估。
△ 表示系统在通用场景下不支持或需要安装额外的依赖。