来源:机器之心

本文共1500字,建议阅读8分钟

谷歌提出了一种新型CNN网络EfficientNet,该网络具备极高的参数效率和速度。


[ 导读 ]谷歌提出了一项新型模型缩放方法:利用复合系数统一缩放模型的所有维度,该方法极大地提升了模型的准确率和效率。谷歌研究人员基于该模型缩放方法,提出了一种新型 CNN 网络 EfficientNet,该网络具备极高的参数效率和速度。目前,该模型的代码已开源。

卷积神经网络(CNN)通常以固定成本开发,然后再按比例放大,从而在获得更多资源时可以达到更高的准确率。例如,ResNet 可以通过增加网络层数,从 ResNet-18 扩展到 ResNet-200。近期 GPipe 将基线 CNN 扩展了 4 倍,从而在 ImageNet 数据集上达到了 84.3% 的 top-1 准确率。模型缩放的通常做法是任意增加 CNN 的深度或宽度,或者使用更大的输入图像分辨率进行训练和评估。尽管这些方法确实可以改进准确率,但它们通常需要大量手动调参,且通常获得的是次优性能。那么,我们是否可以寻找更好的 CNN 扩展方法,来获得更高的准确率和效率呢?

谷歌研究人员在一篇 ICML 2019 论文《EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks》中,提出了一种新型模型缩放方法,该方法使用一种简单但高效的复合系数(compound coefficient)以更加结构化的方式扩展 CNN。与任意扩展网络维度(如宽度、深度、分辨率)的传统方法不同,该新方法使用固定的一组缩放系数扩展每个维度。受益于该方法和 AutoML 的最新进展,谷歌开发出了一系列模型——EfficientNets,该模型的准确率超越了当前最优模型,且效率是后者的 10 倍(模型更小,速度更快)。

论文链接:

https://arxiv.org/pdf/1905.11946.pdf

复合模型缩放:扩展 CNN 的更好方法

为了理解网络缩放的效果,谷歌研究人员系统地研究了缩放模型不同维度的影响。虽然缩放单个维度可以改善模型性能,但研究人员发现平衡网络的所有维度(宽度、深度和图像分辨率)和可用资源才能最优地提升整体性能。

该复合缩放方法的第一步就是执行网格搜索,寻找固定资源限制下基线模型不同缩放维度之间的关系。这决定了每个维度的恰当缩放系数。第二步是应用这些系数,将基线网络扩展到目标模型大小或目标计算成本。

不同缩放方法对比。传统缩放方法 (b)-(d) 任意缩放模型的单个维度,而谷歌提出的新型复合缩放方法则不同,它扩展模型的所有维度

相比于传统的模型缩放方法,该复合缩放方法可持续改善模型的准确率和效率,如 MobileNet 的 ImageNet 准确率提升了 1.4%,ResNet 的准确率提升了 0.7%。

EfficientNet 架构

模型缩放的效果严重依赖基线模型。因此,为了进一步提升性能,谷歌研究人员使用 AutoML MNAS 框架执行神经架构搜索,从而开发出一种新型基线模型,该模型可以优化准确率和效率。

该基线模型使用 mobile inverted bottleneck convolution(MBConv),类似于 MobileNetV2 和 MnasNet,但是由于 FLOP 预算增加,该模型较大。于是,研究人员继续缩放该基线模型,得到一组模型——EfficientNets。

基线模型 EfficientNet-B0 的架构简单、干净,这使得它易于扩展和泛化

EfficientNet 性能

研究人员在 ImageNet 数据集上对比了 EfficientNets 和已有 CNN 模型。EfficientNet 模型要比已有 CNN 模型准确率更高、效率更高,其参数量和 FLOPS 都下降了一个数量级。例如,在高准确率的模式中,EfficientNet-B7 在 ImageNet 上获得了当前最优的 84.4% top-1 / 97.1% top-5 准确率,CPU 推断速度是 Gpipe 的 6.1 倍,而后者的大小是 EfficientNet-B7 的 8.4 倍。与现在广泛使用的 ResNet-50 相比,EfficientNet-B4 使用类似的 FLOPS 取得的 top-1 准确率比 ResNet-50 高出 6.3%(ResNet-50 76.3%,EfficientNet-B4 82.6%)。

模型大小 vs. 准确率

EfficientNet-B0 是通过 AutoML MNAS 开发出的基线模型,Efficient-B1 到 B7 是扩展基线模型后得到的网络。EfficientNet 显著优于其他 CNN。具体来说,EfficientNet-B7 取得了新的 SOTA 结果:84.4% top-1 / 97.1% top-5 准确率,且其大小远远小于之前的最优 CNN 模型 GPipe(后者的模型大小是 EfficientNet-B7 的 8.4 倍),速度是 GPipe 的 6.1 倍。

EfficientNet-B1 的参数量远远小于 ResNet-152,但速度是后者的 5.7 倍。

EfficientNet 在 ImageNet 上的性能

推断延迟对比

尽管 EfficientNets 在 ImageNet 上性能优异,但要想更加有用,它们应当具备迁移到其他数据集的能力。谷歌研究人员在 8 个常用迁移学习数据集上评估了 EfficientNets,结果表明 EfficientNets 在其中的 5 个数据集上达到了当前最优的准确率,且参数量大大减少,这表明 EfficientNets 具备良好的迁移能力。

EfficientNets 能够显著提升模型效率,谷歌研究人员希望 EfficientNets 能够作为未来计算机视觉任务的新基础。因此,研究人员开源了 EfficientNet 模型。

EfficientNet 源代码和 TPU 训练脚本参见:

https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet


参考链接:

https://ai.googleblog.com/2019/05/efficientnet-improving-accuracy-and.html

编辑:黄继彦

校对:林亦霖

谷歌提出新型卷积网络EfficientNet:推理速度提升5.1倍,参数减少88%(附论文代码)...相关推荐

  1. 谷歌提出新型卷积网络EfficientNet: 推理速度升5.1倍参数减少88%,需要我们的验证

    推理速度升5.1倍参数减少88%:谷歌提出新型卷积网络EfficientNet 谷歌提出了一项新型模型缩放方法:利用复合系数统一缩放模型的所有维度,该方法极大地提升了模型的准确率和效率.谷歌研究人员基 ...

  2. 解码ICN/NDN:可将IPFS检索速度提升数十倍的网络底层技术

    近年来,星际文件系统IPFS(InterPlanetary File System)的数据检索速度一直是去中心化存储及检索领域的一大痛点.不过近期在国际通信网络领域顶会SIGCOMM上发表的一篇论文, ...

  3. 谷歌发布TF新工具:计算速度提升2倍,减少无效参数

    萧箫 发自 凹非寺 量子位 报道 | 公众号 QbitAI 一顿操作后,需要实时模糊背景的视频,看起来流畅了不少: 实时目标检测的延迟也更低了: 这是谷歌特意为移动设备和Web端开发的一系列新工具,可 ...

  4. 阿里 AI 研究成果入选国际顶会 ICML 2020,AI 推理速度提升 3 倍

    近日,人工智能国际顶会ICML 2020公布了论文收录结果,阿里巴巴7篇论文入选,是入选论文数量最多的中国科技公司.ICML是机器学习领域全球最具影响力的学术会议之一,今年接受率仅为21.8%. 根据 ...

  5. 让Transformer的推理速度提高4.5倍,这个小trick还能给你省十几万

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 丰色 发自 凹非寺 量子位 报道 | 公众号 QbitAI 最近,N ...

  6. 亚马逊:我们提取了BERT的一个最优子架构,只有Bert-large的16%,CPU推理速度提升7倍...

    选自arXiv 作者:Adrian de Wynter.Daniel J. Perry 机器之心编译 机器之心编辑部 提取 BERT 子架构是一个非常值得探讨的问题,但现有的研究在子架构准确率和选择方 ...

  7. 将sklearn训练速度提升100多倍,美国「返利网」开源sk-dist框架

    点击我爱计算机视觉标星,更快获取CVML新技术 本文经机器之心(微信公众号:almosthuman2014)授权转载,禁止二次转载 选自Medium 作者:Evan Harris 机器之心编译 参与: ...

  8. 谷歌提出「卷积+注意力」新模型,超越ResNet最强变体!

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 丰色 发自 凹非寺 量子位 报道 | 公众号 QbitAI Tran ...

  9. 谷歌提出「卷积+注意力」新模型,超越ResNet最强变体

    丰色 发自 凹非寺 量子位 报道 | 公众号 QbitAI Transformer跨界计算机视觉虽然已取得了一些不错的成绩,但大部分情况下,它还是落后于最先进的卷积网络. 现在,谷歌提出了一个叫做Co ...

最新文章

  1. EF code First数据迁移学习笔记
  2. Git 设置 SOCKS 代理
  3. MonoBehaviour生命周期
  4. 【机器学习】改善LBP特征提高SVM的可分性的经验总结(二)
  5. 关于 SAP Spartacus 的 Theme 颜色主题
  6. 每天打卡心情好(洛谷P1664题题解,Java语言描述)
  7. python---基础知识
  8. (第三章)查看数据库
  9. 利用SQL语言修正与撤销数据库
  10. mysql大数据高并发处理
  11. kubernetes视频教程笔记 (4)-服务发现-service和pod组建
  12. Tomcat-startup.bat一点闪退的原因与解决方法
  13. nc 监听数据_nc 命令使用详解
  14. CS144 计算机网络 lab1
  15. 单臂路由器互联VLAN实验-Cisco Packet Tracer
  16. 天池精准医疗大赛——人工智能辅助糖尿病遗传风险预测
  17. oracle hint 强制索引
  18. c语言中符号是什么作用是什么,c语言中的符号|=是什么意思?
  19. Python3爬虫实践——QQ空间自动点赞程序(下)
  20. EasyExcel 自定义颜色

热门文章

  1. BZOJ3473:字符串(后缀数组,主席树,二分,ST表)
  2. Delphi_01_控制台版HelloWorld
  3. MyBatis——Java API
  4. Git学习笔记一--创建版本库、添加文件、提交文件等
  5. yii权限rbac验证三张表字段说明
  6. squid 使用 笔记
  7. 职场,18个细节决定成败[转载]
  8. centos 安装java web_centos6.9 安装JAVA-WEB环境
  9. 将标签one-hot化的方法
  10. 自然语言处理的 算法 BYTEDANCE