作者 | 青暮
NeurIPS 2020 于12月6日至12月12日在线上举行,除了论文演讲以及各大workshop之外,竞赛也是企业和高校争夺荣誉和进行学术交流的一大平台。
在今年的NeurIPS赛场上,AI科技评论发现了一个颇有意思的竞赛:参赛者始终不知道目标任务是什么,但还是要凭借开发的算法在这些任务上争夺第一名,并且开发过程中只能收到极少量的反馈信息。难道,这是要让选手开发通用智能算法?当然不是。此外值得一提的是,选手最终提交的代码也不能自己运行,得交给竞赛组织方去跑。
参赛选手的这种境地,就好像在赛车中不知道地形,就得决定选用什么车,并选定自动驾驶方案,选定了自动驾驶方案后,就只能听之任之,没有任何干预机会。在赛车过程中,选手也是完全摸黑在跑,组织方偶尔会告诉选手当前有没有跑对路线。怎么样,是不是感觉很摸不着头脑?
谜底揭晓:实际上,他们挑战的任务叫做“黑盒优化”。黑盒优化与AutoML、超参数优化相关,比如网格搜索、贝叶斯优化就是常见的黑盒优化算法。由于黑盒优化几乎与所有机器学习算法(特别是深度学习)以及机器学习之外的许多应用程序中的超参数调整都息息相关,因此这一竞赛有着广泛的影响。
除了AutoML和超参数优化以外,黑盒优化在分子设计、材料科学、电厂调试、数据中心冷却、芯片设计等问题上也有着大量应用。
这场竞赛名为NeurIPS2020 “Black box optimization for machine learning”(以下简称black box竞赛),由Twitter、Facebook、SigOpt、Valohai及第四范式共同举办,组织方表示,“这项竞赛旨在探索贝叶斯优化在AI模型调优中的最佳实践。”
赛事共有来自全球的70支队伍参赛,包括来自NVIDIA、IBM、Jetbrain、牛津大学的研究人员。竞赛于7月1日开始,最终方案的提交截止日期为10月15日,获奖名单则于11月15日公布。
华为诺亚方舟实验室团队在本次竞赛中获得冠军,团队成员来自华为在深圳、北京、伦敦的研究所。华为获得的总得分是93.519,而随机搜索算法的总得分是75.404。
竞赛最终排行榜
以下是此次参赛的团队成员,包括来自华为诺亚方舟实验室总部的决策与推理实验室首席科学家汪军,决策与推理实验室主任郝建业,研究员吕文龙、王智,以及来自实验室欧洲分部即华为伦敦研究所的研究员Alexander I. Cowen-Rivers、Rasul Tutunov、Haitham Bou Ammar。
1
黑盒优化是什么
那么黑盒优化是什么概念呢?我们就从超参数优化的角度来解释。大部分机器学习算法都拥有超参数,这些超参数可以分为两种类型,即定义模型及结构本身的参数,以及目标函数与优化算法(求解器)所需的参数。前者用于训练和预测阶段,后者只用于训练阶段。
超参数的确定一般是通过在训练时先人工设定初始值,然后通过反复试验迭代更新,从而获得好的设置,该过程耗费的时间和人力成本是巨大的。如何确定超参数的值成为了AutoML中的重要问题,其核心是自动搜索最优超参数值,从而最大化预期目标。因此这个问题可以抽象化为函数极值问题,其中优化变量为超参数,函数值为机器学习模型的性能指标。
黑盒优化问题的目标函数的表达式未知,只能根据离散的自变量取值得到对应的目标函数值。超参数优化就属于黑盒优化问题,我们在优化过程中只能得到函数的输入和输出,而无法知道优化目标函数的表达式以及梯度信息,这给超参数优化带来了困难。
在某些机器学习模型中,超参数数量较大,是高维优化问题。模型的评估,也就是计算目标函数的值在很多情况下成本非常高,因为需要以某种超参数配置训练机器学习模型,然后在验证集上计算指标。
常用的超参数优化方法有网格搜索(Grid Search)、随机搜索(Random Search)、遗传算法、贝叶斯优化(Bayesian Optimization)等。
贝叶斯优化是一种流行的高效采样方法,可对目标函数进行无导数优化,评估过程需要几分钟或几小时才能完成。贝叶斯优化为目标函数建立了一个代理模型(通常是高斯过程),该模型提供了不确定性的度量。通过该代理模型,可以使用采集函数来确定最有希望评估的点。
贝叶斯优化有许多应用,机器学习模型的超参数调整(例如,深度神经网络)是最流行的应用之一。然而,代理模型的选择和获取函数的选择都与问题相关,而这场竞赛的目标是对大量不同问题进行不同方法的比较,并集中于贝叶斯优化在机器学习模型的超参数调优中的应用。
具体来说,这场竞赛的目的在于:
证明贝叶斯优化相对于随机搜索和网格搜索(仍然很常用)的优越性;
寻找能够并行的方法,这对于工业应用很有意义;
开发open loop优化器;
寻找简单的提升方法(易于部署)。
2
只有16次迭代机会
在这场“摸黑赛车”竞技中,参赛选手面对的困难非一般的机器学习竞赛可比。
black box竞赛的benchmark采用基于实际应用的机器学习超参优化问题。竞赛组织者提供了108个基于sklearn中模型及数据的超参调优任务供参赛者调试代码,但线上leaderboard的目标任务对参赛者保密。
对每个黑箱优化任务,待优化的参数包括整数、连续数值、布尔类型以及枚举类型。参赛算法只有16次迭代探索机会,在每次探索中需要给出8组并行配置,每次迭代算法运行时间限制为不超过40秒。参赛者有3个月的时间迭代他们的算法。
对于线上benchmark,参赛者需将代码提交至竞赛网站,算法在竞赛方虚拟环境中运行、评分。竞赛任务对参赛者完全黑盒,参赛者无法得知算法将在何种目标任务运行,也不知道待优化参数的维度以及参数类型。排行榜将根据对隐藏目标函数的优化性能来确定,优化程序必须无需人工干预即可运行。
在算法迭代过程中,竞赛网站仅显示算法在参赛任务上的评分,除此之外无法获得其他信息(在算法运行出错时,会显示算法抛出的异常数,但并无报错信息)。
竞赛组织方使用了基于AutoML挑战工作流和Bayesmark软件包构建的基准测试系统。基线则基于六个开源黑盒优化软件包的默认设置和随机搜索进行设置。
汪军表示,“这次竞赛主要的困难来自目标任务的完全黑盒状态,以及只有16次的限时迭代。这对算法及代码实现均提出较高要求。一方面要求算法具有较强通用性,从而在完全未知的黑箱任务上具备泛化性;另一方面,因为在线上运行时即使算法出错也不会有报错信息,代码实现必须保证稳健,亦需注意算法的数值稳定性问题。”
为解决上述问题,华为一方面采用诸如input warping,MACE等技术提升算法泛化性能,使模型动态适应高噪声、非平稳的目标函数;另一方面,在模型训练时,通过对GP参数设置先验分布来提高模型稳定性。
此外,通过对框架中主要的方面进行非常精细的检查,华为发现,这里面最关键的两个地方是:对输入的干扰噪声不平衡进行必要的处理,以及根据不同的任务来通过演化算法进行优化。
3
冠军方案——河伯
华为将其算法框架命名为HEBO(Heteroscedastic Evolutionary Bayesian Optimization,异方差演化贝叶斯优化)。
HEBO系统由Haitham、郝建业、汪军带队开发,首次出战即通过团队在鲁棒的优化方法上的积累获得成功。
HEBO读作“河伯”,团队取这个名字并不单纯是出于英文首字母提取的常规考虑,而是有着自己的“小心思”,他们还特地为此设计了logo。
汪军解释道:“河伯是黄河之神,我们取这个名字的寓意,是形容贝叶斯优化的曲线(或函数空间)就像黄河之水,而黄河之水有足够的势能去越过局部最优点,最后找到全局最优点。由于黑箱优化存在较大的不确定性,河伯这个名字也有着祈祷的寓意。”
接下来我们简单展开HEBO框架。一般而言,黑盒优化方法都需要经过以下步骤实现:
搜集初始随机数据;
拟合一个代理模型;
最大化采集函数;
评估黑箱算法。
具体来说,华为采用了贝叶斯优化中常用的高斯过程模型(Gaussian process, GP)作为代理模型,为解决non-stationary objective问题,引入input warping以及power transformation。
此外,研究者还提出了MACE(Multi-objective ACquisition function Ensemble),将贝叶斯优化中通用的EI、PI、UCB采集函数进行聚合,在这三种采集函数的帕累托前沿上进行采样,一方面避免单一采集函数的通用性问题,另一方面支持并行探索。
最后,研究者引入基于模型噪声的exploration方案,进一步提高探索效率,BO算法收敛至高性能区域后,根据目标任务噪声水平做自适应随机探索。
以下,华为总结了HEBO的不同组件的重要性。从三颗星到一颗星依次表示非常重要、重要、不太重要。这对解决实际任务有重要指导意义。
顺便简单提一下竞赛方案的总体情况。据组织方统计,排名Top-10的参赛队伍中有9个都使用了贝叶斯优化,并且有6个扩展了信頼域贝叶斯优化。
此外,参赛队伍还总结出,混合方法比单独使用一种方法要好得多,并且采用以下方式实现混合方法能获得较高的效率:
对每个建议使用不同GP kernel;
分别对一个优化器和另一个优化器采用50%的点;
考虑一个优化器的集合,并使用Thompson采样来识别最好的优化器;
用多个采集函数求解一个多目标的优化问题。
4
相关技术已落地
在这上百个优化任务的AI超参优化问题上,华为开发的算法显示了较强的竞争力,最终获得总分第一名。
华为并没有满足于竞赛上的名次抢夺,实际上,贝叶斯优化技术在华为已经有了广泛的应用。汪军表示,“除传统机器学习模型超参调优之外,贝叶斯优化还被应用于数据中心节能、无线多频段参数调优、自动驾驶、芯片设计优化等业务领域,是实现决策智能的一个非常广谱的工具。”
数据是信息时代的基石,5G、云计算及AI的发展也使数据中心面临更高的能耗挑战,对此,华为诺亚方舟实验室提出数据驱动的优化方案,根据数据中心环境进行动态调优,在保障冷却效果的同时有效降低数据中心能源消耗。
无线蜂窝网络由大量无线基站构成,不同基站因其所处环境、所服务用户不同,往往需要不同的基站配置以达成最佳用户体验,然而,一个城市可能有成千上万个基站,依赖人工经验的基站调优既需要耗费大量人力成本,也难以保证调优质量。对此,诺亚方舟实验室联合无线产品线,采用黑盒优化、强化学习等AI算法,自适应感知基站环境并对其调优。
汪军提到,“诺亚方舟实验室在数据驱动的优化方面,具有较强的技术积累及落地场景,同时,深圳、北京、伦敦同事组成的国际化团队使得大家得以集思广益。”
郝建业还提到,他们参加这场竞赛的初衷,是希望对诺亚实验室开发的优化器的通用性进行验证,同时促进贝叶斯优化领域团队交流,提升诺亚方舟实验室的学术影响力。
华为诺亚方舟实验室
华为诺亚方舟实验室成立于2012年,是华为公司从事人工智能基础研究的实验室,在深圳、香港、北京、上海、西安、北美和欧洲等城市设有分部。该实验室以长期的、有影响力的研究为驱动,致力于推动人工智能领域技术的创新和发展,并为华为的产品和服务提供技术支持。诺亚方舟实验室的研究方向包括计算机视觉、自然语言处理、搜索推荐、决策推理、人机交互、AI理论、高速计算等。
在理论研究方面,诺亚方舟实验室聚集了来自全球顶尖高校、优秀企业的研究员,同时与全球10+国家、25+大学、1000+研究人员保持连接。
2019年诺亚方舟实验室在各顶会中成绩斐然:CVPR 27篇、ICCV 19篇、AAAI 15篇、NeurIPS 7篇、ACL 6篇、 ACMMM 5篇,同时在2019 ACL上获唯一最佳长论文。在2020年的CVPR上,有39篇论文被接受。
在应用创新方面,诺亚方舟实验室聚焦于人工智能技术在各场景,包括网络智能、企业智能、终端智能、自动驾驶等新兴领域的应用,帮助公司解决商业场景中的挑战问题。
华为伦敦研究所
华为伦敦研究所成立于2018年,主体是诺亚方舟实验室在欧洲的分部。伦敦研究所致力于AI基础研究,包含计算视觉、强化学习、自然语言处理、深度学习理论等研究方向。
参考资料:
https://bbochallenge.com/virtualroom
转载请超链接注明:头条资讯 » 目标任务都不知道,还让我去竞争SOTA?记华为诺亚夺冠NeurIPS黑盒优化比赛
免责声明 :非本网注明原创的信息,皆为程序自动获取互联网,目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责;如此页面有侵犯到您的权益,请给站长发送邮件,并提供相关证明(版权证明、身份证正反面、侵权链接),站长将在收到邮件24小时内删除。