论文提出了挪动端的神经网络架构搜寻办法,该办法次要有两个思路,首先应用多指标优化办法将模型在理论设施上的耗时融入搜寻中,而后应用合成的档次搜寻空间,来让网络放弃层多样性的同时,搜寻空间仍然很简洁,可能使得搜寻的模型在准确率和耗时中有更好的trade off

起源:【晓飞的算法工程笔记】 公众号

论文: MnasNet: Platform-Aware Neural Architecture Search for Mobile

  • 论文地址:https://arxiv.org/abs/1807.11626
  • 代码地址:https://github.com/tensorflow/tpu/tree/master/models/official/mnasnet

Introduction


  在设计挪动端卷积网络时,经常会面临着速度与准确率的取舍问题,为了设计更好的挪动端卷积网络,论文提出挪动网络的神经网络架构搜寻办法,大略步骤如图1所示。比照之前的办法,该办法主奉献有3点:

  • 将设计问题转化为多指标优化问题(multi-objective optimization),同时思考准确率和理论推理耗时。因为计算量FLOPS其实和理论推理耗时并不总是统一的(MobileNet,575M,113ms vs NASNet,564 M,183ms),所以论文通过理论挪动设施上运行来测量推理耗时
  • 之前的搜寻办法大都先搜寻最优的单元,而后重叠成网络,尽管这样能优化搜寻空间,但克制了层多样性。为了解决这个问题,论文提出合成的档次搜寻空间(factorized hierarchical search space),使得层能存在构造差别的同时,依然很好地均衡灵活性和搜寻空间大小

  • 在合乎挪动端应用的前提下,达到ImageNet和COCO的SOTA,且速度更快,模型更轻量。如图2所示,在准确率更高的前提下,MansNet速度比MobieNet和NASNet-A别离快1.8倍和2.3倍

Problem Formulation


  对于模型$m$,$ACC(m)$为模型准确率,$LAT(m)$为指标挪动平台的推理耗时,$T$为指标耗时,公式1为在合乎耗时前提下,最大化准确率

  但公式1仅最优准确率,没有进行多指标优化(multiple Pareto optimal),于是论文改用公式2的加权乘积办法来近似进行多指标优化

  $w$是权重因子,$\alpha$和$\beta$为利用特定常数(application-specific constants),这两个值的设定是用来保障合乎accuracy-latency trade-offs的有类似的reward,即高准确率稍高耗时和稍低准确率低耗时有雷同的reward。例如,凭教训认为两倍耗时通常能带来5%准确率晋升,对于模型M1(耗时$l$,准确率$a$),模型M2(耗时$2l$,准确率$a(1+5\%)$),他们应该有雷同的reward:$Reward(M2)=a\cdot (1+5\%)\cdot (2l/T)^\beta\approx Reward(M1)=a\cdot (l/T)^\beta$,失去$\beta=-0.07$。前面试验没阐明都应用$\alpha=\beta=-0.07$

  图3为不同常数下的指标函数曲线,上图$(\alpha=0,\beta=-1)$意味着合乎耗时的间接输入准确率,超过耗时的则鼎力惩办,下图$(\alpha=\beta=-0.07)$则是将耗时作为软束缚,平滑地调整指标函数

Mobile Neural Architecture Search


Factorized Hierarchical Search Space

  论文提出别离的档次搜寻空间,整体结构如图4所示,将卷积神经网络模型分解成独立的块(block),逐渐升高块的输出以及减少块中的卷积核数。每个块进行独立块搜寻,每个块蕴含多个雷同的层,由块搜寻来决定。搜寻的目标是基于输出和输入的大小,抉择最合适的算子以及参数(kernal size, filter size)来达到更好的accurate-latency trade-off

  每个块的子搜寻蕴含下面6个步骤,例如图4中的block 4,每层都为inverted bottleneck 5x5 convolution和residual skip path,共$N_4$层

  搜寻空间抉择应用MobileNetV2作为参考,图4的block数与MobileNetV2对应,MobileNetV2的构造如上。在MobileNetV2的根底上,每个block的layer数量进行$\{0,+1,-1\}$进行加减,而卷积核数则抉择$\{0.75,1.0,1.25\}$
  论文提出的合成的档次搜寻空间对于均衡层多样性和搜寻空间大小有特地的益处,假如共$B$blocks,每个block的子搜寻空间大小为$S$,均匀每个block有$N$层,总共的搜寻空间则为$S^B$,比照按层搜寻的空间$S^{B*N}$小了很多

Search Algorithm

  论文应用NAS的强化学习办法来优化公式2的rewadr冀望,在每一轮,controller依据以后参数$\theta$一批模型,每个模型$m$训练后取得准确率$ACC(m)$以及理论推理耗时$LAT(m)$,依据公式2失去reward,而后应用Proximal Policy Optimization来更新controller的参数$\theta$最大化公式5

Experimental Setup


  论文先尝试在CIFAR-10上进行架构搜寻,而后迁徙到大数据集上,然而发现这样不见效,因为思考了理论耗时,而利用到大数据集时,网络通常须要放大,耗时就不精确了。因而,论文间接在ImageNet上进行搜寻,但每个模型只训练5轮来减速。RNN controller与NASNet保持一致,总共须要64 TPUv2搜寻4.5天,每个模型应用Pixel 1手机进行耗时测试,最终大略测试了8K个模型,别离抉择了top 15和top 1模型进行残缺的ImageNet训练以及COCO迁徙,输出图片的分辨率别离为$224\times 224$和$320\times 320$

Results


ImageNet Classification Performance

  $T=75ms$,$\alpha=\beta=-0.07$,后果如Table 1所示,MnasNet比MobileNetV2(1.4)快1.8倍,准0.5%,比NASNet-A快2.3倍,准1.2%,而稍大的模型MnasNet-A3比ResNet-50准,但少用了4.8x参数和10x计算量

  因为之前的办法没有应用SE模块,论文补充了个比照训练,MnasNet成果仍然比之前的办法要好

Model Scaling Performance

  缩放模型是调整准确率和耗时的来适应不同设施的常见操作,能够应用depth multiplier(如同叫width multiplier?)来缩放每层的channels数,也能够间接升高输出图片的分辨率。从图5能够看到,MansNet始终保持着比MobileNetV2好的体现

  此外,论文提出的办法可能搜寻不同耗时的模型,为了比拟性能,论文比照了缩放模型和搜寻模型的准确率。从Table4看出,搜寻进去的模型有更好的准确率

COCO Object Detection Performance

  论文比照了MnasNet在COCO上的体现,能够看到MnasNet准确率更高,且少用了7.4x参数和42x计算量

Ablation Study and Discussion


Soft vs. Hard Latency Constraint

  多指标搜寻办法容许通过设定$\alpha$和$\beta$进行hard和soft的耗时束缚,图6展现了$(\alpha=0,\beta=-1)$和$(\alpha=\beta=-0.07)$,指标耗时为75ms,能够看到soft搜寻更广的区域,构建了很多靠近75ms耗时的模型,也构建了更多小于40ms和大于110ms的模型

Disentangling Search Space and Reward

  论文将多指标优化和合成的档次搜寻空间进行比照试验,从后果来看,多指标优化能很好均衡低耗和准确率,而论文提出的搜寻空间能同时升高耗时和进步准确率

MnasNet Architecture and Layer Diversity

  图7(a)为MnasNet-A1的构造,蕴含了不同的层构造,能够看到该网络同时应用了5x5和3x3的卷积,之前的办法都只应用了3x3卷积

  Table 6展现了MansNet模型及其变体,变体上仅用某一层的来构建网络,能够看到MnasNet在准确率和耗时上有了更好的trade-off

CONCLUSION


  论文提出了挪动端的神经网络架构搜寻办法,该办法应用多指标优化办法将模型在理论设施上的耗时融入搜寻中,可能使得搜寻的模型在准确率和耗时中有更好的trade off。另外该办法应用合成的档次搜寻空间,来让网络放弃层多样性的同时,搜寻空间仍然很简洁,也进步了搜寻网络的准确率。从试验后果来看,论文搜寻到的网络MansNet在准确率和耗时上都比目前的人工构建网络和主动搜寻网络要好



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