干货速递,baiduBML主动超参搜寻技术原理揭秘与实战攻略!

在人工智能领域,算法工程师在训练神经网络模型的过程中,完成网络构建和准备好训练数据后,往往需要对模型从事各种参数优化,以获得更好的模型成效。但调参其实并不简单,背后往往是通宵达旦的参数调试与成效验证,并需要做大量的实验,不仅耗时也耗费大量算力。这个时候,往往想尝试主动超参搜寻,但又开始担心算力要求所带来的额外训练成本。莫慌!baidu全功能AI开发平台BML带着免费算力额度与主动超参搜寻能力来了!先来介绍baidu最近全新升级的BML,何方神圣?全功能AI开发平台BML(Baidu Machine Learning) ,是为企

在人工智能领域,算法工程师在训练神经网络模型的过程中,完成网络构建和准备好训练数据后,往往需要对模型从事各种参数优化,以获得更好的模型成效。但调参其实并不简单,背后往往是通宵达旦的参数调试与成效验证,并需要做大量的实验,不仅耗时也耗费大量算力。

这个时候,往往想尝试主动超参搜寻,但又开始担心算力要求所带来的额外训练成本。

莫慌!baidu全功能AI开发平台BML带着免费算力额度与主动超参搜寻能力来了!

先来介绍baidu最近全新升级的BML,何方神圣?

全功能AI开发平台BML(Baidu Machine Learning) ,是为企业和个人开发者提供机器学习和深度学习一站式AI开发服务,并提供高性价比的算力资源,助力企业快速构建高精度AI应用。BML提供了从数据采集、数据清洗、数据标注、智能标注与多人标注、模型训练生产到模型管理、云端及离线推理服务管理等AI开发过程的全生命周期管理功能。

干货速递,baiduBML主动超参搜寻技术原理揭秘与实战攻略!

BML内置baidu超大规模预训练模型,只需少量数据即可获得高精度模型成效。目前,BML已经支持脚本调参、Notebook与自定义作业这三种开发建模方式,灵活匹配企业开发者的开发习惯。

在目前的脚本调参运用流程中,BML已经预设了模型超参数,但由于用户数据集内容丰富多样,预设的超参数很难在所有的数据集上得到很好的训练成效。用户可以自行调整超参数,但是手动调参十分耗费人力。为了减轻用户在调参上的精力投入, BML的研发大佬们日夜奋战,为用户上线了主动超参搜寻的功能,帮助用户主动搜寻成效较优的超参组合,省去调参的烦恼。

话不多说,进入本次正题,baiduBML的主动超参搜寻技术有哪些亮点?

提供多种搜寻算法

所谓“超参”,有别于模型网络结构内部各层的参数,是指需要人为调整,通过人为经验设置来提高模型成效的参数,常见的超参包括学习率(learning_rate)、批样本数量(batch_size)等。在超参搜寻的过程中,由于模型复杂、计算成本很高,且每个超参数都有较大的取值范围,导致搜寻空间十分庞大,因此我们需要有“主动”超参搜寻。

主动超参搜寻相比于人工调参,主要是省去了人工观察实验结果并调整参数再考查的过程,主动超参搜寻把这个步骤用各种搜寻算法来代替。

BML提供的搜寻算法有:

1.  随机搜寻

顾名思义是在参数变量的变化区间中随机采样参数组合成候选集,应用候选集从事训练和成效对比。随机搜寻是普适的作用较高的搜寻方法,通常作为基线标准,适用于对作用要求较高的情况,但不能保证一定能搜寻到最佳的超参。

2.  贝叶斯搜寻

在搜寻空间中随机选取初始超参数点,然后根据已有超参对应的指标结果拟合概率模型,通过概率模型推测最佳超参点,接着再考查得到这些超参点的结果。如此反复优化,再有限考查次数中搜寻出合适的超参数。基于模型的序贯优化方法(SMBO, Sequential Model-Based Optimization)是贝叶斯搜寻的一种范式,包括两个部分: 代理模型(surrogate model) 和 采集函数(acquisition function)。根据代理模型和采集函数的不同,贝叶斯搜寻方法也有许多实现形式,其中TPE(Tree-structured Parzen Estimator)是一种全局探索能力较佳的方法,采用核密度估计方法(KDE, Kernel Density Estimation)生成代理模型,采用EI(Expected Improvement)作为其采集函数生成新采样点。

3.  退化算法

退化算法是一种基于种群概念的超参搜寻策略,把超参设置装备摆设视为一个种群,并行优化多个种群并在种群内部从事优胜劣汰的筛选,最终输出最佳模型。这个过程(如下图所示)是从遗传算法获得的灵感,种群的初始化采用随机的方式生成,集体的优胜劣汰具体指利用(exploit)和探索(explore)两个步骤,不仅可能会从表现较好的集体中复制参数,它还能通过随机扰动修正当前的值而探索新的超参数组合。

干货速递,baiduBML主动超参搜寻技术原理揭秘与实战攻略!

图片来源:https://arxiv.org/pdf/1711.09846v1.pdf

baidu创新提出了随机微分方程无梯度优化算法PSHE2,采用哈密尔顿动力系统搜寻参数空间中“势能”最低的点以替代随机扰动,加速迭代收敛。超参搜寻过程中想要求得最优解就是要找到更新超参数组合的方法,即如何更新超参数,才能让算法更快更好的收敛到最优解。PSHE2算法根据超参数本身历史的最优,在一定随机扰动的情况下决定下一步的更新方向。过程如图所示。

干货速递,baiduBML主动超参搜寻技术原理揭秘与实战攻略!

图片来源:https://github.com/PaddlePaddle/PaddleHub/blob/release/v1.5/docs/tutorial/autofinetune.md

方法网格搜寻随机搜寻贝叶斯搜寻退化算法优点实现简单,成效取决于用户设置网格间隔大小多参数联合搜寻时,增大了每个参数的搜寻范围,提高搜寻作用。搜寻迭代次数少,作用高,借助已有采样点通过贝叶斯估计最佳超参。降低每轮迭代训练时间,将计算资源集中于参数搜寻上,通过复用历史表现好的集体的预训练参数来加快收敛缺陷消耗计算资源成效不稳定可能陷入局部最优如果超参导致模型结构变化等因素导致不能加载预训练参数时则不适用

主动超参搜寻方法比较

上表归纳了一下这些搜寻方法的优缺点。总之,网格搜寻和随机搜寻实现上比较简单,不利用先验知识选择下一组超参数,其中随机搜寻作用相对较高。贝叶斯搜寻和退化算法需要用前一轮的信息从事迭代搜寻,搜寻作用明显提升。

BML主动超参搜寻的实现:系统架构

BML主动超参搜寻功能基于baidu自研主动超参搜寻服务,服务运行过程如下图所示,依靠baidu智能云CCE算力,支持多主动搜寻义务并发。为了提供一个“好用”的主动超参搜寻服务,架构实现时在并发搜寻作用提升和系统容错方面着重从事了考虑。

干货速递,baiduBML主动超参搜寻技术原理揭秘与实战攻略!

一次超参搜寻义务包含以下流程:

1. 业务平台把超参搜寻义务的用户设置装备摆设信息提交到超参搜寻服务,会创建一次搜寻实验(Experiment),并记录到db中。

2. 搜寻服务把义务提交到Experiment controller, 由controller初始化创建Trial管理模块,并负责Experiment生命周期的管理。

3. Trial是具体的训练考查,一个Experiment会产生多个Trial来探索不同超参数组合的最终成效。Tuner是超参生成的模块,会根据选择的超参搜寻算法,推荐下一个Trial所运用的超参值。在Trial管理模块中,Exp Manager会负责生成若干Trial, 向Tuner请求具体的考查超参数,并向Trial Scheduler发送Trial义务信息。

4. Trial Scheduler会与底层资源交互实际启动Trial。Trial Scheduler会管理所有Trial的生命周期。

5. 每个Trial运行完成后,会向Exp Manager汇报指标等信息,用于汇报给tuner并记录到db。

BML主动超参搜寻主要有以下特性:

1、简单易用:相比于同类产品的复杂设置装备摆设,BML在为用户提供必须的开放设置装备摆设项的前提下,尽可能减少超参设置装备摆设的繁琐程度,凡是可以主动化的工作均不对用户可见。

2、模型丰富:与脚本调参上提供的丰富的模型打通,可以直接设置装备摆设化完成相应义务的搜寻,甚至不用写代码!

3、容错机制:主动超参搜寻义务具有模型训练次数多、义务整体运行时间长的特点,受显存资源限制,有些搜寻出的超参数无法成功运行。兼顾搜寻成效和可用产出,增设模型训练失败次数阈值,把Experiment和Trial这样多义务的复杂状态管理分拆到各层模块中,尽可能为用户提供搜寻出的可用结果。

4、支持早停与采样:搜寻框架内部支持主动早停,当达到设定的预期结果时即可主动停止;同时也支持在界面上手动提前停止,减少用户的等待时间,避免不必要的算力消耗。支持用户选择大数据集时主动从事采样,减少超参搜寻训练耗时,以尽快搜寻出合适的超参为上。

5、高效分布式智能搜寻:深度学习模型的训练时间往往较长,对于大规模数据集或者复杂模型的搜寻义务,单机串行的搜寻方式几乎不可用。我们注意到有的搜寻算法中每次考查是可以独立从事训练的(如网格搜寻、随机搜寻),可以直接对所有考查并行化;有的搜寻算法虽然本质基于迭代,但每个迭代中的考查运行仍然是相互独立的,因此我们可以在迭代内部从事并行化搜寻。BML内部实现了智能调度系统,根据不同的算法类型,采用不同的并发策略,可以大幅度降低整体搜寻时间。

上手实操:主动超参搜寻运用攻略

1. 首先点击 https://ai.baidu.com/bml/app/project/script/list 创建一个脚本调参项目,如果已经有项目了,直接用就可以!目前支持超参搜寻的项目类型有图像分类(单标签和多标签)及物体检测,创建对应类型的项目就可以了

2. 在项目里新建义务,设置装备摆设好义务的网络、数据、脚本之后,就可以看到“设置装备摆设超参数”的选项了。这里如果已经有超参搜寻的结果,可以直接勾选“已有超参搜寻结果”来运用,如果第一次运用还没有,就直接选择“主动超参搜寻”。

3. 目前BML支持了三种超参搜寻算法,如图,分别是贝叶斯搜寻、随机搜寻和退化算法,可以根据自己需要选择一种来搜寻。具体设置装备摆设项说明可以参考技术文档。

干货速递,baiduBML主动超参搜寻技术原理揭秘与实战攻略!

3.1 贝叶斯搜寻的参数说明

干货速递,baiduBML主动超参搜寻技术原理揭秘与实战攻略!

【初始点数量】代表贝叶斯搜寻中,初始化时参数点的数量,该算法基于这些参数信息推测最优点 ,填写范围1-20。

【最大并发量】贝叶斯搜寻中,同时从事考查的数量,并发量越大,搜寻作用越高,填写范围1-20。不过这个并发量也会受限于页面最下方选择的GPU数量,实际并发量是二者的较小值。

【超参范围设置】:可以是默许设置装备摆设,也可以手动设置装备摆设。默许的话baidu的工程师们已经帮我们对不同网络、GPU卡型设置了一个基本靠谱的搜寻范围,直接用就可以。当然也可以手动设置装备摆设,可以自定义各个超参的范围,可以看到物体检测支持以下这些超参自定义搜寻范围:

干货速递,baiduBML主动超参搜寻技术原理揭秘与实战攻略!

【最大搜寻次数】:是指最多组合出多少组超参并跑考查,当然有可能会因为提前达到目标而停止,节约费用。

【数据采样比例】:运用超参搜寻时,会对原始数据集从事采样后再训练,加快搜寻速度。当数据集并不大时,不推荐采样哟,可能会影响最终成效,只有大数据量时才有运用采样的必要。

【最高mAP/最高精确率】:是指大家期望模型成效可以达到的mAP(物体检测)或准确率(图像分类)的值,当考查中达到这个值了搜寻就会停止,避免后续浪费搜寻时间。

3.2 随机搜寻参数说明

随机搜寻最简单啦,就不需要再额外设置装备摆设算法相关的参数了,其它公用的选项和贝叶斯搜寻的含义是一样的,参考贝叶斯搜寻即可。

3.3 退化算法参数说明

干货速递,baiduBML主动超参搜寻技术原理揭秘与实战攻略!

退化算法是一种成效较好的算法,应用此算法时也需要从事较多的选项设置:【迭代轮数】:退化算法运行中迭代的轮数,范围5-50。【扰动间隔】:退化算法每隔几个epoch就会从事随机扰动,利用随机因素防止算法结果收敛于局部最优解。【扰动比例】:类似于染色体交叉的形式,迭代中一个种群内最好与最坏的集体依据扰动比例从事交叉。【随机初始化概率】:在扰动中,有一定概率对集体的超参数从事初始化。【种群集体数量】:一个集体代表一种超参数设置,一个种群中包含多个集体。其它选项和贝叶斯搜寻的含义一致,也不重复了。退化算法的设置装备摆设需要对算法的原理有一定的了解,如果对算法不明白的,就直接用baidu给的默许值吧!

4. 超参的选项设置完成了,最后选择GPU卡类型和数量,以及最大搜寻时间,就可以提交义务啦!这里默许的搜寻时间是24小时,毕竟超参搜寻会运行多次考查,时间会比较长,需要耐心等待,当然如果选的GPU卡数越多,并发考查数就越高,从提交义务到搜寻完成的耗时就会变少,这是显而易见的

5. 义务提交之后,过一会当义务进入“超参搜寻中”的状态时,就可以看到各个考查的进度了,包括各个考查的状态、日志和准确率(mAP)

干货速递,baiduBML主动超参搜寻技术原理揭秘与实战攻略!

6. 超参搜寻训练完成后,成效最优的5次考查可以看到详细的评估结果,也能用于后续的成效校验和发布。当然,如果在超参搜寻时对数据从事了采样,这时候可以重新发起一次训练义务,用这次搜寻出来成效满意的超参数从事全量数据训练,从而获得完整数据的模型成效

成效才是硬道理:超参搜寻成效提升高达20%+

我们对比了图像分类、物体检测、实例分割等义务在运用普通脚本调参和超参搜寻的成效情况,以下是5个不同数据集在BML平台上分别运用默许脚本调参参数、超参搜寻运用退化算法、超参搜寻运用贝叶斯搜寻算法的成效对比。图中左边纵轴为模型的准确率,右边纵轴为超参搜寻算法在成效上提升的比例。可以看到在不同数据集上运用超参搜寻后成效均有提升,在默许参数精度已经超过85%的情况下,运用超参搜寻仍能提升约5%,在默许参数成效较差的情况下,超参搜寻的提升成效更为明显,可高达22%。

干货速递,baiduBML主动超参搜寻技术原理揭秘与实战攻略!

在常规操作下,可用的深度学习主动超参搜寻由于需要集群计算资源,往往被认为只有大公司才能设置装备摆设,普通开发者难以上手尝试。通过运用baidu全功能AI开发平台BML,预算有限也有机会用上主动超参搜寻,开发作用瞬间搭上火箭速度,摆脱人力“炼丹”的束缚。BML新用户现在还提供100小时免费P4显卡算力,羊毛在向你招手,快来薅一把!

BML官网:https://ai.baidu.com/bml/

干货速递,baiduBML主动超参搜寻技术原理揭秘与实战攻略!

原创文章,作者:百度大脑,如若转载,请注明出处:https://www.iaiol.com/news/gan-huo-su-di-baidubml-zhu-dong-chao-can-sou-xun-ji-shu/

(0)
上一篇 2021年 8月 11日 下午3:12
下一篇 2021年 8月 11日 下午3:43

相关推荐

  • 论文分享 | 丢弃卷积,纯Transformer建立GAN收集

    最近,计算机视觉(CV)领域的钻研者对 Transformer 产生了极大的兴趣并陆续取得了不少突破。比如,2020 年 5 月,Facebook AI 的钻研者推出了 Transformer 的视觉版本——Detection Transformer,在性能上媲美当时的 SOTA 方法,但架构得到了极大简化;10 月,谷歌提出了 Vision Transformer (ViT),可以直接利用 transformer 对图像进行分类,而不需要卷积收集。

    2021年 2月 26日
  • 归一化提高预训练、缓解梯度不匹配,Facebook的模型超越GPT-3

    来自 Facebook AI 的研究者提出了 NormFormer,该模型能够更快地达到目标预训练的蛊惑度,更好地实现预训练蛊惑度和下游义务功能。

    2021年 10月 27日
  • 茂密化 芯力量|墨芯参展首日S4估计卡机能表现亮眼

    2022年7月15日,墨芯人工智能参展厦门半导体峰会,首席科学家严恩勖发表报告,展示墨芯如何用茂密化推动AI估计前沿和最新的产业进展。16日墨芯获评“最具投资价值奖”。集微峰会被誉为“半导体业风向标”,设特色“芯力量”展区和EDA展区。墨芯位于“芯力量”展区核心位置——76号展台。   墨芯作为茂密化估计引领者,致力于提供云端和终端AI估计平台和服务,打造软硬共同的新一代智能计

    2022年 8月 17日
  • 千字1.5元、研究生学位论文3次收费,知网凋谢集体查重办事,网友:「卒业了才凋谢」

    不过,对于 2022 届的卒业生来说,知网的这一决定来得似乎晚了一点。

    2022年 6月 12日
  • 冰鉴科技完成2.28亿元C2轮融资,国创中鼎领投

    上海冰鉴信息科技有限公司(以下简称冰鉴科技)近日宣布完成2.28亿元C2轮融资,该轮融资由国创中鼎领投,东方富海、曦域资本跟投。投中资本担任C2轮独家投资顾问。2020年底冰鉴科技宣布完成C1轮投资,C1和C2合称为C轮融资。本轮融资主要用于扩展研发团队,对上下游进行投资并购,以及完善公司生态建设和业务版图。冰鉴科技是一家利用人工智能手艺提供企业级效劳的高科技公司。经过近六年的发展,已成长为人工智能企业效劳畛域尤其是风控畛域的领军企业。同时,以金融行业效劳为根基,冰鉴科技不竭拓展人工智能运用边界,将领先的核心手艺转

    2021年 4月 12日
  • 刷题太遭罪怎么办?这个算法基地专为小白量身打造,还带动画

    如何有效地刷算法题?刷题小白最新打卡地。算法很重要,但算法也是学起来最难,最令人生畏的。算法千千万,不知该如何下手?经常看到有人抱怨:刚开始刷题时,自己很迷茫,不知道从何刷起,也看不懂别人写的题解。思绪飞来飞去,有时候以为是这个知识点重要,但有时又认为自己走错了路,结果学了半天,越刷越乱,时间、经历都白白浪费。其实,学算法,刷题蛮干是不行的,需要遵循科学的方法。学习算法可能并不只是拼智商,可以通过后天的学习进行掌握,这就需要讲究技巧。方法找对了,可以起到事半功倍的效果。近日,在 Github 上就有人开源了一个项目

    2021年 3月 25日
  • 1.8M超轻量方向检测模型NanoDet,比YOLO跑得快,上线两天Star量超500

    如何把 anchor-free 模型移植到静止端或嵌入式设备?这个项目对单阶段检测模型三大模块(Head、Neck、Backbone)进行轻量化,得到模型大小仅 1.8m、速度超快的轻量级模型 NanoDet-m。

    2020年 11月 24日
  • 详解AI加速器(一):2012年的AlexNet到底做对了什么?

    AI、机器进修、深度进修的概念可以追溯到几十年前,然而,它们在过去的十几年里才真正流行起来,这是为什么呢?AlexNet 的基本结构和之前的 CNN 架构也没有本质区别,为什么就能一鸣惊人?在这一系列文章中,前苹果、飞利浦、Mellanox(现属英伟达)工程师、普林斯顿大学博士 Adi Fuchs 尝试从 AI 加速器的角度为我们寻找这些问题的答案。当代世界正在经历一场革命,人类的体验从未与科技如此紧密地结合在一起。过去,科技公司通过观察用户行为、研究市场趋势,在一个通常必要数月甚至数年时候的周期中优化产品线来改进

    2022年 1月 13日
  • “智能定损”应用现状介绍

    在车险理赔行业,智能定损的概念在2017年率先提出,经历了4年的发展,深源恒际首次将图像鉴别技术通过小顺序在【客户自决】定损场景的产物落地应用,在某产险公司日均处理案件量达1000+,准确率达到85%。

    2022年 1月 11日
  • AI模型被「骗」怎么破?《燃烧吧!天才程序员》冠军团队解决方案出炉

    前段时间,一档名为《燃烧吧!天才程序员》的竞赛类综艺让「程序员」这一群体成功破圈,也呈现了 AI 在解决实际问题的过程中面临的一些挑战,如数据集中存在对立样本、图象中存在噪声等。在本文中,CLS 战队(大赛头名团队)的优秀选手、奥比中光算法工程师埼玉详细解读了他们在竞争中用到的解决方案。近日,由蚂蚁集团、清华大学等组织共同协办的首届「Inclusion|A-tech 科技精英赛」(以下简称 A-tech 大赛)圆满落幕。奥比中光科技集团股份有限公司 (以下简称「奥比中光」) 研究院 SDK 组负责人小蛮腰、算法工程

    2021年 1月 21日

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注