时隔两年,EfficientNet v2来了!Quoc Le说:它更快、更小、更强

本文涉及的产品
文件存储 NAS,50GB 3个月
简介: 时隔两年,EfficientNet v2来了!Quoc Le说:它更快、更小、更强

谷歌在EfficientNet的基础上,引入了Fused-MBConv到搜索空间中;同时为渐进式学习引入了自适应正则强度调整机制,组合得到了EfficientNetV2,它在多个基准数据集上取得了SOTA性能,且训练速度更快。


image.jpeg

paper: https://arxiv.org/abs/2104.00298

code: https://github.com/google/automl/efficientnetv2

本文是谷歌的MingxingTan与Quov V.Le对EfficientNet的一次升级,旨在保持参数量高效利用的同时尽可能提升训练速度。在EfficientNet的基础上,引入了Fused-MBConv到搜索空间中;同时为渐进式学习引入了自适应正则强度调整机制。两种改进的组合得到了本文的EfficientNetV2,它在多个基准数据集上取得了SOTA性能,且训练速度更快。比如EfficientNetV2取得了87.3%的top1精度且训练速度快5-11倍。

1 Abstract

本文提出一种训练速度更快、参数量更少的卷积神经网络EfficientNetV2。我们采用了训练感知NAS与缩放技术对训练速度与参数量进行联合优化,NAS的搜索空间采用了新的op(比如Fused-MBConv)进行扩充。实验表明:相比其他SOTA方案,所提EfficientNetV2收敛速度更快,模型更小(6.8x)。

在训练过程中,我们可以通过逐步提升图像大小得到加速,但通常会造成性能掉点。为补偿该性能损失,我们提出了一种改进版的渐进学习方式,它自适应的根据图像大小调整正则化因子,比如dropout、数据增广。

受益于渐进学习方式,所提EfficientNetV2在CIFAR/Cars/Flowers数据集上显著优于其他模型;通过在ImageNet21K数据集上预训练,所提模型在ImageNet上达到了87.3%的top1精度,以2.0%精度优于ViT,且训练速度更快(5x-11x)。

image.jpeg

上图给出了所提方法与其他SOTA方案在训练速度、参数量以及精度方面的对比。本文的主要贡献包含以下几点:

  • 提出一类更小、更快的卷积神经网络EfficientNetV2。受益于训练感知NAS与缩放,EfficientNetV2在训练速度与参数量方面显著优于其他方案;
  • 提出一种改进版渐进学习策略,它可以自适应的随图像大小而调整正则化因子。它可以在加速训练的同时提升精度;
  • 所提方案在ImageNet、CIFAR、Cars、Flowers等数据集上取得了11x更快的训练速度,6.8x更少的参数量。

2 Method

在正式介绍EfficientNetV2之前,我们先简单看一下EfficientNet;然后引出训练感知NAS与缩放,以及所提EfficientNetV2.

 

Review of EfficientNet

EfficientNet是2019年的一篇文章,它针对FLOPs与参数量采用NAS搜索得到EfficientNet-B0,然后通过复合尺度缩放得到了更大版本的模型,比如EfficientNetB1-B7。


image.jpeg

上表给出了EfficientNet与其他方法在精度、参数量以及Flops方面的对比。本文旨在提升模型的训练速度同时保持参数的高效性。

 

Understanding Training Efficiency

我们对EfficientNetV1的模块进行了研究并得到了集中简单的训练加速技术。

  • Training with very large image sizes is slow。已有研究表明:EfficientNet的大图像尺寸会导致显著的内存占用。由于GPU/TPU的总内存是固定的,我们不得不采用更小的batch训练这些模型,这无疑会降低训练速度。一种简单的改进方式是采用FixRes,即采用更小的图像尺寸进行训练。如下表所示:采用更小的图像块会导致更小的计算量、更大的batch,可以加速训练(2.2x);与此同时,更小的图像块训练还会导致稍高的精度。在后续章节中,我们会提出一种更先进的训练方法:通过渐进式调整图像尺寸和正则化因子达到训练加速的目的。


image.jpeg

  • Depthwise convolutios are slow in early layers。EfficientNet的核心模块采用了depthwise卷积,它具有更少的参数量和计算量(但往往无法充分利用现有加速器)。近来,提出的Fused-MBConv可以更充分的利用手机/服务端的加速器。它采用常规卷积替换了MBConv中的深度卷积与 卷积,见下图。


image.jpeg

为系统的比较这两个模块,我们基于EfficientNet-B4,采用Fused-MBConv替换原始的MBConv,性能对比见下表。可以看到:(1) 在stage1-3阶段替换时,Fused-MBConv可以加速训练并带来少量的参数量与FLOPs提升;(2) 如果stage1-7全部替换,它会带来大量的参数量与FLOPs提升且降低训练速度。也就是说:MBConv与Fused-MBConv的正确组合并不容易直接确定,因此我们采用NAS搜索最佳组合。

image.jpeg

  • Equally scaling up every stage is sub-optimal。EfficientNet采用复合测试对所有stage均衡缩放。比如当depth系数为2时,网络的所有阶段的层数加倍。然而,不同阶段在训练速度与参数量方面并非均等贡献。我们将采用非均匀缩放策略对后面的stage添加更多的层。此外,针对EfficientNet的采用大尺寸图像导致大计算量、训练速度降低问题,我们对缩放规则进行了轻微调整并约束最大图像尺寸到稍小值。

 

Training-Aware NAS and Scaling

至此,我们得到了多种加速训练的设计方案。为更好的组合这些方案,我们提出了一种训练感知NAS。

  • NAS Search。我们这里采用的NAS框架主要是基于EfficientNet与MnasNet,但对参数量与训练高效性同时进行优化。具体来说,我们采用EfficientNet作为骨干网络,搜索空间为类似EfficientNet的基于stage的空间,它包含MBConv、Fused-MBConv等卷积操作,层数、核尺寸、扩展比例;另一方面,我们通过这两种策略降低搜索空间:(1)移除不避免的搜索选项,比如pooling算子;(2) 复用EfficientNet中的通道数信息。由于搜索空间更小,我们可以采用简单的随机搜索进行更大网络的搜索(比如大小类似EfficientNet-B4)。具体来说,我们采样1000个模型,每个模型训练10个epoch。搜索奖励包含模型精度A、归一化训练时长S、参数量P,并通过加权方式组合 。
  • image.jpeg
  • EfficientNetV2 Architecture。上表给出了所搜索到的EfficientNetV2-S的架构信息。相比EfficientNet,它有这样几个不同:
  • EfficientNetV2大量利用了MBConv与Fused-MBConv(主要在网络早期);
  • EfficientNetV2使用了更小的扩展比例,导致了更少的内存占用;
  • EfficientNetV2倾向于选择更小的卷积核,用更多的层补偿感受野的减小;
  • EfficientNetV2移除了EfficientNet中最后的stride-1 stage。
  • EfficientNet Scaling。我们在EfficientNetV2-S的基础上采用类似EfficientNet的复合缩放(并添加几个额外的优化)得到EfficientNetV2-M/L。额外的优化描述如下:
  • 限制最大推理图像尺寸为480;
  • 在网络的后期添加更多的层提升模型容量且不引入过多耗时,可见上表中的stage5与stage6.
  • image.jpeg
  • Training Speed Comparsion。上表给出了不同网络的训练速度对比(所有摩西那个采用相同的图像大小)。我们发现:(1) 当训练合理时,EfficientNet仍可以得到非常好的性能均衡;(2) 相比其他方法,EfficientNetV2训练速度更快。

3 Progressive Learning

正如前面所提到:图像尺寸对于训练速度影响很大。除了FixRes外,还有其他方法在训练过程中动态改变图像尺寸,但通常造成了精度下降。

我们认为:上述精度下降主要源自不平衡的正则化因子,也就是说:当采用不同的图像尺寸训练时,我们应当同时调整正则化强度。事实上,大的模型需要更强的正则化以避免过拟合,比如EfficientNet-B7采用了更大的dropout核更强的数据增广。在这里,我们认为:对于相同模型,

  • 小的图像尺寸会导致更小的模型容量,因此需要弱化版正则因子;
  • 大的图像尺寸导致更多的计算量和模型容量,需要更强的正则因子以避免过拟合。


相关实践学习
基于ECS和NAS搭建个人网盘
本场景主要介绍如何基于ECS和NAS快速搭建个人网盘。
阿里云文件存储 NAS 使用教程
阿里云文件存储(Network Attached Storage,简称NAS)是面向阿里云ECS实例、HPC和Docker的文件存储服务,提供标准的文件访问协议,用户无需对现有应用做任何修改,即可使用具备无限容量及性能扩展、单一命名空间、多共享、高可靠和高可用等特性的分布式文件系统。 产品详情:https://www.aliyun.com/product/nas
目录
相关文章
|
4天前
|
机器学习/深度学习 人工智能 自然语言处理
清华微软最新力作:用物理学革新Transformer注意力,大海捞针精度暴涨30%!
【10月更文挑战第30天】Transformer模型在自然语言处理(NLP)中表现出色,但在处理长文本和复杂任务时存在注意力分配不当的问题。清华大学和微软研究院提出了Diff Transformer,通过计算两个独立软最大注意力图之间的差异,有效消除噪声,提高模型性能。Diff Transformer在语言建模、减少幻觉、增强上下文学习能力和减少激活异常值等方面表现出显著优势,但也存在计算复杂度增加、对超参数敏感和适用范围有限的局限性。论文地址:https://arxiv.org/abs/2410.05258
10 2
|
5月前
|
存储 人工智能 自然语言处理
Llama3-8B秒杀700亿巨兽?北大博士生等全新BoT框架推理暴涨70倍,24点图形推理一步成神
【6月更文挑战第16天】北大团队提出BoT框架,增强LLM推理能力。新方法使用"meta-buffer"存储思维模板,提升效率70倍。在多个推理任务上表现优越,尤其在"Game of 24"等任务中成绩显著,挑战Llama3-70B。然而,计算资源需求大,对复杂任务鲁棒性仍有待提升。[链接:https://arxiv.org/abs/2406.04271]**
161 5
|
6月前
|
人工智能 自然语言处理 异构计算
微软SliceGPT让LLAMA-2计算效率大增
【2月更文挑战第13天】微软SliceGPT让LLAMA-2计算效率大增
67 7
微软SliceGPT让LLAMA-2计算效率大增
|
6月前
|
机器学习/深度学习 存储 自然语言处理
清华朱军团队新作!使用4位整数训练Transformer,提速35.1%!
清华朱军团队新作!使用4位整数训练Transformer,提速35.1%!
60 1
|
6月前
|
机器学习/深度学习 人工智能 数据可视化
太强!AI没有落下的腾讯出YOLO-World爆款 | 开集目标检测速度提升20倍,效果不减
太强!AI没有落下的腾讯出YOLO-World爆款 | 开集目标检测速度提升20倍,效果不减
641 0
|
机器学习/深度学习 人工智能 API
斯坦福70亿参数开源模型媲美GPT-3.5,100美元即可复现
斯坦福70亿参数开源模型媲美GPT-3.5,100美元即可复现
134 0
|
存储 并行计算 算法
斯坦福大学CS博士新作:新型Attention提速2-4倍,BERT单节点训练最快
斯坦福大学CS博士新作:新型Attention提速2-4倍,BERT单节点训练最快
270 0
|
机器学习/深度学习 人工智能 边缘计算
首个在ImageNet上精度超过80%的二值神经网络BNext问世,-1与+1的五年辛路历程
首个在ImageNet上精度超过80%的二值神经网络BNext问世,-1与+1的五年辛路历程
145 0
|
机器学习/深度学习 人工智能 异构计算
谷歌Quoc Le团队新transformer:线性可扩展,训练成本仅有原版1/12
谷歌Quoc Le团队新transformer:线性可扩展,训练成本仅有原版1/12
145 0
|
机器学习/深度学习 人工智能 自然语言处理
150亿参数,谷歌开源了史上最大视觉模型V-MoE的全部代码
150亿参数,谷歌开源了史上最大视觉模型V-MoE的全部代码
568 0
下一篇
无影云桌面