典型CCN网络——efficientNet(2019-Google-已开源)

概述

    由于本网络本质上并不是人工设计的网络,所以个人认为,重点是看网络的获取思路以及有哪些值得注意的细节,对于网络的每一层,感觉不是那么重要(不像resnet等为人工设计)。

创新点

    探索网络的宽度、深度、输入图片分辨率单一因素对性能的影响,以及如何同时组合优化三个因素来提升网络的性能,最终给出了efficientNet B0-B7共计8个模型,满足不同的场景的需求。

详细解读

一、网络的宽度、深度、输入图片分辨率的探索    

    resnet通过加深网络的宽度,inception通过加宽网络的宽度,resnext通过同时加深网络和加宽网络,都在一定范围内获得了性能的提升。因此作者致力于去解决两个疑问,单一维度提升极限以及混合维度同时优化。

    

    1、单一维度实验。对三个维度固定两个,只放大其中一个,得到结果如下:

    图中从左至右分别是只放大网络宽度(width, w 为放大倍率)、网络深度(depth, d 为放大倍率)、图像分辨率(resolution, r 为放大倍率) 的结果,可以观察到单个维度的放大最高精度只在 80 左右。本次实验作者得出一个观点:三个维度中任一维度的放大都可以带来精度的提升,但随着倍率越来越大,提升却越来越小。

    2、混合维度实验。尝试在不同的 d, r 组合下变动 w,得到下图:

    从实验结果可以看出最高精度比之前已经有所提升,且不同的组合效果还不一样,最高可以到 82 左右。作者又得到一个观点,得到更高的精度以及效率的关键是平衡网络宽度,网络深度,图像分辨率三个维度的放缩倍率(d, r, w)。

二、混合维度设计网络。

    由于看到,同时优化网络的宽度、深度、输入图片分辨率可以获得更好的性能,那么具体怎么操作,去直接NAS出模型?显然这样的操作的计算代价简直天文数字。因此作者转变思路:

    1、初代 EfficientNet-B0

    网络结构作者主要借鉴了 MnasNet,采取了同时优化精度(ACC)以及计算量(FLOPS)的方法,由此产生了初代 EfficientNet-B0,(个人认为这部分并非本文重点)其结构如下图:

    

        

        展开后如下图左,Efficientnet-B0由1个Stem+16个大Blocks堆叠构成,16个大Blocks可以分为1、2、2、3、3、4、1个Block。Block的通用结构如下,其总体的设计思路是Inverted residuals结构和残差结构,在3x3或者5x5网络结构前利用1x1卷积升维,在3x3或者5x5网络结构后增加了一个关于通道的注意力机制,最后利用1x1卷积降维后增加一个大残差边。

                     

        对于每一个block,如上图右侧,我们需要关注的细节:使用1*1卷积升维、depthwise 卷积降低计算量、swish 激活函数、SE模块、BN模块、3*3与5*5卷积的使用。

    2、提出了混合维度放大法(compound scaling method)

    该方法使用一个混合系数φ 来决定三个维度的放大倍率(重点创新):

    

        其中,α、β、γ均为常数(不是无限大的因为三者对应了计算量),可通过网格搜索获得。混合系数 φ可以人工调节。考虑到如果网络深度翻番那么对应计算量会翻番,而网络宽度或者图像分辨率翻番对应计算量会翻 4 番,即卷积操作的计算量(FLOPS) 与d, w*w, r*r  成正比,因此上图中的约束条件中有两个平方项。在该约束条件下,指定混合系数 φ 之后,网络的计算量大概会是之前的 2^φ 倍。

    具体操作而言,有了初代的网络结构之后,放大就分为下面两步:

    第一步,首先固定 φ为 1,即设定计算量为原来的 2 倍,在这样一个小模型上做网格搜索(grid search),得到了最佳系数为  α=1.2、β=1.1、γ=1.15。

    第二步,固定  α=1.2、β=1.1、γ=1.15 ,使用不同的混合系数 φ 来放大初代网络得到 EfficientNet-B1 ~ EfficientNet-B7。

    整体的结果如下:

    

三、网络表现

1、跟其他网络的对比:

2、作者还用该方法放大了常用网络 MobileNets和 ResNets

    在计算量相当的情况下都得到了比之前更高的精度。这一部分概括起来就是我比你快,还比你准。

                            

3、CAM图解释性分析

    如图所示,从ImageNet验证集中随机抽取图像,模型都是从相同的基线进行缩放的,复合缩放模型更倾向于关注具有更多目标细节的相关区域,而其他模型要么缺乏目标细节,要么无法捕获图像中的所有目标。

参考连接

1、 https://zhuanlan.zhihu.com/p/85845131

2、https://blog.csdn.net/weixin_44106928/article/details/103083853

3、https://www.turingtopia.com/article/details/188d00badf064bb483bd89407e17f857

4、https://blog.csdn.net/GracePro/article/details/92427965

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

TigerZ*

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

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

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

打赏作者

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

抵扣说明:

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

余额充值