首頁 > 智能 > 正文

    北大DAIR實(shí)驗(yàn)室宣布:通用黑盒優(yōu)化系統(tǒng)OpenBox開源發(fā)布

    2021-08-05 11:47:45來源:雷鋒網(wǎng)  

    近日,由北京大學(xué)崔斌教授數(shù)據(jù)與智能實(shí)驗(yàn)室( Data and Intelligence Research LAB, DAIR)開發(fā)的通用黑盒優(yōu)化系統(tǒng) OpenBox 開源發(fā)布!

    相比于 SMAC3,Hyperopt 等現(xiàn)有開源系統(tǒng),OpenBox 支持更通用的黑盒優(yōu)化場(chǎng)景,包括多目標(biāo)優(yōu)化,帶約束優(yōu)化場(chǎng)景等。在 25 個(gè) LightGBM 調(diào)參任務(wù)上,OpenBox 在 7 個(gè)對(duì)比系統(tǒng)中取得了平均 1.25 名 (average rank) 的優(yōu)異成績(jī)。

    相關(guān)論文已經(jīng)被 KDD 2021 錄用,"OpenBox: A Generalized Black-box Optimization Service"。

    研究背景

    近年來,人工智能與機(jī)器學(xué)習(xí)備受關(guān)注,越來越多企業(yè)使用機(jī)器學(xué)習(xí)模型解決實(shí)際問題,如人臉識(shí)別、商品推薦等。在應(yīng)用機(jī)器學(xué)習(xí)模型的過程中,模型超參數(shù)的選擇對(duì)模型性能有著至關(guān)重要的影響,因此超參數(shù)優(yōu)化問題成為了機(jī)器學(xué)習(xí)的重要挑戰(zhàn)之一。超參數(shù)優(yōu)化作為典型的黑盒優(yōu)化問題,對(duì)于優(yōu)化目標(biāo)不存在具體表達(dá)式或梯度信息,且驗(yàn)證代價(jià)較大。其目標(biāo)是在有限的驗(yàn)證次數(shù)內(nèi),盡快找到全局最優(yōu)點(diǎn)。除超參數(shù)優(yōu)化外,黑盒優(yōu)化還擁有著廣泛的使用場(chǎng)景,如自動(dòng)化 A/B 測(cè)試、數(shù)據(jù)庫參數(shù)調(diào)優(yōu)、處理器架構(gòu)和芯片設(shè)計(jì)等。

    現(xiàn)有開源的黑盒優(yōu)化系統(tǒng)往往存在以下問題:

    1)使用場(chǎng)景有限。由于系統(tǒng)基于某個(gè)特定算法,一些系統(tǒng)只能支持單目標(biāo)或是無約束的優(yōu)化問題;

    2)性能不穩(wěn)定。基于優(yōu)化問題中“no free lunch”定理,現(xiàn)有系統(tǒng)中特定的算法無法在所有任務(wù)中表現(xiàn)出色;

    3)有限的可擴(kuò)展性。現(xiàn)有系統(tǒng)無法有效利用歷史任務(wù)的結(jié)果以及分布式的驗(yàn)證資源。

    針對(duì)這些問題,北京大學(xué) DAIR 實(shí)驗(yàn)室 AutoML 項(xiàng)目組開發(fā)了一個(gè)名為“OpenBox”的輕量級(jí)黑盒優(yōu)化系統(tǒng),針對(duì)通用的黑盒優(yōu)化場(chǎng)景,內(nèi)置豐富的優(yōu)化算法,并提供高效的并行支持,幫助用戶“open the box”,解決棘手的黑盒優(yōu)化問題。

    項(xiàng)目 Github 開源地址:https://github.com/PKU-DAIR/open-box

    OpenBox 設(shè)計(jì)思路

    為了解決現(xiàn)有系統(tǒng)上述的問題,OpenBox 在設(shè)計(jì)上支持以下系統(tǒng)特性,包括:

    多目標(biāo)優(yōu)化:同時(shí)優(yōu)化多個(gè)不同(甚至相互沖突)的目標(biāo),例如同時(shí)優(yōu)化機(jī)器模型準(zhǔn)確率和模型訓(xùn)練/預(yù)測(cè)時(shí)間等。

    帶約束條件優(yōu)化:最優(yōu)化目標(biāo)的同時(shí),要滿足(黑盒)條件,例如保證模型延遲不能高于某個(gè)閾值等。

    多類型參數(shù)輸入(FIOC):系統(tǒng)需要對(duì)多種待優(yōu)化參數(shù)類型提供支持,主要為 FIOC,即浮點(diǎn)型、整型、序數(shù)型、類別型四類參數(shù)。例如超參數(shù)優(yōu)化中,SVM 模型核函數(shù)用類別型表示,如果單純用整型代替序數(shù)型或類別型參數(shù),將對(duì)參數(shù)附加額外的序關(guān)系,不利于模型優(yōu)化。

    遷移學(xué)習(xí):優(yōu)化任務(wù)之間可能存在一定相關(guān)性,例如過去可能在不同數(shù)據(jù)集上進(jìn)行過相同模型的調(diào)參。基于這種觀察,系統(tǒng)需要能夠利用過去優(yōu)化的知識(shí)加速當(dāng)前優(yōu)化任務(wù)的執(zhí)行效率。

    分布式并行驗(yàn)證:內(nèi)置算法支持并行運(yùn)行,并且系統(tǒng)能夠有效利用給定的分布式資源。

    作者將現(xiàn)有系統(tǒng)對(duì)上述特點(diǎn)的支持情況總結(jié)如上 (其中△表示不支持通用場(chǎng)景)。從表格中不難看出,現(xiàn)有開源黑盒優(yōu)化系統(tǒng)無法支持特定的使用場(chǎng)景,而 OpenBox 能夠提供完整的支持。

    上圖展示了 OpenBox 的并行架構(gòu),包含五個(gè)主要組件。服務(wù)主機(jī) (ServiceMaster) 負(fù)責(zé)節(jié)點(diǎn)管理、負(fù)載均衡和錯(cuò)誤恢復(fù)。任務(wù)數(shù)據(jù)庫 (Task Database) 保存所有任務(wù)的狀態(tài)。建議服務(wù)器 (Suggestion Server) 為每個(gè)任務(wù)生成新配置。REST API 在用戶/工作者和建議服務(wù)器之間建立了橋梁。驗(yàn)證工作者 (Evaluation Worker) 由用戶提供和擁有。

    OpenBox 內(nèi)置大量?jī)?yōu)化組件,其中優(yōu)化算法包括貝葉斯優(yōu)化,遺傳算法等,如下圖所示:

    北大 DAIR 實(shí)驗(yàn)室推出開源高效的通用黑盒優(yōu)化系統(tǒng) OpenBox

    為簡(jiǎn)化用戶的使用門檻以及提高系統(tǒng)在各問題上的性能,OpenBox 默認(rèn)采用一種自動(dòng)選擇優(yōu)化算法的策略,根據(jù)輸入?yún)?shù)類型,目標(biāo)個(gè)數(shù),約束個(gè)數(shù)選擇合適的優(yōu)化算法。用戶也可基于自身需求,在系統(tǒng)推薦的基礎(chǔ)上自行選擇優(yōu)化策略。更多 OpenBox 的特性請(qǐng)參考開源文檔:

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

    目前 OpenBox 已在快手、阿里巴巴集團(tuán)等企業(yè)落地部署與使用。

    OpenBox 性能驗(yàn)證

    1、收斂效果對(duì)比

    為體現(xiàn) OpenBox 在通用黑盒優(yōu)化問題上的性能,系統(tǒng)針對(duì)單/多目標(biāo),無/有約束,共 4 種場(chǎng)景對(duì)比 OpenBox 與現(xiàn)有算法與系統(tǒng)在優(yōu)化數(shù)學(xué)函數(shù)上的效果,實(shí)驗(yàn)效果如下四圖所示。可以看出在不同的優(yōu)化場(chǎng)景中,OpenBox 相較現(xiàn)有系統(tǒng)都有較為顯著的收斂效果提升。

    2、端到端效果對(duì)比

    針對(duì)實(shí)際場(chǎng)景,Openbox 以表格分類的機(jī)器學(xué)習(xí)任務(wù)為例,與現(xiàn)有開源系統(tǒng) BoTorch,GPGlowOpt,Spearmint,HyperMapper,SMAC3,Hyperopt 進(jìn)行對(duì)比。為保證公平性,Openbox 使用串行方式執(zhí)行任務(wù),并匯報(bào)調(diào)參結(jié)果在測(cè)試集上的準(zhǔn)確率。以下展示使用 LightGBM 與 LibSVM 兩個(gè)模型在 25 個(gè) OpenML 公開數(shù)據(jù)集上的調(diào)參結(jié)果平均排名。值得注意的是,由于 LibSVM 的搜索空間復(fù)雜且包含條件選擇,OpenBox 僅與支持復(fù)雜空間定義的 SMAC3 以及 Hyperopt 進(jìn)行對(duì)比。

    可以觀察到 OpenBox 在兩個(gè)模型調(diào)參中均獲得了優(yōu)異的性能。具體來說,OpenBox 在 Lightgbm 調(diào)參中排名中位數(shù)為 1.25,在 LibSBM 調(diào)參中為 1.50,體現(xiàn)了 OpenBox 相比其它開源系統(tǒng)在超參數(shù)優(yōu)化任務(wù)中的優(yōu)勢(shì)。

    (a) AutoML 任務(wù) LightGBM 優(yōu)化結(jié)果

    (b) AutoML 任務(wù) LibSVM 優(yōu)化結(jié)果

    3、并行性能對(duì)比

    OpenBox 支持高效的并行優(yōu)化算法,使得在達(dá)到相同的優(yōu)化效果的前提下,所需要的時(shí)間代價(jià)大幅降低。下圖展示了使用 OpenBox 中并行優(yōu)化算法在 LightGBM 調(diào)參任務(wù)上的提升,使用的數(shù)據(jù)集為公開數(shù)據(jù)集 optdigits 。其中“Sync”表示同步并行,“Async”表示異步并行,“-n”表示并發(fā)度。

    可以觀察到,相比串行優(yōu)化(Seq-1),并行能夠帶來很大程度上提升搜索效率。其中最顯著的提升來自于并發(fā)度為 8 的異步優(yōu)化算法,在達(dá)到與串行方法相同的優(yōu)化結(jié)果時(shí)僅使用 1/80 的時(shí)間預(yù)算,也即實(shí)現(xiàn) 7.5× 的加速比。(理想加速比為 8×)

    更多關(guān)于 OpenBox 的實(shí)驗(yàn)結(jié)果,請(qǐng)參考 OpenBox 論文:

    https://arxiv.org/abs/2106.00421

    OpenBox 使用示例

    目前 OpenBox 支持主流平臺(tái)(Linux、macOS、Window)使用。用戶只需在代碼中定義空間,給出目標(biāo)函數(shù),構(gòu)造優(yōu)化器即可運(yùn)行。以下以一個(gè)簡(jiǎn)單的多目標(biāo)帶約束問題為例:

    首先,我們需要 import 必要的組件:

    接下來,我們定義一個(gè)包含兩個(gè)連續(xù)變量的搜索空間:

    隨后,我們給出一個(gè)簡(jiǎn)單的以上述兩個(gè)變量為輸入的目標(biāo)函數(shù)。這個(gè)目標(biāo)函數(shù)包含兩個(gè)目標(biāo)以及兩個(gè)約束:

    最后我們定義一個(gè)優(yōu)化器,傳入指定的參數(shù)后,只需調(diào)用 run () 即可開始優(yōu)化。

    除了上述包調(diào)用的方法,OpenBox 還支持用戶通過接口訪問服務(wù),從服務(wù)端獲取推薦的參數(shù)配置,在本地執(zhí)行參數(shù)性能驗(yàn)證,并通過訪問網(wǎng)站頁面,可視化監(jiān)視與管理優(yōu)化過程。

    完整的示例以及更多的使用場(chǎng)景,歡迎參考 OpenBox 官方文檔:

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

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

    項(xiàng)目 Github 地址:https://github.com/PKU-DAIR/open-box

    歡迎大家關(guān)注點(diǎn)贊!

    參考文獻(xiàn)

    [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.

    標(biāo)簽: OpenBox 開源

    相關(guān)閱讀

    相關(guān)詞

    推薦閱讀

    亚洲另类图片另类电影| 久久久婷婷五月亚洲97号色| 亚洲人成免费网站| 五月婷婷亚洲综合| 五月天网站亚洲小说| 亚洲精品蜜夜内射| 亚洲成色在线综合网站| 亚洲夂夂婷婷色拍WW47| 亚洲AV日韩AV鸥美在线观看| 亚洲乱码中文字幕久久孕妇黑人| 色偷偷女男人的天堂亚洲网| 亚洲国产精久久久久久久| 亚洲精品久久久www | 亚洲无线一二三四区手机| 亚洲剧情在线观看| 亚洲91精品麻豆国产系列在线 | 亚洲欧洲日本精品| 亚洲精品自产拍在线观看| 国产V亚洲V天堂A无码| 亚洲AV无码第一区二区三区| 亚洲精品无码久久久| 国产av无码专区亚洲av果冻传媒| 亚洲国产av一区二区三区| 亚洲Av无码乱码在线znlu| 亚洲av区一区二区三| 亚洲精品第一国产综合精品99| 亚洲国产成人久久综合一区77| 亚洲欧洲中文日韩av乱码| 亚洲综合无码精品一区二区三区| 国产亚洲精品a在线观看app| 久久久久亚洲av无码尤物| 亚洲电影免费观看| 日韩精品电影一区亚洲| 亚洲人成色77777在线观看大| 亚洲色欲一区二区三区在线观看 | 亚洲自国产拍揄拍| 亚洲精品9999久久久久无码| 亚洲av成人一区二区三区在线观看| 区三区激情福利综合中文字幕在线一区亚洲视频1 | 在线亚洲97se亚洲综合在线| 亚洲精品第一国产综合境外资源|