推理速度提升5.1倍,参数减少88%:谷歌提出新型CNN网络EfficientNet(附代码)

栏目: 数据库 · 发布时间: 5年前

内容简介:卷积神经网络(CNN)通常以固定成本开发,然后再按比例放大,从而在获得更多资源时可以达到更高的准确率。例如,谷歌研究人员在一篇 ICML 2019 论文《EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks》中,提出了一种新型模型缩放方法,该方法使用一种简单但高效的复合系数(compound coefficient)以更加结构化的方式扩展 CNN。与任意扩展网络维度(如宽度、深度、分辨率)的传统方法不同,该新方法使用

卷积神经网络(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 的更好方法

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

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

推理速度提升5.1倍,参数减少88%:谷歌提出新型CNN网络EfficientNet(附代码)

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

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

EfficientNet 架构

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

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

推理速度提升5.1倍,参数减少88%:谷歌提出新型CNN网络EfficientNet(附代码)

基线模型 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%)。

推理速度提升5.1倍,参数减少88%:谷歌提出新型CNN网络EfficientNet(附代码)

模型大小 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 倍。

推理速度提升5.1倍,参数减少88%:谷歌提出新型CNN网络EfficientNet(附代码)

EfficientNet 在 ImageNet 上的性能。

推理速度提升5.1倍,参数减少88%:谷歌提出新型CNN网络EfficientNet(附代码)

推断延迟对比。

尽管 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


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Heuristic Search

Heuristic Search

Stefan Edelkamp、Stefan Schrodl / Morgan Kaufmann / 2011-7-15 / USD 89.95

Search has been vital to artificial intelligence from the very beginning as a core technique in problem solving. The authors present a thorough overview of heuristic search with a balance of discussio......一起来看看 《Heuristic Search》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

在线进制转换器
在线进制转换器

各进制数互转换器

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具