AABO:自适应Anchor设置优化,性能榨取的最后一步 | ECCV 2020 Spotlight

论文提出超参数优化方法AABO,该方法核心基于贝叶斯优化和Sub-Sample方法,能够自适应的搜索最优的anchor设置。从实验结果来看,AABO能够仅通过anchor设置优化,为SOTA目标检测方法带来1.4%~2.4%的性能提升

来源:晓飞的算法工程笔记 公众号

论文: AABO: Adaptive Anchor Box Optimization for Object Detection via Bayesian Sub-sampling

Introduction


  目前,主流的目标检测算法使用多种形状的anchor box作为初始预测,然后对anchor box进行回归调整,anchor box的配置是检测算法中十分重要的超参数。一般而言,anchor box的配置都是简单地通过人为指定,比如Faster R-CNN经典的的9种形状,也可以像YOLO一样通过k-means对数据集进行分析,得出特定的配置。
  为了人工设置超参数的环节,近年来很多关于超参数优化问题(HPO, hyper-parameter optimization)的研究,最有效的方法为贝叶斯优化(BO)和bandit-based策略。在分析了当前方法的优劣后,论文提出一种自适应的anchor box优化方法AABO,该方法基于贝叶斯优化和Sub-Sample方法,能够自动切高效地搜索到最优的anchor设置,榨干主流目标检测算法的潜力。

Relative Method

  这里先对论文经常提及的3种超参数搜索方法进行简单的介绍,方便下面的理解。

Bayesian optimization

  超参数的验证通常需要进行模型训练,会耗费大量的时间,所以贝叶斯优化的核心是使用替代模型(prior function)来代理目标模型,替代模型一般为概率分布模型。在得到替代模型后,使用采集函数(acquisition function)从候选集中选择一组合适的超参数进行测试,采集函数需要能够很好地平衡exploitation和exploration,测试则是使用目标模型进行正常的训练和验证,最后将当前结果加入观测数据中,用于训练替代模型,反复进行上述的操作。

  贝叶斯优化的完整流程如上面所示,在每轮的迭代中基于替代模型和采集函数获取一组超参数,然后使用目标模型进行验证,最后将验证结果加入观测数据集并更新替代模型。

Hyperband

  Bandit-based方法在限定资源的情况以高效的策略寻找最优超参数,资源可为时间、迭代次数等,而Hyperband是经典的bandit-based方法。Hyperband在Successive Halving算法的基础上进行了扩展,每次选取一批超参数进行多轮迭代,每轮迭代将资源B均匀地分配给待验证的超参数组合,每轮结束时保留1/\eta超参数组合进行下一轮。

  Hyperband的完整流程如上面所示,R为单超参数分组可分配的最大资源,包含两个循环,外循环负责控制每次验证的初始可分配的资源数r以及验证的分组数n,逐步增加r和减少n,分组由随机采样所得。内循环则进行Successive Halving算法,共进行s次迭代,逐步增加每组的可分配资源,并且每次保留最优的1/\eta分组。

BOHB

  实际上,上面的两种经典超参数方法都有其各自的优缺点,贝叶斯优化虽然搜索高效,但是容易陷入局部最优解,而Hyperband虽然搜索比较全面,但效率不够高。所以,BOHB结合了贝叶斯优化和Hyperband进行超参数优化。

图1

  BOHO的完整流程如上所示,可简单地认为将Hyperband的随机采样替换为贝叶斯优化进行采样,然后将Hyperband的超参数组合及其对应的输出加入到观测数据中,用于更新替代模型。需要注意的是,BOHO的替代模型是一个多维核密度估计(KDE)模型,类似于TPE(Tree Parzen Estimator)。如论文提到的,BOHO有一个比较严重的问题,对于难学习的样本,一般需要较长的训练周期,而由于BOHO使用HyperBand进行快速验证,所以不一定能完整地测出超参数的真实准确率,导致最终的结果有偏差。

Preliminary Analysis


Default Anchors Are Not Optimal

图2

  随机采样100组不同的anchor设置,每组包含3种尺寸和3种长宽比,然后与Faster R-CNN的默认anchor配置进行性能对比。结果如上图所示,红线为默认设置的性能,可以看到,默认设置并不是最优的。

Anchors Influence More Than RPN Structure

图3

  使用BOHB同时搜索RPN head结构以及anchor设置,RPN head的搜索空间如上图所示。

  结果如上表所示,可以看到anchor设置搜索带来的性能提升在一定程度上要高于RPN head结构搜索。

Search Space Optimization for Anchors


  论文通过分析目标bbox的分布特性,设计了紧密的搜索空间,主要基于以下两个特性。

Upper and Lower Limits of the Anchors

  论文对COCO数据集目标的尺寸和长宽比进行统计,并且得到了ratio的上界和下界:

图4

  统计结果如上图所示,其中蓝点为每个目标,黄线分别为上界和下界,中间的黑色长方形为BOHB搜索实验的搜索空间。可以看到,有一部分的搜索空间在上界和下界之外,是无效的搜索,所以约束搜索空间在上界和下界之间是有必要的。另外,图中有5个红色的框,是论文为RPN的每层设定的对应搜索空间,下面会提到。

Adaptive Feature-Map-Wised Search Space

图5

  论文对FPN每层的输出进行了统计,结果如上图所示。可以看到,不同层包含不同数量和不同形状的输出,随着层数的增加,anchor的数量越少,长宽比范围也越小。

图6

  基于上面的分析,论文设计了自适应FPN的搜索空间,图4中的5个红框与上下界之间的区域即为FPN每层对应的搜索空间。具体搜索如上图所示,每层都有独立的搜索空间,层数越大,anchor的数量、尺寸范围和长宽比范围越小。实际上,与图4的黑矩形框搜索空间对比,这种自适应FPN搜索空间更大,而且每层较小的搜索空间有助于HPO算法的更集中地进行搜索。

Bayesian Anchor Optimization via Sub-sampling


图7

  论文提出的搜索方法如图7所示,包含BO和子采样方法,分别用于选择潜在的设置以及为不同的设置分配不同的计算资源。整体思路和BOHB类似,将其中的Hyperband替换成了Sub-Sample方法。

Bayesian Optimization

  论文在实现时,BO模块与与BOHB类似,使用TPE(Tree Parzen Estimator)作为核密度函数进行建模,TPE包含两个概率密度函数:l(x)=p(y<\alpha | x, D)g(x)=p(y>\alpha | x, D),分别表示结果好的概率和结果差的概率,其中D=\{(x_0, y_0), \cdots, (x_n, y_n)\}为当前的观测数据,\alpha=min\{y_0, \cdots, y_n\}为当前观测数据的最优结果,采样时取l(x)/g(x)最大的超参数组合。需要注意的是,由于Hyperband只保证最种输出的结果的准确性,其它结果由于在中途就停止了,资源不足,输出不一定准确,直接用这些结果来对g(x)进行训练会造成很大的误差,所以需要一个更好的方法来解决这个问题。

Sub-Sample Method

  Sub-Sample也是bandit-based方法,在资源有限的情况,尽可能测试出优质的候选超参数组合。定义\mathcal{I}=\{1,2,\cdots, K\}为候选超参数组合,Sub-Sample方法基于观测数据Y^{(k)}_1进行选择, Y^{(k)}_1,Y^{(k)}_2,\cdots,1\le k\le K为当前观测点相对于上一个观测点的收益。

  Sub-Sample方法如上所示,首先对所有超参数组合进行最小资源b的测试,得到一批观测数据,然后每轮选取已使用资源最多超参数组合作为leader,若其它组合优于leader,则赋予其资源b,否则赋予leader资源b,判断当前组合k^{'}是否优于leader组合k有以下两个规则:

  第一条规则根据观测次数进行判断,c_n为非负单调阈值,用于控制每个超参数的最小观测次数,一般设为\sqrt{\log n}。第二条规则根据两个组合的近期收益进行判断,收益更高即为优。

Experiment


  COCO数据集上搜索到的最优anchor组合。

  在不同的数据集上进行对比。

  嵌入SOTA方法进行对比。

  与其它方法的对比实验。

Conclustion


  论文提出超参数优化方法AABO,该方法核心基于贝叶斯优化和Sub-Sample方法,能够自适应的搜索最优的anchor设置。从实验结果来看,AABO能够仅通过anchor设置优化,为SOTA目标检测方法带来1.4%~2.4%的性能提升。

参考内容



如果本文对你有帮助,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】

work-life balance.
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,117评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,963评论 1 290
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 107,897评论 0 240
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,805评论 0 203
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,208评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,535评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,797评论 2 311
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,493评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,215评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,477评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,988评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,325评论 2 252
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,971评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,055评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,807评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,544评论 2 271
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,455评论 2 266