解读小米MoGA:超过MobileNetV3的移动端GPU敏感型搜索

640


作者丨安静怡

学校丨吉林大学

研究方向丨神经网络模型压缩


近日,小米 AI 实验室 AutoML 团队展示了最新成果 MoGA (作者:初祥祥,张勃,许瑞军),超过由 Google Brain  Google AI 强强联合的代表作 MobileNetV3 ,并且公布了 MoGA 源码和预训练模型。MoGA 将真实场景的使用设备移动端 GPU 作为考量,模型可以直接服务于手机端视觉产品。


640?wx_fmt=png


640?wx_fmt=png


作为 Google Brain 首席科学家 Quoc Le 团队联合Google AI 的一流团队顶级成果,MobileNet 三部曲最新番 MobileNetV3月份一出江湖便备受瞩目,Github 上复现者层出不穷,但高质量精准复现可谓寥寥。
截止发稿,谷歌还未公布 V3 的模型代码,小米 AutoML 团队此时推出 MoGA ,在 ImageNet 1K 分类任务 200M 量级从移动端 GPU 维度超过 MobileNetV3。可以说,该方法基于 FairNAS 改进,且结果也超过了 FairNAS
源码: https://github.com/xiaomi-automl/MoGA


MoGA 这篇文章第一个新颖点是 Mobile GPU-AwareMoGA,即从实际使用角度,设计移动端 GPU 敏感的模型。过去的研究普遍只考虑移动端 CPU 的延迟,但实际使用的时候往往都运行在 GPU 上,两者的延迟并非简单的线性,不仅和硬件相关,还是框架实现相关,参见 Fig2 根据采用的搜索空间中随机采样的 100 个模型对应的 CPU/GPU 运行时间绘制的散点图。 

640?wx_fmt=png


另外,搜索空间(Search SpaceSS)是基于最新版的 MnasNet,融入了 squeeze-and-excitation 模块。值得注意的是,MobileNetV3 也采用这个  SS,而且加入 Hswish 非线性激活,MoGA 因此保持了V3 的各层输入输出和激活单元。
在 FairNAS 基础上,MoGA 每层的可选择运算模块(choice block)从 6 个增加到了 12 个,超网的训练依然很快收敛。


640?wx_fmt=png


文章的第二个观点来自于对 MobileNet 三部曲的分析 ,从V1 到 V3,各项指标均在提升,但模型参数量反而增多。这对设计多目标的优化条件给出了方向。文章认为,除了业务指标 Top-1 Acc,模型在设备端的运行时间是作为衡量模型的关键指标,而非乘加数,所以在目标中剔除乘加数。
另外,之前的方法都是在尽量压缩参数量,这对多目标优化极为不利。在非损人不能利己的帕累托边界上,必须有舍才有得。文章认为,参数量是模型能力的表征,所以选择鼓励增加参数量反而能增大搜索范围,从而获得高参数但低时延的模型。

640?wx_fmt=png


文章定量地比较了 MoGA 三款模型在移动端 CPU  GPU 的各算子占比统计,证实了相同模型对不同的硬件上表现并不相同,Depthwise 和普通卷积在 CPU 上要花更多的比重,而 Elementwise 操作在 GPU 上要花更多时间。

640?wx_fmt=png


文章的第三个不同指出是用加权的 NSGA-2 处理多目标优化。从实际使用角度出发,第一业务指标和运行速度是最重要的,所以对于多个目标也需要区别对待。本文采用了 2:2:1 的比重(acc, latency, params)。


NAS 方法基于先前的 FairNAS,引入了查表方式的 GPU latency,加权 NSGA-II,对 FairNAS 进行了迭代更新。

640?wx_fmt=png


 2 给出了 MoGA-A 的结构,可以看出在各层输入输出,还有下采样点及激活单元的使用上是对齐了 MobileNetV3

640?wx_fmt=png


 9 给出了三款模型 MoGA-A,B,C 的可视化展示。

640?wx_fmt=png


 3 是对当前同量级 SOTA 模型的对比。MoGA-C 比 MobileNetV3 Large 有更高的精度,更短的移动端 GPU 时延(SNPEMACE 结果一致),从 SNPE 结果看,MoGA-B 也超过了 V3,所以本文揭示了不仅要 GPU-Aware,还需要 Framework-aware,不同的框架对模型也有不同的要求。另外 300M 模型 MoGA-A 也是再次刷新记录,达到了 75.9%

640?wx_fmt=png


消去实验


由于三个目标难以调和,所以可以观察到帕累托边界开始上扬,在加了目标权重之后,此现象有所缓解,但仍不能避免。


作者对比了 MoreMNAS、随机变异和只有两目标的情形。佐证强化+演化的加权NSGA2 优于随机变异的加权 NSGA2,也说明只采用两个目标(acclatency)会极大削弱搜索能力,鼓励增大 params 的三目标优化是所有方案中最优的。

640?wx_fmt=png

总结


综上所述,MoGA 提出了移动端 GPU 敏感的 NAS,对多目标进行加权处理,鼓励增大参数量,使用了更新版 MnasNet 的搜索空间,融合了 V3 的激活单元和结构,方法是对 FairNAS 的改进和提升,在 ImageNet 1k 任务上刷新了 SOTA,最重要的是直接面向落地,而且模型代码和预训练权重都已开源。


有同学担心通用任务上的模型能否直接应用于业务呢?谷歌 Brain 最新的系统性研究 [7] 给出的答案是肯定的:在 ImageNet 上表现好的 16 个经典结构在 12 个常用数据集上均表现出稳定的排名。

640?wx_fmt=png

  16个主流网络在12个数据集上的迁移表现, Google Brain


参考文献


[1] Chu et al. MoGA: Searching Beyond MobileNetV3 http://arxiv.org/abs/1908.01314  [2] MoGA 模型开源地址:https://github.com/xiaomi-automl/MoGA [3] Chu et al., FairNAS: Rethinking Evaluation Fairness of Weight Sharing Neural Architecture Search https://arxiv.org/abs/1907.01845  [4] FairNAS 模型开源地址:https://github.com/xiaomi-automl/FairNAS [5] Chu et al., Multi-Objective Reinforced Evolution in Mobile Neural Architecture Search https://arxiv.org/abs/1901.01074  [6] Andrew Howard et al., Searching for MobileNetV3, https://arxiv.org/abs/1905.02244  [7] Kornblith et al., Do Better ImageNet Models Transfer Better https://arxiv.org/pdf/1805.08974.pdf


640?



点击以下标题查看更多往期内容: 





640?#投 稿 通 道#

 让你的论文被更多人看到 



如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。


总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。


PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学习心得技术干货。我们的目的只有一个,让知识真正流动起来。


来稿标准:

• 稿件确系个人原创作品,来稿需注明作者个人信息(姓名+学校/工作单位+学历/职位+研究方向) 

• 如果文章并非首发,请在投稿时提醒并附上所有已发布链接 

• PaperWeekly 默认每篇文章都是首发,均会添加“原创”标志


? 投稿邮箱:

• 投稿邮箱:hr@paperweekly.site 

• 所有文章配图,请单独在附件中发送 

• 请留下即时联系方式(微信或手机),以便我们在编辑发布时和作者沟通




?


现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧



关于PaperWeekly


PaperWeekly 是一个推荐、解读、讨论、报道人工智能前沿论文成果的学术平台。如果你研究或从事 AI 领域,欢迎在公众号后台点击「交流群」,小助手将把你带入 PaperWeekly 的交流群里。


640?

▽ 点击 | 阅读原文 | 下载论文 & 源码

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值