前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >华为开源 GhostNetV3 | 优化边缘计算,性能显著提升、超越 MobileNet !

华为开源 GhostNetV3 | 优化边缘计算,性能显著提升、超越 MobileNet !

作者头像
公众号-arXiv每日学术速递
发布2024-04-25 18:59:22
4300
发布2024-04-25 18:59:22
举报

紧凑型神经网络特别为边缘设备上的应用而设计,这些设备具有更快的推理速度但性能适中。然而,目前紧凑型模型的训练策略是从传统模型借用过来的,这忽略了它们在模型容量上的差异,因此可能会阻碍紧凑型模型的性能。 在本文中,通过系统研究不同训练要素的影响,作者为紧凑型模型引入了一种强大的训练策略。作者发现,重新参数化和知识蒸馏的适当设计对训练高性能紧凑型模型至关重要,而一些常用于训练传统模型的数据增强方法,如Mixup和CutMix,会导致性能下降。 作者在ImageNet-1K数据集上的实验表明,作者针对紧凑型模型的专业训练策略适用于各种架构,包括GhostNetV2、MobileNetV2和ShuffleNetV2。具体来说,配备作者的策略,GhostNetV3

1.3\times

在移动设备上仅用269MFLOPs和14.46ms的延迟,就达到了79.1%的top-1准确率,大幅超过了其通常训练的对应模型。此外,作者的观察还可以扩展到目标检测场景。 关注公众号,私信「获取代码」获取 PyTorch代码和预训练权重。

1Introduction

为了满足边缘设备(如手机)有限的内存和计算资源,已经开发了各种高效架构。例如,MobileNetV1 使用深度可分离卷积来降低计算成本。MobileNetV2 引入了残差连接,而MobileNetV3 通过神经架构搜索(NAS)进一步优化了架构配置,显著提高了模型的性能。另一个典型架构是GhostNet,它利用特征中的冗余并通过使用低成本操作复制特征的通道。最近,GhostNetV2 进一步融合了一个硬件友好的注意力模块来捕捉长距离像素之间的依赖关系,并在性能上显著超越了GhostNet。

除了精心设计的模型架构之外,适当的训练策略也对取得显著性能至关重要。例如,Wightman等人通过整合先进的优化和数据增强方法,将ResNet-50在ImageNet-1K上的top-1准确率从76.1%提升到80.4%。然而,尽管已经付出了相当多的努力来探索更先进的训练策略以用于传统模型(例如,ResNet和VisionTransformer),但很少有研究关注紧凑型模型。由于不同容量的模型可能具有不同的学习偏好,直接将为传统模型设计的策略应用于紧凑型模型的训练是不恰当的。

为了弥合这一差距,作者系统地研究了多种用于紧凑型模型的训练策略。具体来说,作者的主要关注点放在了如前作所讨论的关键训练设置上,包括重参化、知识蒸馏(KD)、学习计划和数据增强。

重参化。 由于深度卷积和1×1卷积在紧凑型模型架构中的内存和计算消耗可以忽略不计,因此它们是常见的组成部分。受到在训练传统模型中的成功经验的启发,作者采用重参化方法来提高这两个紧凑模块的性能。在训练紧凑型模型时,作者在深度卷积中引入了线性并行分支。

卷积和1×1卷积。这些额外的平行分支在训练后可以重新参数化,不会在推理时产生额外成本。为了权衡总体训练成本与性能提升之间的关系,作者比较了增加不同数量分支的影响。此外,作者发现1×1深度卷积分支对3×3深度卷积的重新参数化有显著的正面影响。

知识蒸馏。 由于紧凑型模型的模型容量有限,它们很难达到与传统模型相媲美的性能。因此,采用较大模型作为教师来指导紧凑型模型学习的KD方法,是提高性能的适当途径。作者实证研究了在使用KD训练紧凑型模型时,几个典型因素的影响,比如教师模型的选择和超参数的设置。结果表明,合适的教师模型可以显著提升紧凑型模型的性能。

学习计划与数据增强。 作者比较了紧凑型模型几种训练设置,包括学习率、权重衰减、指数移动平均(EMA)以及数据增强。有趣的是,并不是所有为传统模型设计的技巧都适用于紧凑型模型。例如,一些广泛使用的数据增强方法,如_Mixup_和_CutMix_,实际上会降低紧凑型模型的性能。作者将在第5节详细讨论它们的影响。

基于作者的研究,作者为紧凑型模型开发了一个专门的训练方法。在ImageNet-1K数据集上的实验验证了作者提出方法的优越性。具体来说,采用作者方法训练的GhostNetV2模型在top-1准确性和延迟方面显著优于采用先前策略训练的模型(图1)。在其它高效架构,如MobileNetV2和ShuffleNetV2上的实验进一步证实了所提方法的泛化能力。

本文的其余部分组织如下。第2节回顾了相关工作。第3节介绍了GhostNetV2的架构。第4节详细讨论了训练策略。接着第5节展示了丰富的实验结果。第6节对本文进行了总结。

2Relatedworks

Compactmodels

设计一个同时具有低推理延迟和高性能的紧凑模型结构是具有挑战性的。SqueezeNet 提出了三种设计紧凑模型的方法,即用1

\times

1滤波器替换3

\times

3滤波器,减少输入到3

\times

3滤波器的通道数量,并在网络中晚些时候进行下采样以保持大的特征图。这些原则是建设性的,尤其是1

\times

1卷积的使用。MobileNetV1 用1

\times

1Kernel和深度可分离卷积替换了几乎所有滤波器,极大地降低了计算成本。

MobileNetV2 进一步将残差连接引入到紧凑模型中,并构建了倒置残差结构,其中块的中间层的通道数比其输入和输出多。为了保持表示能力,移除了一部分非线性函数。MobileNeXt 重新思考了倒置瓶颈的必要性,并声称经典的瓶颈结构也能实现高性能。考虑到1

\times

1卷积占据了相当一部分计算成本,ShuffleNet 用组卷积替换了它。通道混洗操作有助于信息在组间流动。通过研究影响实际运行速度的因素,ShuffleNetV2 提出了一个新型硬件友好块。

MnasNet 和MobileNetV3搜索架构参数,比如模型宽度、模型深度、卷积滤波器的大小等。通过利用特征的冗余,GhostNet 用低成本操作替换了1

\times

1卷积中的一半通道。GhostNetV2提出了一种基于全连接层的所谓DFC注意力机制,它不仅能在常见硬件上快速执行,还能捕捉远距离像素之间的依赖关系。到目前为止,GhostNets系列仍然是精度和速度之间折衷最佳的SOTA紧凑型模型。

自从ViT(DeiT)[8]在计算机视觉任务上取得巨大成功以来,研究行人一直致力于为移动设备设计紧凑型Transformer架构。MobileFormer提出了一种紧凑的跨注意力机制,以建模MobileNet和Transformer之间的双向桥梁。MobileViT汲取了紧凑型CNN的成功经验,并用Transformer进行全局处理来替代卷积中的局部处理。然而,基于Transformer的紧凑模型在移动设备上由于复杂的注意力操作而遭受高推理延迟。

Bagoftricksfortraining

CNNs有一些工作专注于改进训练策略以提高各种模型的性能。他等人讨论了在硬件上进行高效训练的一些有用技巧,并为ResNet提出了一种新的模型架构调整方法。Wrightman等人重新评估了在使用新型优化和数据增强方法训练时,普通ResNet-50的性能。他们在timm开源库中分享了具有竞争力的训练设置和预训练模型。采用他们的训练方案,一个普通的ResNet-50模型达到了80.4%的top-1准确率。Chen等人研究了训练自监督ViT的几个基本组成部分的影响。然而,所有这些尝试都是为大型模型或自监督模型设计的。由于模型容量的不同,直接将它们转移到紧凑模型是不恰当的。

3Preliminary

GhostNets(GhostNetV1和GhostNetV2)是针对移动设备上高效推理设计的最先进的紧凑型模型。其关键架构是Ghost模块,它可以通过廉价的操作生成更多的特征图,从而替代原始卷积。

在普通的卷积中,输出特征

Y

是通过

Y=X*W

得到的,其中

W\in\mathbb{R}^{c_{\text{out}}\timesc_{\text{in}}\timesk\timesk}

是卷积核,

X

是输入特征。

c_{in}

c_{out}

分别表示输入和输出的通道维度。

k

是核的大小,

*

表示卷积操作。Ghost模块通过两个步骤减少了普通卷积的参数数量和计算成本。它首先生成_intrinsic_特征

Y^{\prime}

,其通道维度小于原始特征

Y

。然后,在_intrinsic_特征

Y^{\prime}

上应用廉价的操作(例如,深度卷积)来生成_ghost_特征

Y^{\prime\prime}

。最终输出是通过沿通道维度连接_intrinsic_和_ghost_特征得到的,其公式可以表示为:

Y^{\prime} =X*W_{p}, \tag{1}
Y=\text{Cat}(Y^{\prime},X*W_{c}), \tag{2}

在公式中,

W_{p}

W_{c}

分别表示初级卷积和廉价操作中的参数。"Cat" 表示连接操作。整个GhostNet模型是通过堆叠多个Ghost模块构建而成的。

GhostNetV2通过设计一个高效的注意力模块,即DFC注意力模块,来增强紧凑型模型。考虑到像GhostNet这样的紧凑模型通常使用小核卷积,例如1

\times

1和3

\times

3,它们从输入特征中提取全局信息的能力较弱。GhostNetV2采用一个简单的全连接层来捕捉远程空间信息并生成注意力图。为了计算效率,它将全局信息分解为水平和垂直方向,并分别沿这两个方向聚合像素。如图1(a)所示,通过将DFC注意力模块与Ghost模块结合使用,GhostNetV2能够有效地提取全局和局部信息,同时在准确性和计算复杂度之间实现了更好的平衡。

4Trainingstrategies

作者的目标是探索训练策略,在不改变推理网络架构的情况下,以保持紧凑模型的小尺寸和快速速度。作者实证研究了训练神经网络的关键因素,包括学习计划、数据增强、重参化和知识蒸馏。

Re-parameterization

重参化在传统卷积模型中已经证明了其有效性。受其成功的启发,作者通过添加配备BatchNorm层的重复分支,将重参化引入紧凑型模型中。作者在图1(b)中展示了重参化GhostNetV2的设计。值得注意的是,作者引入了一个1

\times

1深度卷积分支到重参化的3

\times

3深度卷积中。实验结果确认了它在紧凑型模型性能上的积极效果。此外,实验还彻底探索了重复分支的最优数量。

在推理时,可以通过逆重参化过程移除重复的分支。由于在推理时卷积和批量归一化操作都是线性的,它们可以被折叠成一个单一的卷积层,其权重矩阵表示为

\widehat{\mathbf{W}}\in\mathbb{R}^{c_{\text{out}}\timesc_{\text{in}}\timesk\timesk}

,偏置表示为

\widehat{\mathbf{b}}\in\mathbb{R}^{c_{\text{out}}}

。之后,所有分支中折叠的权重和偏置可以被重参化为

\mathbf{W}_{\text{rep}}=\sum_{i}\widehat{\mathbf{W}_{i}}

和偏置

\mathbf{b}_{\text{rep}}=\sum_{i}\widehat{\mathbf{b}_{i}}

,其中

i

是重复分支的索引。

KnowledgedistillationKD

对于一个样本

x

及其标签

y

,分别用

\Gamma_{\text{s}}(x)

\Gamma_{\text{t}}(x)

表示学生模型和教师模型预测的相应逻辑值,KD的总损失函数可以表述为:

\mathcal{L}_{\text{total}}=(1-\alpha)\mathcal{L}_{\text{ce}}(\Gamma_{\text{s}} (x),y)+\alpha\mathcal{L}_{\text{kd}}(\Gamma_{\text{s}}(x),\Gamma_{\text{t}}(x)), \tag{3}

其中

\mathcal{L}_{\text{ce}}

\mathcal{L}_{\text{kd}}

分别表示交叉熵损失和KD损失。

\alpha

是一个平衡超参数。

通常,Kullback-Leibler散度函数被采纳作为知识蒸馏损失(KDloss),其可以表示为:

这里的损失函数

\mathcal{L}_{\text{kd}}=\tau^{2}\cdot\text{KL}(\text{softmax}(\Gamma_{\text{s}}(x))/\tau,\text{softmax}(\Gamma_{\text{t}}(x))/\tau), \tag{4}

其中

\tau

是一个称为温度的标签平滑超参数。在作者的实验中,作者研究了超参数

\alpha

\tau

不同设置对紧凑型模型性能的影响。

Learningschedule

学习率是神经网络优化中的一个关键参数。通常使用的两种学习率调整策略有:_步进_和_余弦_。_步进_策略线性地降低学习率,而_余弦_策略在开始时缓慢降低学习率,在中间阶段几乎呈线性,在最后又减慢降低速度。这项工作广泛研究了学习率以及学习率调整策略对紧凑型模型的影响。

指数移动平均(EMA)最近已成为提高模型验证准确性和增强模型鲁棒性的有效方法。具体来说,在训练期间,它逐渐对模型的参数进行平均。假设模型在第

t

步的参数为

\mathbf{W}_{t}

,模型的EMA计算方式如下:

\overline{\mathbf{W}}_{t}=\beta\cdot\overline{\mathbf{W}}_{t-1}+(1-\beta) \cdot\mathbf{W}_{t}, \tag{5}

其中,

\overline{\mathbf{W}}_{t}

代表在步骤

t

时EMA模型的参数,而

\beta

是一个超参数。作者将在第5.3节研究EMA的影响。

Dataaugmentation

各种数据增强方法已被提出以提升传统模型的性能。其中,_AutoAug_方案采用了25种子策略组合,每种组合包含两种转换。对于每个输入图像,随机选择一个子策略组合,并确定是否应用子策略中的每种转换,这一决策由一定的概率决定。_RandomAug_方法提出了一种随机增强方法,其中所有子策略都以相同的概率被选择。像_Mixup_和_CutMix_这样的图像别名方法融合了两幅图像以生成新图像。具体来说,_Mixup_在成对的示例及其标签的凸组合上训练神经网络,而_CutMix_则随机从一幅图像中移除一个区域并用另一幅图像中的Patch替换相应区域。_RandomErasing_在图像中随机选择一个矩形区域并用随机值替换其像素。

在本文中,作者评估了上述数据增强方法的多种组合,并发现一些常用于训练传统模型的数据增强方法,例如Mixup和CutMix,并不适合用于训练紧凑型模型。

5Experimentalresults

在作者的基本训练策略中,作者使用2048的小批量大小,并采用LAMB 对模型进行600个周期的优化。初始学习率设为0.005,采用余弦学习率调整策略。权重衰减和动量分别设置为0.05和0.9。作者对指数移动平均(EMA)使用0.999的衰减因子,其中应用了随机增强和随机擦除进行数据增强。在本节中,作者将探讨这些训练策略,并为训练紧凑型模型揭示一些见解。所有实验都是在ImageNet数据集 上使用8个NVIDIATeslaV100GPU进行的。

Re-parameterization

为了更好地理解将重参化集成到紧凑型模型的训练中的优势,作者进行了一项消融研究,以评估重参化对不同大小GhostNetV2的影响。结果展示在表1中。在其他训练设置保持不变的情况下采用重参化,与直接训练原始GhostNetV2模型相比,性能得到了显著提升。

此外,作者比较了重参化因子

N

的不同配置,结果如表2所示。根据结果显示,1

\times

1深度卷积在重参化中起着关键作用。如果重参化模型中不使用1

\times

1深度卷积,其性能甚至随着分支数量的增加而下降。相比之下,当配备1

\times

1深度卷积时,GhostNetV3模型在

N

为3时达到77.6%的峰值top-1准确率,进一步增加

N

的值并不会带来性能的额外提升。因此,在后续实验中将重参化因子

N

设置为3以获得更好的性能。

Knowledgedistillation

在本节中,作者评估了知识蒸馏对GhostNetV3性能的影响。具体来说,选用ResNet-101、DeiT-B和BeiTV2-B作为教师模型,它们分别达到77.4%、81.8%和86.5%的top-1准确率。表3中的结果显示了不同教师模型下的性能变化。值得注意的是,教师模型性能的优越性与学生模型的性能提高存在相关性。

随着改进的GhostNetV3性能的提高,强调了在知识蒸馏中,对于紧凑型模型来说,一个表现良好的教师模型的重要性。

作者进一步比较了在不同超参数设置下的知识蒸馏损失,以BEiTV2-B作为教师模型。表4中的结果表明,对于紧凑型模型来说,低温度值更为合适。此外,值得注意的是,当仅使用知识蒸馏损失(即

\alpha

=1.0)时,top-1准确度明显下降。

作者同样探讨了将重参化与知识蒸馏结合对GhostNetV2性能的影响。如表5所示,结果显示由于利用了知识蒸馏,性能有了显著的提升(高达79.13%)。此外,这强调了在重参化中1

\times

1深度卷积的重要性。这些发现强调了研究各种技术及其潜在组合以提升紧凑型模型性能的重要性。

权重衰减。表7展示了权重衰减对GhostNetV2的top-1准确度的影响。结果表明,较大的权重衰减会显著降低模型的性能。因此,考虑到其对紧凑型模型的有效性,作者为GhostNetV2保持了0.05的权重衰减值。

在图4中,可以观察到当EMA的衰减值为0.99999时,无论是否使用重参化和知识蒸馏技术,性能都会下降。作者推测这可能是由于衰减值过大时,当前迭代的削弱效应所致。对于紧凑型模型,衰减值0.9999或0.99995被认为是合适的,这与传统模型的值相似。

DataAugmentation

为了比较不同的数据增强方案对轻量级模型性能的影响,作者训练了基于卷积神经网络(CNN)的GhostNetV2和基于ViT的模型。

在采用不同增强策略下的DeiT-tiny模型。结果展示在表8中。观察到_随机增强_和_随机擦除_对GhostNetV2和DeiT-tiny都有利。相反,_Mixup_和_CutMix_产生了不利影响,因此被认为不适合紧凑型模型。

Comparisonwithothercompactmodels

在本节中,作者比较了GhostNetV3与其他紧凑型模型在参数量、FLOPs以及在CPU和手机上的延迟。具体来说,作者将这些模型运行在一个配备了3.2GHzInteli7-8700处理器的Windows台式机上以测量CPU延迟,并使用配备了麒麟处理器的华为Mate40Pro手机进行测试。

使用9000CPU来评估在输入分辨率为224×224的配置下手机的延迟。为确保最低延迟和最高一致性,关闭CPU和手机上所有其他应用程序。每个模型执行100次以获得可靠的结果。

表9详细比较了GhostNetV3与其他参数量在20M以下的紧凑型模型。从结果来看,最小的基于Transformer的架构在移动设备上进行推理需要12.5ms的延迟,而它们的top-1准确率仅为69.0%。相比之下,GhostNetV3在显著降低的7.81ms延迟下达到了77.1%的top-1准确率。当前最先进的模型MobileFormer实现了79.3%的top-1准确率,但延迟为129.58ms,这在实际应用中是无法接受的。相比之下,GhostNetV3在延迟仅为18.87ms的情况下,1.6

\times

提升了准确率至80.4%,比MobileFormer快6.8

\times

接下来,作者将GhostNetV3与其他基于CNN的紧凑型模型进行比较,包括MobileNets,ShuffleNets,MixNet,MNASNet,FBNet,EfficientNet,以及MobileOne。其中,FBNet、MNASNet和MobileNetV3是基于搜索的模型,其余的是手动设计的模型。特别是,FBNet采用了硬件搜索策略,而MNASNet和MobileNetV3搜索架构参数,比如模型的宽度、模型的深度、卷积滤波器的大小等。

与MobileNetV2相比,GhostNetV21.0

\times

在几乎相同的延迟(7.81ms对7.96ms)下,取得了5.1%的改进。GhostNetV21.3

\times

也比MobileNeXt和EfficientNet-B0的top-1准确率有所提高,分别高出了3.0%和2.8%。特别是与强大的手动设计的MobileOne模型相比,GhostNetV31.0

\times

在top-1准确率上比MobileOne-S1高出1.2%,而所需的延迟只有一半。GhostNetV31.3

\times

也比MobileOne-S2的准确率高出了1.7%,而延迟成本仅为60%。此外,当GhostNet1.6

\times

取得了比MobileOne-S4更高的top-1准确率(80.4% 对79.4%)时,MobileOne在CPU上的延迟是GhostNetV3的2.8

\times

在将GhostNetV31.0

\times

与基于搜索的紧凑模型进行比较时,该模型在CPU和手机上的推理速度均快于FBNet-Ccitefbnet,且性能高出2.2%。此外,GhostNetV31.0

\times

相较于MobileNetV3和MAASNet,在保持相似延迟的同时,top-1准确率提高了1.9%。这些结果证明了作者提出的训练策略在获取优秀紧凑模型方面,优于现有的手动设计和基于搜索的架构设计方法。

图5展示了各种紧凑型模型的综合性能比较。左图和右图分别说明了在手机上测量的FLOPs和延迟。值得注意的是,作者训练的GhostNetV2在移动设备上在延迟和top-1准确度之间表现出最佳的平衡。

其他紧凑模型为了进一步展示所提出训练策略的可扩展性,作者将它们应用于训练另外两种广泛使用的紧凑模型:ShuffleNetV2和MobileNetV2。表9中的结果显示,作者的策略可以分别将ShuffleNetV2和MobileNetV2的top-1准确率提高2.2%和3.0%。

Extendtoobjectdetection

为了探究训练收据是否也能在其他数据集上表现良好,作者将实验扩展到COCO数据集上的目标检测任务,以验证它们的泛化能力。结果展示在表10中。值得注意的是,分类任务中的洞察也适用于目标检测任务。例如,在两种使用的分辨率设置下,GhostNetV3模型分别以0.4和0.5的mAP值优于GhostNetV2。此外,GhostNetV3在推理时所需的FLOPs更少,同时性能也超过了MobileNetV2。

6Conclusion

在本文中,作者全面研究了旨在提高现有紧凑模型的性能的训练策略。这些技术包括重新参数化、知识蒸馏、数据增强以及学习计划调整,且在推理过程中无需对模型架构进行修改。特别是,作者训练的GhostNetV3在准确性和推理成本之间达到了最优平衡,这一点已通过CPU和手机平台得到了验证。作者还将在其他紧凑模型,如MobileNetV2和ShuffleNetV2上应用所提出的训练策略,观察到准确性的显著提升。作者希望作者的研究能为未来该领域的研究提供有价值的见解和经验。

参考

GhostNetV3: ExploringtheTrainingStrategiesforCompactModels.

本文参与?腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-04-22,如有侵权请联系?cloudcommunity@tencent.com 删除

本文分享自 arXiv每日学术速递 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1Introduction
  • 2Relatedworks
    • Compactmodels
      • Bagoftricksfortraining
      • 3Preliminary
      • 4Trainingstrategies
        • Re-parameterization
          • KnowledgedistillationKD
            • Learningschedule
              • Dataaugmentation
              • 5Experimentalresults
                • Re-parameterization
                  • Knowledgedistillation
                    • DataAugmentation
                      • Comparisonwithothercompactmodels
                        • Extendtoobjectdetection
                        • 6Conclusion
                        • 参考
                        领券
                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
                        http://www.vxiaotou.com