【深度学习原理第10篇】EfficientNet原理详解

前言

EfficientNet真的超级强大,让我们一起来耐心学习它吧!
论文链接:https://arxiv.org/pdf/1905.11946.pdf

一、背景介绍

EfficientNet是Google在2019年5月提出的网络,在当时表现SOTA,超级强,该论文提出了一种多维度混合的模型放缩方法compound scaling(混合缩放)是该文最主要的创新点,稍后会详细讲解。作者希望找到一个可以同时兼顾速度精度的模型放缩方法,而提高模型性能基本从下面三个维度考虑:网络深度网络宽度图像分辨率。如 ResNet-18 到 ResNet-152 是通过增加网络深度的方法来提高准确率,通过深度增加来提取更多复杂的特征,提取的信息更为丰富。GoogLeNet的Inception结构则是通过增加宽度来提高准确率。作者认为深度、宽度、分辨率这三个维度是互相影响的,三者需要达到一个平衡,要探索出三者之间最好的组合,最后提出了EfficientNet,它是第一个量化三个维度之间关系的网络。下图为EfficientNet效果图。EfficientNet-B7在ImageNet上达到了最好的水平,即top-1准确率84.4%/top-5准确率97.1%,然而却比已有的最好的卷积网络GPipe模型小了8.4倍,并且运算时间快了6.1倍,如图,GPipe模型大小为556M,EfficientNet-B7仅为66M,既实现较高的准确率,又可以充分的节省算力资源。
在这里插入图片描述
横坐标—参数
纵坐标—准确率

网络深度——神经网络的层数
网络宽度——每层的通道数
网络分辨率——是指网络中特征图的分辨率(如224×224)

问题:为什么提高深度、宽度能提高性能?
分辨率(图片清晰度),越清晰当然识别的更好、提取的特征更好,但分辨率越高的网络,其网络产生的参数就会大大增加。

二、模型复合缩放(Compound scaling)

在以前的工作中,通常只缩放三个维度之一(深度、宽度和图像大小),如缩小宽度减少参数与运算量。 虽然可以任意缩放两个或三个维度,但任意缩放需要繁琐的手动调整,并且仍然经常产生次优的精度和效率。在本文中,我们想研究和重新思考扩大卷积网络的过程。实证研究表明,平衡网络宽度、深度、分辨率这三个维度是至关重要的,令人惊讶的是,这种平衡可以通过简单地用恒定的比率缩放它们中的每一个来实现。EfficientNet使用了compound scaling方法,统一缩放网络深度、宽度和分辨率。复合缩放的意思就是考虑三者之间关系,三个一起缩放,使得三者达到一种平衡。
在这里插入图片描述
如上图所示,图a是baseline(基础网络),图b,c,d三个网络分别对该基础网络的宽度、深度、和输入分辨率(resolution)进行了扩展,即单独对某一个维度进行扩展,而最右边的e图,就是EfficientNet的主要思想,综合宽度、深度和分辨率对网络进行扩展,平衡了三个维度,并且需要一个很好的baseline,在这样的基础网络上进行平衡效果会更好。
重点结论:放大网络宽度、深度或分辨率中任何一个维度都可以提高准确率,但是对于更大的模型准确率的收益减少,如ResNet可以深度增加到1000层,但是准确率和101层基本相同,准确率很快饱和,准确曲线变平稳,增加很少。

问题:既然三者是有联系的,那么如何平衡三者,让网络达到最优呢?

在这篇文章中,我们提出了一个新的复合缩放方法,使用一个复合系数ϕ 来缩放网络宽度,深度和分辨率。如下图,d、w、r表述三个复合系数,并且限制α⋅β2⋅γ 2≈2,其中α,β,γ≥1,这样可以使得计算量每次增加基本相同的量,且不会增加太大。
在这里插入图片描述
采用上述方法,提出了第一个EfficientNet,即为EfficientNet-B0,结构如下图
在这里插入图片描述

上图说明了特征图大小、通道数、层数变化,这个EfficientNet-B0就作为baseline,即为最基础的网络,我们发现了对于EfficientNet-B0来说最好的值是α = 1.2 , β = 1.1 , γ = 1.15 ,这样就找到了baseline中三者最好的值,在这个baseline上进行平衡调整,通过调整公式中α,β,γ,并在限制α⋅β2⋅γ 2≈2下,通过不同的ϕ 放大baseline网络,得到了Efficient-B1到B7,Efficient-B7效果最好,如下图。
在这里插入图片描述
其中FLOPs表示运算量(每秒浮点运算次数),可以看到EfficentNet-B7参数只有66M,运算量37Billion。比之前表现最好的GPipe更好,有很大提升。

随后,作者用这个EfficentNet做了许多实验,如在ImageNet上的结果,又如在常用的迁移学习的数据集上评估,都取得了很好效果。EfficientNets始终比已有的模型,包括 DenseNet,Inception 和 NASNet 等有更好的准确率而且参数少了一个数量级。
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小样x

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值