没有合适的资源?快使用搜索试试~ 我知道了~
468×个×个MicroNet:以极低的FLOPs提高图像识别Yunsheng Li1,Yinpeng Chen2,Xiyang Dai2,Dongdong Chen2,MengchenLiu2,Lu Yuan2,Zicheng Liu2,Lei Zhang2,Nuno Vasconcelos11加州大学圣地亚哥分校2微软{yul554,nvasconcelos} @ ucsd.edu,{一车,西岱,多臣,孟尝君,陆远,刘磊章}@ microsoft.com摘要本文旨在解决的问题,大量的性能下降,在极低的计算成本(例如。ImageNet分类上的500万FLOPs我们发现两个因素,稀疏连接和动态激活函数,是有效的,以提高精度。前者避免了网络宽度的显著减小,而后者减轻了网络深度减小的危害。从技术上讲,我们提出了微因式卷积,它将卷积矩阵分解为低秩矩阵,将稀疏连接集成到卷积中。65.062.560.057.555.052.550.047.545.042.540.037.535.032.530.0MicroNet-M3M2M1M0MicronetMobileNet-V3MobileNet-V2ShuffleNet-V2ButterflyHBONetTinyNet四五六八10 12 15 20 30乘加,百万溶液。我们还提出了一个新的动态激活函数,命名为动态移位最大,以改善非线性通过maxing出多个动态融合之间的输入-把功能地图和它的循环通道移位。在这两个新的运营商的基础上,我们到达一个家庭的网络,名为MicroNet,实现了显着的性能增益在低FLOP制度的最先进的。例如,在1200万FLOPs的约束下,MicroNet在ImageNet分类上达到了59.4%的top-1准确率源代码位于https://github.com/liyunsheng13/micronet。1. 介绍高效CNN架构的最新进展[16,13,31,12,47,28,34]成功地将ImageNet分类的计算成本从3.8G FLOP(ResNet- 50 [11])降低了两个数量级到约40 M FLOP(例如,1000个FLOP)。MobileNet、ShuffleNet),具有合理的性能下降。然而,当进一步降低计算成本时,它们遭受显著例如,当计算成本从44 M下降到21M和12 M MAdd时,MobileNetV 3的top-1准确度分别从65.4%大幅下降到58.0%和49.8%在本文中,我们的目标是提高精度,在极低的FLOP制度从21M至4MMAds,这标志着计算成本的降低图1. 计算成本(MAds)与ImageNet Accu- racy。MicroNet在非常低的FLOP(从4M到21M MAdd)下显著优于最先进的高效网络。另一个数量级(从40M开始)。处理极低的计算成本(4 M-21 M FLOPs)的问题剩余的资源太有限,无法设计有效分类所需的卷积层和1,000类分类器如图1所示,减少现有高效CNN(例如MobileNet [13,31,12]和ShuffleNet [47,28])的宽度或深度请注意,我们专注于新的运营商设计,而固定的输入分辨率为224× 224,甚至为4M FLOPs的预算。在本文中,我们从两个角度来处理极低的FLOPs:节点的连接性和非线性,这与网络的宽度和深度。首先,我们表明,降低节点的连接,以扩大网络宽度提供了一个很好的权衡为一个给定的计算预算。第二,我们依靠改进的层非线性来补偿减小的网络深度,这决定了网络的非线性这两个因素促使设计更有效的卷积和准确度,Imagenet,Top-1469√×个×个RR×个×× ×RGROR×个2激活函数关于卷积,我们提出了微因子化卷积(MF-Conv)以将逐点卷积因子化为两个组卷积层,其中组编号G适应于通道的数量C,如下所示:G=C/R,其中R是其间的信道缩减比率。如第3.1节中分析的,对于给定的计算成本,该等式在通道数量和节点连接性之间实现了良好的权衡。在数学上,逐点卷积矩阵由块矩阵(G G块)近似,其块具有秩-1。这保证了最小的路径冗余(在任何输入-输出对之间只有一个路径)和最大的输入覆盖(每个输出信道),使得对于给定的计算预算,网络能够实现更多的信道关于非线性,我们提出了一个新的激活函数,命名为动态移位最大值(DY-Shift-Max),非线性融合通道与动态系数。特别地,新的激活迫使网络学习使用适应于输入的系数来融合输入特征图的不同循环通道移位,并在这些融合中选择最佳融合这表明,以提高表示功率的组分解的计算成本很小。基于两个新的算子(MF-Conv和DY-Shift-Max),我们获得了一系列模型,称为MicroNets。图1总结了ImageNet的性能,其中MicroNets的性能远远超过了最先进的性能。特别是,我们的1200万和2100万FLOP的MicroNet模型在前1精度方面分别比MobileNetV3高9.6%和4.5%。对于极具挑战性的600万FLOPs的机制,MicroNet实现了51.4%的top-1准确度,比复杂度(1200万FLOPs)两倍的Mo-bileNetV 3高出1.6%。尽管MicroNet是为非理论FLOP手动设计的,但它在边缘设备上的快速推理性能优于MobileNetV3(在推理延迟上搜索)。此外,我们的MicroNet在对象检测和关键点检测上超过了Mo-bileNetV 3,但使用的计算成本大大降低。2. 相关工作高效CNN:MobileNets [13,31,12]将k k卷积分解为深度卷积和逐点卷积。ShuffleNets [47,28]通过组卷积和通道混洗进一步简化了逐点[35]使用Mix- Conv在卷积中混合多个内核大小。[38]使用蝶形变换来近似逐点卷积。EfficientNet [34,36]提出了一种复合缩放方法,可以均匀地缩放深度/宽度/分辨率。加法器网络[2]用大量的乘法来换取更便宜的加法。GhostNet [9]通过廉价的线性变换生成更多的特征图。Sandglass [48]通过翻转反转的残差块的结构来减轻信息丢失。[45,1]训练一个网络以支持多个子网络。动态神经网络:动态网络通过使架构或参数适应输入来提高表示能力。[22,26,39,41]在超级网络内执行动态路由。[39]和[41]使用强化学习来学习用于跳过现有模型的一部分的控制器MSDNet [15]允许根据预测置信度提前退出简单样本。[46]搜索最佳MSDNet。[21]学习跨尺度的动态路由以进行语义分割。[44]调整图像分辨率以实现有效的推断。另一条工作线保持架构固定,但调整参数。Hy- perNet [8]使用另一个网络来生成主网络的参数。SENet [14]基于挤压全局上下文在信道上适配权重。SKNet [20]在不同大小的内核动态卷积[43,4]根据它们的注意力聚合多个卷积核动态ReLU[5]适应ReLU [29,17]中两个线性函数的斜率和截距。[27]使用分组的全连接层直接生成卷积权重。[3]提出了空间感知的动态卷积。[32]提出了动态组卷积。[37]在实例分割上应用动态卷积。3. 微因式卷积微因子卷积的目标是优化通道数量和节点连接性之间的权衡这里,层的连通性E被定义为每个输出节点的路径的数量,其中路径连接输入节点和输出节点。3.1. 微因式逐点卷积我们建议使用组自适应卷积来分解逐点卷积。为了简洁起见,我们假设卷积核W具有相同数量的输入和输出通道(C_in=C_out=C)并且忽略偏置项。核矩阵W被分解为两个群自适应卷积,其中群G的数量取决于信道的数量C,根据下式:W=PΦQT,⑴其中W是C-C矩阵,Q是将信道数量压缩因子R的C-C矩阵,并且P是将信道数量扩展回C的C-C矩阵。P和Q是具有G个块的对角块矩阵,每个块实现一组通道的卷积。Φ是C/C置换矩阵,类似于[47]对信道进行混洗。 因子的计算复杂度化层为=2° C。图2-左示出了C = 18、R = 2和G = 3的因式分解的示例。470√√× ×××个RG2O×× ×√×个图2. 微因式逐点和逐点卷积。左:将逐点卷积分解为两个组自适应卷积,其中组数G=C/R=18/2= 3。得到的矩阵W可以被分成GG个块,其中每个块具有秩1。中间:将k k深度卷积分解为k1和k 1深度卷积。右:微分解逐点卷积和深度卷积的精简组合。矩阵Φ的C个通道表示为隐藏通道。RNels. 分组结构限制了这些受(影响)层的每个输入(输出)影响的通道。 具体来说,每个隐藏通道连接到C输入通道,每个输出通道连接到CG隐藏渠道 数字E= C2RG投入产出每个输出通道的连接表示连接E2C2的层。当计算预算O=RG并且压缩因子R是固定的,通道C和连通性E随G在相反方向上变化组数C=.ORG,E=O。(二)图3. 通道数C与组数G上的连通性E的关系。 我们假设计算成本和缩减比R是固定的。最好用彩色观看。2 2G这在图3中示出。 作为组数G增加,C增加,但E减少。两条曲线相交(C=E),当G=C/R,(3)在这种情况下,每个输出通道恰好连接到所有输入通道一次(E=C)。这保证在任何输入-输出对之间不存在冗余路径(最小路径冗余),同时保证在每对之间存在路径(最大输入覆盖)。当量3是微因式分解逐点卷积的定义性质这意味着组G的数量不是固定的,而是根据最佳地平衡通道C的数量和输入/输出连接性的平方根定律由通道C的数量和压缩因子R来在数学上,所得卷积矩阵W被划分成G个秩-1块,如图2-左所示。3.2. 微分解深度卷积图2-中显示了如何将微因子分解应用于k×k深度卷积。卷积核被分解为k×1和1×k核。这遵循Eq. 1,每通道k×k核矩阵W,K1个矢量P,1k向量QT和Φ是值1.这种低秩近似将计算复杂度从O(k2C)降低到O(kC)。组合微因式逐点卷积和深度卷积:微因式逐点卷积和深度卷积可以以两种不同的方式组合:(a)常规组合,和(b)轻组合。前者简单地连接两个卷积。如图2-右所示,精简组合使用微分解深度卷积来扩展通道数量,方法是对每个通道应用多个空间滤波器。然后,它应用一个组自适应卷积来融合和挤压通道的数量。与其常规的对立面相比,它通过节省信道融合(逐点)计算来在学习空间滤波器(深度)上花费更多的资源,这被经验验证为对于较低网络层的实现更有效。4. 动态最大移位到目前为止,我们已经讨论了高效静态网络的设计,它不会根据输入改变其权重。我们现在引入动态Shift-Max(DY-Shift- Max),这是一种新的动态非线性,它加强了由微因子分解创建的组之间的=2G���∗=C⁄#=数量的通道连接471RGG- -使得x∈i=x(i+j)m od C.{1a(x)x},(4)i,j(i+j)modCi、ji、ji、ji、jOO输出M0M1M2M3块KCCR块KCCR块KCCR块KCCR112×112干342干363干384干312456× 56Micro-A3168Micro-A3248Micro-A33212Micro-A3481628× 28Micro-A33212Micro-A33216Micro-AMicro-B33481441624Micro-AMicro-B33641442424Micro-B56416Micro-B59616微C519232微C31923214× 14微C512832微C519232微C微C551923843264微C微C551923843264微C548080微C5480807× 7微C525664微C538464微C557696微C5720120微C338496微C357696微C3768128微C微C337208641201441× 1个平均池→2fc→ softmax4M MAdd,1.0M参数6M MAds,1.8M参数12M MAdd,2.4M参数21M MAdd,2.6M参数表1. MicroNet架构。“茎”是指茎层。“Micro-A”, “Micro-B”, and “Micro-C” refers to three Micro-Blocks (see k是核大小,C是输出通道的数量,R是微因式逐点卷积中的通道减少率注意,对于这是对微因式逐点卷积的补充,微因式逐点卷积专注于组内的连接。设x = xi(i = l,. . . .,C)表示具有C个通道的输入向量(或张量),所述C个通道被划分为G个C组每个频道 第j组循环移位(移位j Cchan.微块-A微块-B微块-Cnels)ofxisthevectorxjjCGDynamic Shift-Max输出K个融合的最大值,每个融合将多个(J)组移位组合为:J−1(a)(b)(c)第(1)款图4. 三个微块的示意图。(a)微型区块Ayi= max≤k≤KKCGj=0它使用微因式逐点卷积和深度卷积的精简组合(参见图2-右)。(b)连接微块A和微块C的(c)微型其中k(x)是动态权重,即取决于输入x的权重。它被实现为一个超函数(具有CJK输出维度),由一个平均池化序列,两个完全连接的层和一个sigmoid层组成,如Squeeze-and-Excitation[16]中所示。以这种方式,DY-Shift-Max实现了两种形式的非线性:它(a)输出J组的K个融合的最大值,以及(b)通过动态参数ak(x)对每个融合加权。第一非线性与微因式逐点卷积互补,其关注于每个组内的连接,加强组之间的连接。第二个使网络能够根据输入x调整这种加强。这两个操作增加了网络的表示能力,补偿了层数减少所固有的损失DY-Shift-Max从输入x合成CJK权重ak(x)。它的计算复杂度是(a)平均池化O(HWC),(b)生成ak(x)权重(C2JK),以及(c)每通道和空间位置的动态最大移位(HWCJK)的应用。当J和K很小时,这导致轻量模型。经验上,当J=2和K=2时,实现了分类性能和复杂度之间的良好权衡。块C,其使用微因式逐点卷积和深度卷积的常规组合。其用法见表15. Micronet下面,我们详细描述了MicroNet的设计,使用Micro-Factorized卷积和动态Shift-Max。5.1. 微块MicroNet模型由图4的三个微块组成,它们以不同的方式组合了微因式逐点卷积和深度卷积所有的微块使用动态的Shift-Max激活功能。微块A:图4a的微块A使用图2-右的微因式逐点卷积和深度卷积的简单组合它使用Micro-Factorized深度卷积扩展通道数量,并使用组自适应卷积压缩通道数量。它最适合实现较高分辨率的较低网络层(例如112×112或56× 56)。微区组B:图4b的微块B用于连接微块A和微块C。与Micro-Block-A 不 同 的 是 , 它 使 用 了 完 整 的 Micro-Factorized点-微分解深度卷积微因式逐点卷积动态最大移位Σ472i、j×个√×个→→转×个智能卷积,其包括两个组自适应卷积。因此,它既压缩又扩展通道的数量。所有MicroNet型号都有一个Micro-Block-B(见表1)。微区组C:图4的微块C实现微因式深度卷积和逐点卷积的常规组合。它最适合于更高的网络层(参见表1),因为它比精简组合向信道融合(逐点)分配更多的计算。当输入和输出具有相同尺寸时,使用跳过连接。每个微块具有三个超参数:核大小k、输出通道数C、微因式逐点卷积的瓶颈的压缩因子R。注意,两个组自适应卷积中的组的数量由等式(1)确定。3 .第三章。5.2. 架构所有模型都是手动设计的,以优化FLOP,这是一个理论和设备独立的metric。我们希望这可以被边缘设备的新硬件设计和优化所利用我们知道FLOPs不等同于 现 有 硬 件 的 推 理 延 迟 , 并 将 在 实 验 中 表 明 ,MicroNet也提高了准确性和延迟。基于上述微块,我们提出了四种不同计算成本(4M,6M,12M,21MMAds)的模型(M0,M1,M2,M3)表1列出了其完整规格。 这些网络从低层到高层遵循相同的模式:茎层微区- A微区-B微区-C。所有模型都是手工制作的,没有网络体系结构搜索(NAS)。基于简单规则选择网络超参数:R是固定的(M0为4,MicroNet-M1、M2、M3为6),C从低到高水平增加,深度从M0增加到M3。对于最深的模型(M3),在深度卷积之后,我们每个块仅使用一个动态Shift-Max层 茎层包括31卷积和13组卷积,然后是ReLU。第二个卷积扩展了通道的数量。5.3. 与先前工作的MicroNet与最近的深度学习文献有各种联系。它与流行的MobileNet [13,31,12]和ShuffleNet [47,28]模型有关。它与MobileNet共享反向瓶颈结构,并与ShuffleNet使用组卷积。相比之下,MicroNet在其卷积和激活功能方面与这些模型不同。首先,它将逐点卷积分解为群卷积,群的个数G=C/R是信道自适应的,保证了最小的路径冗余。其次,它分解深度卷积。第三,它依赖于一个新的激活函数,动态Shift-Max,以加强群体的连通性微面DW PWConvLite最大移位静止型动态Param MAdds Top-1移动1.3M10.6M44.9✓✓✓1.7M10.6M46.4✓✓1.7M10.6M50.0微✓✓✓1.8M10.5M51.7✓✓✓1.9M11.8M54.4✓✓✓2.4M12.4M58.5表2.从MobileNet到MicroNet的路径在ImageNet分类上评估在这里,我们修改MobileNet-V2,使得它具有与三个微因子化卷积选项相似的FLOP(约10.6M):深度(DW)、逐点(PW)和低水平的精简组合(精简)。我们还比较了动态Shift-Max与其静态对应物(等式中的静态ak)4).非线性和输入相关的方式。Dynamic Shift- Max本身概括了最近提出的动态ReLU[5](即动态ReLU是一种特殊情况,其中J=1并且每个通道单独激活)。6. 实验我们在三个任务上评估MicroNet:(a)图像分类,(b)对象检测和(c)关键点检测。在本节中,为了简洁起见,[12]中的基线MobileNetV 3-Small被6.1. ImageNet分类我们首先评估四个MicroNet模型(M0ImageNet有1000个类,包括1,281,167张用于训练的图像和50,000张用于验证的图像。所有模型都使用具有0.9动量的SGD优化器进行训练。图像分辨率为224 224。使用标准随机裁剪和翻转的数据增强我们使用512的小批量,学习率为0.02。每个模型训练600个epoch,具有余弦学习率衰减。重量衰减为3e-5,脱落率为0的情况。05用于较小的MicroNet(M0、M1、M2)。对于最大的模型M3,权重衰减为4 e-5,丢弃率为0。1.一、6.1.1消融研究使用MicroNet-M2进行了几次消融。所有模型都训练了300个epoch。DY-Shift-Max的默认超参数设置为J=2,K=2。从MobileNet到MicroNet:表2显示了从MobileNet到MicroNet的路径。两者共享倒置的底颈结构。在这里,我们修改MobileNetV 2(没有SE [14]),使得它具有类似于行2-4的静态微因子化卷积变体的复杂度(10.6M MAdd)。微因子化深度卷积的引入将性能提高了1。百分之五微因式逐点卷积又增加了3. 6%,并且在较低层处的精简组合增加了最终增益473√√GParamMAddsTop-111.3M10.6M48.821.5M10.5M50.241.7M10.6M50.7八个√1.7M10.6M50.8G=C/R1.8M10.5M51.7λ=√GC/RParamMAddsTop-10的情况。251.5M10.5M50.20的情况。51.7M10.6M51.61. 01.8M10.5M51.7二、02.1M10.5M50.6水平低高ParamMAddsTop-11.7M10.6M50.0✓1.8M10.5M51.7✓✓2.0M10.6M51.2(a) 固定组号G。(b) 自适应组数G.(c) 不同层次的精简组合表3.ImageNet分类上的微因子化卷积的消融表示纸张其余部分的默认选项1 .一、百分之七。总的来说,这三种分解将静态网络的前1精度从44.9%提高到51.7%。此外,静态和动态的Shift-Max进一步增加了2.7%和6.8%,分别为一个小的增量计算的增益。这表明微因式卷积和动态最大移位都是有效的。激活ParamMAddsTop-1Top-5ReLU[29]1.8M10.5M51.774.3SE[14]+ReLU2.1M10.9M54.476.8动态ReLU [5]2.4M11.8M56.078.0动态最大移位2.4M12.4M58.580.1表4. 动态最大偏移与ImageNet分类的其他激活函数。使用MicroNet-M2执行和补充机制以极低的计算成本构建网络。组数G:微因式逐点卷积包括两个组自适应卷积,其中组数等于最接近G=C/R的整数。表3a将其与类似结构和FLOP(约10.5M MAds)的网络进行了比较,但使用固定的组基数。组自适应卷积实现了更高的精度,证明了其在输入/输出连接性和通道数量之间的最佳折衷。表3b进一步证实了这一点,该表比较了表 5. 在Im-ageNet上评估的 不 同 层 的 动 态 Shift-Max 。 使 用MicroNet-M2。A1、A2、A3表示微嵌段B和微嵌段C中顺序的三个活化层(参见图1)。见图4)。微块-A仅包括A1和A2。组的自适应数量的不同选项这是由乘数λ控制,使得G=λ C/R。较大的λ对应于更多的通道,但输入/输出连接较少(见图3)。当λ在0.5和1之间时实现最佳平衡当λ从该最佳点增加(更多通道但更少连接性)或减小(更少通道但更多连接性)时,Top-1准确度下降。在本文的其余部分中使用值λ=1。请注意,表3b中的所有模型都具有类似的计算成本(大约10.5M MAds)。精简版组合:表3c使用不同层处的微因式逐点卷积和深度卷积(图2-右)的简化组合进行比较。所述轻组分组合对于较低层更有效与常规组合相比,它节省了来自通道融合(逐点)的计算,以允许更多的空间滤波器(深度)。激活功能:动态Shift-Max与之前的三个激活函数进行比较:ReLU [29]、SE+ReLU [14]和动态ReLU [5]。表4显示,动态Shift-Max的性能明显优于所有三种(至少2.5%)。注意,动态ReLU是动态Shift-Max的特殊情况,其中J=1(参见等式1)。4).DY-Shift-Max的位置:表5显示了在不同环境下实现动态Shift-Max时的top-1准确度。表6. 动态移位中两个超参数的消融-Max(J,Kin Eq. 4)ImageNet分类。表示纸张其余部分的默认选项。图4的微块的三个层的组合。在单层中使用时,动态Shift-Max应放置在深度卷积之后。这将具有ReLU活动的网络上的top-1准确性提高了4。百分之二。在微块输出处添加动态最大移位激活进一步将性能提高2%。最后,使用三层Dynamic Shift-Max进一步将ReLU网络的增益增加到6。百分之八DY-Shift-Max中的超参数表6示出了在等式(1)中使用K和J的不同组合的结果4.第一章当K=1时,我们添加一个ReLU,因为max运算符中只剩下一个元素第一行的基线(J=1,K= 1)A1A2A3参数MAds前5名ReLU–1.8M 10.5M51.7 74.3动态最大移位✓–––✓ ✓✓–✓ ✓2.1M 11.3M2.0M 10.6M2.1M 11.2M2.2M 11.5M2.3M 12.2M2.2M 11.4M2.4M 12.4M55.9 77.953.3 76.054.8 77.256.6 78.357.9 79.655.5 77.858.5 80.1JKParamMAddsTop-1Top-5112.1M10.9M54.476.8212.2M11.8M55.978.2222.4M12.4M58.580.1232.6M13.8M58.179.7122.2M11.2M55.577.6222.4M12.4M58.580.1322.6M14.2M59.080.3332.8M15.3M59.180.3474M3M20.5xM1M00.35x0.2xMicronetMicroNet编号MobileNetV30.15倍×个×个×个×× ××个×个1)等价于SE+ReLU [14]。对于固定的J=2(两个组的融合),两个融合中的最佳融合(K=2)比单个融合(K=1)更好,但是添加第三融合没有帮助,因为其仅添加路径冗余。当K固定在K=2(两个融合中的最佳)时,融合更多的组J始终更好,但需要更多的FLOP。在J=2和K=2的情况下实现了良好的折衷,对于额外的1.5M MAdd,实现了超过基线的4.1%的增益6.1.2与先前网络的表7将MicroNet与最先进的模型进行了比较,后者的复杂性低于24M FLOP。由于先前的作品缺乏10M FLOPs预算内的报告结果,我们将流行的MobileNetV3扩展到6M和4M FLOPs作为基线,分别使用宽度乘数0.2和0.15。它们与MicroNet共享相同的训练设置。为了使比较公平,使用M1-M3的两个变体前者( M3# ) 需 要 相 似 的 模 型 大 小 , 但 比 基 线 ( Mo-bileNetV 3 0.5)更少的FLOP。后者(M3)需要类似的FLOP,但允许更多的参数(高达1M),最好的服务场景FLOP比内存更重要。这是由于匹配模型大小和FLOP的难度,除了模型#参数MAdds前5名MobileNetV3 0.15׆MicroNet-M01.0M 4M1.0M 4M33.7 57.246.6 70.6MobileNetV3 0.2׆Micr oNet-M1#MicroNet-M11.2M 6M1.2M 5M1.8M 6M41.1 65.249.4 72.951.4 74.5ShuffleNetV1 0.25× [47]–1.4M 12M––1.4M 11M2.4M 12M47.349.850.3 73.855.258.2 80.159.4 80.9MobileNetV3 0.35× [2]HBONet(96× 96)[19]MobileNetV3+BFT 0.5× [38]Micr oNet-M2#MicroNet-M2HBONet(128× 128)[19]––1.6M 21M2.0M 24M1.6M 20M2.6M 21M55.2 78.057.858.059.9 81.861.3 82.962.5 83.1ShuffleNetV2+BFT [38]MobileNetV3 0.5× [2]TinyNet-E(106× 106)[10]Micr oNet-M3#MicroNet-M3表7.ImageNet [6]分类结果。#代表与对应的MobileNetV 3-Small基线具有相似的模型大小但MAdd更少的MicroNet变体。†表示我们在与MicroNet相同的培训设置下的实现。“-” : 原 文 中 没 有 。 请 注 意 , 输 入 分 辨 率 224 224 是 用 于MicroNet和相关的工作以外HBONet/TinyNet,其输入分辨率显示在括号中。最小模型(M0)。注意M3#六五六相似60 60结构到M3,仅通过减少网络宽度和动态Shift-Max中的参数来缩小模型大小。在所有情况下,MicroNet都以明显的优势优于所有先前的网络例如,MicroNet-M1#、M2#和M3#的性能分别比MobileNetV 3高出8.3%、8.4%和3.3%。考虑到模型的另一个100万预算5550454035300 5 10 15 20 25FLOPs(M)555045403530二四六八十十二十四延迟(ms)大小、MicroNet-M1、M2和M3分别将这些增益提高了2.0%、1.2%和1.2%。MicroNet-M0优于MobileNetV3 0.15:12.9%(46.6% vs. 33.7%),证明其更好地处理削减计算成本从6M到4M MAdd。特别是,从MicroNet-M1到M0,top-1准确度下降了4.8%,而从MobileNetV 3 0.2到0.15,准确度下降了7.4%。与最 近 的 MobileNet 和 ShuffleNet 改 进 ( 如ButterflyTransforms [38] 和 TinyNet [10] ) 相 比 ,MicroNet模型的top-1精度提高了2.6%以上,但使用的FLOP更少。这证明了MicroNet在极低FLOP下的有效性。6.1.3推理延迟我 们 还 在 Intel ( R ) Xeon ( R ) CPU E5-2620 v4(2.10GHz)上测量了 MicroNet的推理延迟。按 照[31,12]中的常见设置,我们在单线程模式下使用批处理大小1进行测试.报告了5,000幅图像(分辨率为224 - 224)的平均推理延迟。图5-右显示了Mi- croNet和MobileNetV 3-Small之间的比较。为了实现类似的性能,MicroNet显然比Mo-bileNetV 3消耗更少的运行时间。例如,准确率为55%的MicroNet图5.ImageNet分类评估 左:前1精度与失败。右:前1级精度与等待时间请注意,添加了Mo-bileNetV 3 0.75以便于比较。MicroNet优于MobileNetV 3,特别是在极低的计算成本下(当FLOPs小于15 M或延迟小于9 ms时,top-1准确性提高5%以上)。延迟小于7ms,而MobileNetV3需要约9.5ms。使用参数较少的MicroNet(M1#、M2#、M3#)时,准确性-延迟曲线略有下降,但仍优于MicroNetV 3。虽然最大的MicroNet 模 型 ( M3 ) 在 相 同 的 延 迟 下 仅 略 优 于MobileNetV3,但当延迟降低时,MicroNet的性能明显优 于 MobileNetV3 。 特 别 是 , 在 4ms 的 延 迟 下 ,MicroNet比MobileNetV3提高了10%,以低计算成本展示了其实力。6.1.4讨论如图5所示,在相同的FLOP下,MicroNet明显优于Mo-bileNetV 3,但在相同的延迟下,差距缩小了。这是由于两个原因。第一、M30.75xM20.5xM1M00.35x0.2xMicronetMicroNet编号MobileNetV30.15倍准确度(%)准确度(%)475×个×个×个×个×个×个×个×个×个骨干头ParamMAdds APAP 0.5AP 0.75APMAPLMobileNetV3× 1.0移动块2.1M 726.9M 57.183.863.755.062.2MicroNet-M3微块2.2M 163.2M 58.784.065.556.064.2MicroNet-M2微块1.8M 116.8M 五十四点九82.060.3五十三点二59.6表 8.COCO 对 象 检 测 结 果 。 所 有 模 型 在train2017 上 训 练 36 个 时 期 ( 3 ) 并 在val2017上测试。MAdds在图像大小224× 224上计算。表9. COCO关键点检测结果。所有模型都在train2017上训练,并在val2017上测试。使用输入分辨率256 192。该基线采用MobileNetV 3-Small1.0作为主干,采用[4](其包括双线性上采样和反转残差瓶颈块)。与基线相比,MicroNet-M3具有相似的模型大小,消耗的MAdd明显更少,但精度更高。与MobileNetV3通过搜索优化延迟不同,MicroNet是基于理论FLOP手动设计的。其次,群卷积和动态Shift-Max的实现没有优化(我们使用PyTorch实现)。我们观察到,组卷积的延迟并没有随着组数的增加而成比例地减少,并且动态Shift-Max明显慢于具有相同FLOP的卷积。我们相信,通过使用硬件感知的架构搜索来找到微因子卷积和动态Shift-Max的延迟友好组合,可以进一步提高MicroNet还可以利用组卷积[7]和动态Shift-Max中的优化改进我们将在今后的工作中对此进行研究。6.2. 对象检测我们评估了MicroNet对COCO对象检测的泛化能力[25]。所有模型均在train2017上进行训练,并在val2017上进行平均精度(mAP)评估。在[9]之后,MicroNet被用作具有特征金字塔网络(FPN)[23]的两阶段Faster R-CNN [30]和一阶段RetinaNet [24]中骨干特征提取器的直接替代品。所有模型都使用SGD从ImageNet预训练的权重中训练了36个epochs(3),并使用[40]中建议的超参数检测结果在表8中示出,其中使用图像大小224 224作为惯例来计算骨干FLOP。MicroNet-M3具有显著更低的骨干FLOP(21 Mvs56 M),在Faster R-CNN和RetinaNet框架上都实现了比MobileNetV 3-Small 1.0更高的mAP,证明了其转移到检测任务的能力。6.3. 人体姿态估计我们还评估了COCO单人关键点检测的MicroNet所有模型都在train2017上进行训练,其中包括57K图像和150K个标记有17个关键点的人实例,并在包含5000个图像的val2017上进行评估,使用10个对象关键点相似性(OKS)阈值的平均平均精度(AP)。似-对于目标检测,考虑两个微网模型(M2,M3)。通过增加选择的块集合(具有32的步幅的所有块每个模型包含具有三个微块(步幅8中的一个和步幅4中的两个)的头部和生成17个关键点的热图的逐点卷积。使用双线性上采样来增加头部分辨率,并且使用[5]的空间注意力这两个模型都使用Adam优化器从头开始训练250个epoch [18]。人类检测框被裁剪并调整大小为256192。训练和测试遵循[42,33]的设置。表9将MicroNet-M3和M2进行了比较,其具有强大的高效基线,仅需要726.9M MAdd和2.1M参数。基准应用MobileNetV 3-Small1.0作为头部中的骨干和移动块(反向残余瓶颈块)(详见[4])。我们的MicroNet-M3仅消耗基线使用的FLOP的22%(163.2M/726.9M)MicroNet-M2为更低的复杂性(116.8M FLOPs)提供了良好的处理。7. 结论在本文中,我们提出了微网处理极低的计算成本。它基于两个提议的运算符:微因子卷积和动态移位最大。前者通过逐点和深度卷积上的低秩近似来平衡通道数和输入/输出连接性。后者动态地融合连续的通道组,增强节点连接性和非线性以补偿深度减小。MicroNets系列在极低的FLOPs下实现了三项我们希望这项工作为多个视觉任务的高效CNN提供良好的基线。确认这项工作的部分资金来自NSF奖项IIS- 1924937,IIS-2041009。骨干DET框架MAdds 地图MobileNetV3× 1.0MicroNet-M3R-CNN56M21M25.926.2MicroNet-M212M22.7MobileNetV3× 1.0MicroNet-M3RetinaNet56M21M24.025.4MicroNet-M212M22.6476引用[1] 韩才、闯乾、宋涵。一劳永逸:训练一个网络并使其专业化以实现高效部署。ArXiv,abs/1908.09791,2019。二个[2] Hanting Chen , Yunhe Wang , Chunjing Xu , BoxinShi,Chao Xu,Qi Tian,and Chang Xu. 上一篇:深度学习真的需要乘法吗?IEEE/CVF计算机视觉和模式识别会议(CVPR),2020年6月。二个[3] 陈俊瑞,王锡军,郭子超,X. zhang和J.太阳动
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功