首页 > 其他分享 >EfficientNetV2:谷歌又来了,最小的模型,最高的准确率,最快的训练速度 | ICML 2021

EfficientNetV2:谷歌又来了,最小的模型,最高的准确率,最快的训练速度 | ICML 2021

时间:2024-03-31 21:34:40浏览次数:36  
标签:训练 ICML 论文 正则 2021 图片尺寸 EfficientNetV2 EfficientNet

 论文基于training-aware NAS和模型缩放得到EfficientNetV2系列,性能远优于目前的模型。另外,为了进一步提升训练速度,论文提出progressive learning训练方法,在训练过程中同时增加输入图片尺寸和正则化强度。从实验结果来看,EfficientNetV2的效果非常不错。

来源:晓飞的算法工程笔记 公众号

论文: EfficientNetV2: Smaller Models and Faster Training

Introduction


 随着模型大小和数据集规模的增加,训练效率成了深度学习中很重要的一环。近期也有越来越多致力于提高训练效率的研究,但很难有兼顾准确率、训练效率和参数规模的网络。

 论文尝试分析了参数高效的EfficientNet的训练瓶颈,主要有三点:1)图片输入尺寸过大会导致训练较慢。2)深度卷积放在网络前部分会较慢。3)对网络所有stage进行同等scaling并不是最优的。基于上面的分析,论文设计了更精简的搜索空间,使用training-aware NAS(neural architecture search)和scaling来同时提高模型准确率、训练效率和参数效率,提出了EfficientNetV2系列网络。
 在训练速度方面,论文通过在训练过程逐步提高输入尺寸来进一步加速训练。先前也有类似的在训练过程逐步增加输入图片尺寸来加速的研究,但这些研究在修改输入图片尺寸的同时没有改变训练设置,导致准确率下降。论文认为,输入图片尺寸不同的网络的容量不同,应该使用不同程度的正则化方法。为此,论文提出了progressive learning,在训练初期使用较小的图片尺寸和较弱的正则化,然后逐步提高图片尺寸和正则化强度,可以做到加速训练又不掉点。
 论文的主要贡献如下:

  • 组合training-aware NAS和scaling提出EfficientNetV2系列网络,比之前的网络的规模更小、速度更快。
  • 提出progressive learning自适应根据图片尺寸调整正则化强度,加速训练的同时提高准确率。
  • 在多个训练集上进行实验,验证训练效率能提高11倍,模型规模能降低6.8倍。

EfficientNetV2 Architecture Design

Review of EfficientNet

 EfficientNet是优化计算量和参数量的系列网络,先通过NAS搜索准确率和速度折中的基线模型EfficientNet-B0,再通过混合缩放策略获得B1-B7模型。

 尽管现在很多研究声称在训练或推理速度上取得很大进步,但他们通常在计算量和参数量上差于EfficientNet,而本文正是想同时提升训练速度和优化模型参数量。

Understanding Training Efficiency

 论文对EfficientNetV1的训练瓶颈进行了分析,发现以下几个主要问题。

  • Training with very large image sizes is slow

 输入图片尺寸过大会导致显存占用的显著提高,由于GPU的显存是固定的,导致必须减少batch size和增加迭代次数进行训练,训练也就变慢了。

 如表2所示,较小的尺寸大约能提升2.2倍训练速度,还能小幅提升模型性能。为此,论文参考FixRes的动态增加训练图片尺寸提出更高效的训练方法,在训练过程逐步增加图片尺寸以及正则化强度。

  • Depthwise convolutions are slow in early layers but effective in later stages

 EfficientNet的另一个训练瓶颈在于depthwise卷积的使用,depthwise卷积虽然有更少的参数和计算量,但不能使用目前的GPU加速方案。

 最近有研究提出MBConv的替代结构Fused-MBConv,如图2所示,将depthwise conv3x3和conv1x1合并为常规的conv3x3。为了对比两者的性能差异,论文逐步替换stage进行实验。从表3的结果可以看出,恰当地使用Fused-MBConv可以在不带来过多参数量和计算量的前提下提升训练速度。至于如何是恰当,就靠NAS来自动搜索了。

  • Equally scaling up every stage is sub-optimal

 EfficientNet使用简单的混合缩放规则相等地放大所有stage,但实际上不同的stage对训练速度和参数量的影响是不同的。为此,论文只放大网络后面的stage,同时减小输入图片尺寸的放大比例。

Training-Aware NAS and Scaling

 论文跟EfficientNet一样利用MnasNet的多目标神经结构搜索进行网络搜索,调整评价指标同时优化准确率、参数量和训练速度。以EfficientNet作为主干,构造stage-based的搜索空间来对每个stage进行搜索。搜索的选项包括卷积类型{MBConv, Fused-MBConv}、层数、卷积核大小{3x3, 5x5},block中间的膨胀比例{1, 4, 6}。
 另外,论文也从以下几点减少了搜索空间大小:

  • 去掉不必要的搜索选项,比如pooling skip算子,这个没有在EfficientNet用到过。
  • 复用主干网络的每个stage的channel数,这部分已经在EfficientNet中搜索过了。

 由于搜索空间精简了,可以直接用强化学习和随机搜索来生成跟EfficientNet-B4差不多大小的网络。论文共采样1000个网络结构,每个训练大概10个周期。搜索的平均指标包含模型准确率\(A\)、归一化的训练耗时\(S\)和参数量\(P\),使用加权乘积\(A\cdot S^w\cdot P^w\)进行最终得分计算,其中\(w=-0.07\)和\(v=-0.05\)是通过实验确定的平衡超参数。

  • EfficientNetV2 Architecture

 EfficientNetV2-S结构如表4所示,Conv后接的数字是膨胀率。对比EfficientNet,主要有以下区别:

  • 使用MBConv的同时,在网络前几个阶段也使用了fused-MBConv。
  • EfficientNetV2倾向于选择较小的膨胀比例,这样能减少内存访问耗时。
  • EfficientNetV2比较喜欢较小的3x3卷积,但会添加更多的层数来弥补减少的感受域。
  • 去掉EfficientNet中最后stride-1的stage,可能由于其参数量和计算量太大了。

 这里有一点比较奇怪,上面NAS部分说会复用EfficientNet的通道数来缩小搜索空间,但是看表4的通道数貌似跟EfficientNet没有关系。这要等作者补充更多的NAS细节看看,具体各模型的参数可以去github看看。

  • EfficientNetV2 Scaling

 论文通过放大EfficientNetV2-S得到EfficientNetV2-M/L,使用类似于EfficientNet的混合缩放策略来,有以下区别:

  • 限制最大的推理图片尺寸为480,节省内存和训练速度消耗。

  • 逐步添加更多的层给后面的stage,比如表4中的stage5和stage6,在增加网络容量的同时不会带来过多运行消耗。

  • Training Speed Comparison

 图3对比了各网络的训练耗时,其中EfficientNet有原版和训练时缩小30%图片尺寸的版本,缩小版本的输入尺寸跟EfficientNetV2以及NFNet一致。使用相同训练周期和固定图片尺寸进行训练,EfficientNet仅缩小训练尺寸就能得到很大的性能提升,而EffcientNetV2凭借论文提出training-aware NAS和缩放策略,性能远超其它网络。

Progressive Learning


  • Motivation

 如之前所描述的,图片尺寸对训练效率的影响非常大。除了FixRes,还有很多其他在训练期间动态调整图片尺寸的研究,但这些研究通常都会出现性能下降的情况。论文认为,性能下降的主要原因在于正则化没有匹配动态调整的图片尺寸。较小的输入尺寸应该使用较弱的正则化强度,相反,较大的输入尺寸则应该使用较强的正则化强度。

 为了验证这个猜想,论文将不同输入图片尺寸和不同正则化强度进行组合测试。从表5的结果来看,基本验证了论文的猜想。于是论文提出了progressive learning,在训练过程中根据动态调整的图片尺寸自适应正则化强度。

  • Progressive Learning with adaptive Regularization

 论文提出的progressive learning如图4所示,先用较小的图片尺寸和较弱的正则化进行训练,随后逐步增加图片尺寸和正则化强度。

 假设完整的训练共\(N\)次迭代,目标图片尺寸为\(S_e\),目标正则化超参数为\(\Phi_e=\{\phi^k_e\}\),其中\(k\)表示其中一种正则化方法,比如dropup比例或mixup比例。将训练分为\(M\)个阶段,对于每个阶段\(1\le i\le M\),模型训练的图片尺寸为\(S_i\),正则化超参数为\(\Phi_i=\{\phi^k_i\}\),最后一个阶段\(M\)的图片尺寸为\(S_e\)和正则化超参数为\(\Phi_e\)。为了简单化,初始化图片尺寸和正则化超参数为\(S_O\)和\(\Phi_0\),通过线性插值来决定每个阶段对应参数,整体逻辑如算法1所示。

 论文共使用三种正则化方法:Dropout、RandAugment和Mixup,各网络的参数设置如表6所示。

Experiment


 在ImageNet上与其它网络进行对比。

 迁移能力对比。

 相同训练配置下的EfficientNet对比。

 缩小EfficientNetV2的模型大小与对标的EfficientNetV1,对比准确率和速度。

 对比不同网络使用progressive learning的效果。

 对比自适应正则化强度的效果。

Conclusion


 论文基于training-aware NAS和模型缩放得到EfficientNetV2系列,性能远优于目前的模型。另外,为了进一步提升训练速度,论文提出progressive learning训练方法,在训练过程中同时增加输入图片尺寸和正则化强度。从实验结果来看,EfficientNetV2的效果非常不错。



如果本文对你有帮助,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】

work-life balance.

标签:训练,ICML,论文,正则,2021,图片尺寸,EfficientNetV2,EfficientNet
From: https://www.cnblogs.com/VincentLee/p/18107309

相关文章

  • 蓝桥杯2021年第十三届省赛真题-直线
    一、题目【问题描述】    在平面直角坐标系中,两点可以确定一条直线。如果有多点在一条直线上,那么这些点中任意两点确定的直线是同一条。    给定平面上2×3个整点{(x,y)|0≤x<2,0≤y<3,x∈Z,y∈Z},即横坐标是0到1(包含0和1)之......
  • 20211110lyxDER编码
    一、任务详情参考附件中图书p120中7.1的实验指导,完成DER编码。Name实例中,countryName改为"CN",organizationName="你的学号"commonName="你的姓名拼音"。用echo-n-e"编码">你的学号.der中,用OpenSSLasn1parse分析编码的正确性。提交编码过程文档(推荐markdown格式)。......
  • DEVASC提示remote: Support for password authentication was removed on August 13,
    意思是:对密码身份验证的支持已于2021年8月13日移除。解决:在git仓库文件夹下使用ssh密钥验证:gitremotermorigin   ---将名为"origin"的远程仓库从本地Git仓库中移除[email protected]:GithubName/repositoryName.git   ---将名......
  • 20211105BouncyCastle
    1.下载jar包https://www.bouncycastle.org/latest_releases.html找了半天在官网上没找到,是找的其他的csdn的网页二级标题将下载的两个jar包拷贝到%JAVA_HOME%\jre\lib\ext目录下面3.修改配置文件%JAVA_HOME%\jre\lib\security\java.security,在末尾添加security.provider.11......
  • P8764 [蓝桥杯 2021 国 BC] 二进制问题
    原题链接题解1.如果数字为\(100110101\)那么答案为\(000000000\)~\(011111111\)中,k个1的组合数+\(100000000\)~\(100011111\)中k-1个1的组合数+...+\(1010101...\)(有k个1)中0个1的组合数,也就是1当遇见当遇见k个1后就可以退出了,最后判断数的1的个数够不够k,如果够......
  • 20211105李宜时DER
    作业内容:参考附件中图书p120中7.1的实验指导,完成DER编码Name实例中,countryName改为“CN”,organizationName-"你的学号"commoaName="你的姓名拼音"用echo-n-e"编码">你的学号.der中,用OpenSSLasn1parse分析编码的正确性提交编码过程文档(推荐markdown格式)具体过程......
  • P8312 [COCI2021-2022#4] Autobus floyd最短路
    [P8312COCI2021-2022#4]Autobus-洛谷|计算机科学教育新生态(luogu.com.cn)思路:nnn数据范围很小可以用Floyd算法。注意:最多坐......
  • Hybrid-PSC:基于对比学习的混合网络,解决长尾图片分类 | CVPR 2021
     论文提出新颖的混合网络用于解决长尾图片分类问题,该网络由用于图像特征学习的对比学习分支和用于分类器学习的交叉熵分支组成,在训练过程逐步将训练权重调整至分类器学习,达到更好的特征得出更好的分类器的思想。另外,为了节省内存消耗,论文提出原型有监督对比学习。从实验结果来看......
  • YOLOF:单层特征检测也可以比FPN更出色 | CVPR 2021
     论文通过分析发现FPN的成功在于divide-and-conquer策略解决了目标检测的优化问题,借此研究设计了仅用单层特征预测的高效检测网络YOLOF。YOLOF在结构上没有很多花哨的结构,却在准确率、推理速度和收敛速度上都有不错的提升,相对于眼花缭乱的FPN魔改结构,十分值得学习来源:晓飞的算......
  • P7137 [THUPC2021 初赛] 切切糕 题解
    题目传送门前置知识博弈论解法由于本题是CF1628D1GameonSum(EasyVersion)的扩展,故先从CF1628D1GameonSum(EasyVersion)讲解。CF1628D1GameonSum(EasyVersion)设\(x_{i}\)表示第\(i\)轮时Alice选择的数。设\(f_{i,j}\)表示已经进行了\(i\)轮,且......