(四)ShuffleNet_v2----2018ECCV论文解读

ShuffleNet V2: Practical Guidelines for Efficient CNN Architecture Design

ShuffleNet V2:高效CNN架构设计实用指南

Abstract

当前,神经网络体系结构设计主要由计算复杂度的间接度量即FLOP指导。但是,直接量度,例如速度,还取决于其他因素,例如存储器访问成本和平台特性。因此,这项工作建议评估目标平台上的直接指标,而不仅仅是考虑FLOP。基于一系列受控实验,这项工作得出了一些有效的网络设计实用指南。因此,提出了一种称为ShuffleNet V2的新体系结构。全面的烧蚀实验证明,我们的模型在速度和精度的权衡方面是最先进的。

关键字:CNN架构设计,效率,实用

1 Introduction

深度卷积神经网络(CNN)的架构已经发展多年,变得更加准确和快速。自从AlexNet [1]的里程碑式工作以来,通过新颖的结构,包括VGG [2],GoogLeNet [3],ResNet [4,5],DenseNet [6],ResNeXt [7], SE-Net [8]和自动中性架构搜索[9,10,11],仅举几例。

除了准确性之外,计算复杂性也是另一个重要考虑因素。现实世界中的任务通常旨在在有限的计算预算下获得最佳精度,这由目标平台(例如,硬件)和应用场景(例如,自动驾驶需要低延迟)给出。这激发了一系列朝着轻量级架构设计和更好的速度精度折衷的工作,其中包括Xception [12],MobileNet [13],MobileNet V2 [14],ShuffleNet [15]和CondenseNet [16]。很少。分组卷积和深度卷积在这些工作中至关重要。
在这里插入图片描述
​ 图1:在具有四个不同计算复杂度的两个硬件平台上,四种网络体系结构的准确性(ImageNet分类在验证集上),速度和FLOP的测量。 (a,c)GPU结果,batchsize =8。(b,d)ARM结果,batchsize =1。在所有情况下,性能最佳的算法是我们建议的ShuffleNet v2,位于右上方。

为了测量计算复杂度,广泛使用的度量标准是浮点运算或FLOPs1的数量。 但是,FLOP是间接指标。 它是近似值,但通常不等同于我们真正关心的直接指标,例如速度或延迟。 这种差异在以前的著作中已经注意到[17,18,14,19]。例如,MobileNet v2 [14]比NASNET-A [9]快得多,但是它们具有可比的FLOP。 此现象在图1(c)(d)中得到了进一步说明,该图表明具有相似FLOP的网络具有不同的速度。 因此,仅使用FLOP作为计算复杂度的唯一度量标准是不够的,并且可能导致次优设计。

间接(FLOP)和直接(速度)指标之间的差异可以归因于两个主要原因。首先,FLOP未考虑对速度有重大影响的几个重要因素。这样的因素之一是内存访问成本(MAC)。在某些操作(例如组卷积)中,此类开销构成了运行时的很大一部分。在具有强大计算能力的设备(例如GPU)上可能会成为瓶颈。在网络体系结构设计期间,不应简单地忽略此成本。另一个是并行度。在相同的FLOP下,具有高并行度的模型可能比具有低并行度的模型快得多。

其次,根据平台的不同,具有相同FLOP的操作可能具有不同的运行时间。例如,张量分解被广泛用于早期工作[20,21,22],以加速矩阵乘法。然而,最近的工作[19]发现[22]中的分解在GPU上甚至更慢,尽管它可以将FLOP减少75%。我们调查了这个问题,发现这是因为最新的CUDNN [23]库针对3×3转换进行了专门优化。我们不能肯定认为3×3转换比1×1转换慢9倍。
在这里插入图片描述
​ 图2:在两个代表性的最先进的网络体系结构ShuffeNet v1 [15](1×,g = 3)和MobileNet v2 [14](1×)上的运行时分解。

基于这些观察,我们建议为有效的网络体系结构设计应考虑两个原则。首先,应使用直接指标(例如速度)代替间接指标(例如FLOP)。其次,应在目标平台上评估此类指标。

在这项工作中,我们遵循这两个原则并提出了更有效的网络体系结构。在第2节中,我们首先分析两个代表性的最新网络的运行时性能[15,14]。然后,我们得出了进行有效网络设计的四项准则,这不仅仅是考虑FLOP的准则。尽管这些准则与平台无关,但是我们执行了一系列受控实验,以通过专用代码优化在两个不同的平台(GPU和ARM)上对它们进行验证,以确保我们的结论是最新的。

在第3节中,根据指南,我们设计了一个新的网络结构。受到ShuffleNet [15]的启发,它被称为ShuffleNet V2。通过第4节中的全面验证实验,证明了这两个平台上的网络都比以前的网络更快,更准确。图1(a)(b)给出了比较的概述。例如,给定4000万个FLOP的计算复杂性预算,ShuffleNet v2的准确度分别比ShuffleNet v1和MobileNet v2高3.5%和3.7%。

2 Practical Guidelines for Efficient Network Design

我们的研究是在两种广泛采用的硬件上进行的,这些硬件具有CNN库的行业级优化。我们注意到,我们的CNN库比大多数开源库更有效。因此,我们确保我们的观察和结论是可靠的,并且对工业实践具有重要意义。

GPU。使用单个NVIDIA GeForce GTX 1080Ti。卷积库是CUDNN 7.0 [23]。我们还激活CUDNN的基准测试功能,分别为不同的卷积选择最快的算法。

ARM。高通Snapdragon810。我们使用高度优化的基于Neon的实现。一个线程用于评估。

在这里插入图片描述
其他设置包括:完整的优化选项(例如张量融合,用于减少小规模操作的开销)已打开。输入的图像大小为224×224。每个网络均被随机初始化并评估100次。使用平均运行时间。

为了开始我们的研究,我们分析了两个最新网络ShuffleNet v1 [15]和MobileNet v2 [14]的运行时性能。它们在ImageNet分类任务上既高效又准确。它们都广泛用于手机等低端设备。尽管我们仅分析了这两个网络,但我们注意到它们代表了当前趋势。群卷积和深度卷积是它们的核心,它们也是其他最新网络的关键组件,例如ResNeXt [7],Xception [12],MobileNet [13]和CondenseNet [16]。

如图2所示,将整个运行时分解为不同的操作。我们注意到,FLOP度量标准仅考虑了卷积部分。尽管这部分消耗大量时间,但其他操作(包括数据I / O,数据混洗和按元素操作(AddTensor,ReLU等))也占用了大量时间。因此,FLOP对实际运行时间的估计不够准确。

基于此观察,我们从几个不同方面进行了运行时(或速度)的详细分析,并得出了一些有效的网络体系结构设计的实用准则。

G1)相等的通道宽度可最大程度地减少内存访问成本(MAC)。现代网络通常采用深度可分离卷积[12,13,15,14],其中点向卷积(即1×1卷积)占了大多数复杂度[15]。我们研究了1×1卷积的核形状。形状由两个参数指定:输入通道c1的数量和输出通道c2的数量。令h和w为特征图的空间大小,则1×1卷积的FLOP为B = hwc1c2。

为简单起见,我们假定计算设备中的缓存足够大,可以存储整个功能图和参数。因此,内存访问成本(MAC)或内存访问操作数为MAC = hw(c1 + c2)+ c1c2。请注意,这两个术语分别对应于输入/输出特征图和内核权重的内存访问。

在这里插入图片描述

从均值不平等,我们有
M A C ≥ 2 h w B + B h w ( 1 ) \mathrm{MAC} \geq 2 \sqrt{h w B}+\frac{B}{h w} (1) MAC2hwB +hwB(1)
因此,MAC具有FLOP给出的下限。当输入和输出通道数相等时,它达到下限。

结论是理论上的。实际上,许多设备上的缓存不够大。另外,现代计算库通常采用复杂的阻塞策略来充分利用缓存机制[24]。因此,实际的MAC可能会偏离理论值。为了验证上述结论,进行如下实验。通过反复堆叠10个构建基块来构建基准网络。每个块包含两个卷积层。第一个包含c1input通道和c2output通道,第二个包含其他通道。

表1报告了通过改变比率c1:c2固定固定FLOP的运行速度。显然,当c1:c2接近1:1时,MAC变小并且网络评估速度更快。

G2)过多的组卷积会增加MAC。组卷积是现代网络体系结构的核心[7,15,25,26,27,28]。通过将所有通道之间的密集卷积更改为稀疏(仅在通道组内),可以降低计算复杂度(FLOP)。一方面,在给定固定FLOP的情况下,它允许使用更多信道,并增加了网络容量(因此具有更高的准确性)。但是,另一方面,增加的通道数将导致更多的MAC。

正式地,遵循G1和Eq中的符号。在图1中,对于1×1组卷积,MAC与FLOP之间的关系为
M A C = h w ( c 1 + c 2 ) + c 1 c 2 g = h w c 1 + B g c 1 + B h w ( 2 ) \begin{aligned} \mathrm{MAC} &=h w\left(c_{1}+c_{2}\right)+\frac{c_{1} c_{2}}{g} \\ &=h w c_{1}+\frac{B g}{c_{1}}+\frac{B}{h w} \end{aligned} (2) MAC=hw(c1+c2)+gc1c2=hwc1+c1Bg+hwB(2)
其中g是组数,B = hwc1c2 / g是FLOP。不难看出,给定固定的输入形状c1×h×w和计算成本B,MAC随着g的增加而增加。
在这里插入图片描述
为了在实践中研究这种影响,通过堆叠10个逐点组卷积层来构建基准网络。 表2报告了固定总FLOP时使用不同组号的运行速度。 显然,使用较大的组数会大大降低运行速度。 例如,在GPU上使用8组的速度比在1组(标准密集卷积)上的速度慢两倍以上,而在ARM上则要慢30%。 这主要是由于MAC增加。 我们注意到,我们的实现已经过特别优化,并且比逐组计算卷积要快得多。

因此,我们建议应根据目标平台和任务谨慎选择组号。使用大的组号是不明智的,因为这可能使使用更多的通道成为可能,因为快速增加的计算成本可能会轻易抵消准确性提高的好处。

G3)网络碎片会降低并行度。在GoogLeNet系列[29,30,3,31]和自动生成的体系结构[9,11,10]中,“多路径”结构在每个网络模块中被广泛采用。使用了许多小型运算符(在此称为“分段运算符”),而不是一些大型运算符。例如,在NASNET-A [9]中,分段运算符的数量(即,一个构建块中的单个卷积或池化操作的数量)为13。相反,在像ResNet [4]这样的常规结构中,该数量为2或3。

尽管已显示这种碎片化的结构有助于提高准确性,但由于它对具有强大并行计算能力的设备(如GPU)不友好,因此可能会降低效率。它还引入了额外的开销,例如内核启动和同步。

在这里插入图片描述
​ 图3:ShuffleNet v1 [15]的构建块和这项工作。 (a):基本的ShuffleNet单位; (b)ShuffleNet单元,用于空间下采样(2倍); (c)我们的基本单位; (d)我们用于空间下采样(2×)的单元。 DWConv:深度卷积。 GConv:分组卷积。

为了量化网络碎片如何影响效率,我们评估了一系列具有不同碎片度的网络块,具体而言,每个构建块由1到4个1×1卷积组成,这些卷积按顺序或并行排列。 块结构在附录中说明。 每个块重复堆叠10次。 表3中的结果表明,碎片会显着降低GPU的速度,例如 4片段结构比1片段慢3倍。 在ARM上,速度降低相对较小。

G4)逐元素运算不可忽略。如图2所示,在像[15,14]这样的轻量模型中,逐元素操作会占用大量时间,尤其是在GPU上。在这里,逐元素运算符包括ReLU,AddTensor,AddBias等。它们的FLOP较小,但MAC相对较重。特别地,我们还将深度卷积[12,13,14,15]视为元素级算子,因为它也具有很高的MAC / FLOPs比。

为了验证,我们在ResNet中试验了“瓶颈”单元(1×1 conv,然后是3×3 conv,然后是1×1 conv,并带有ReLU和快捷方式连接)[4]。 ReLU和快捷方式操作将分别删除。表4中报告了不同版本的运行时。我们观察到,除去ReLU和快捷方式后,GPU和ARM均可实现约20%的加速。

结论与讨论 基于上述指导原则和实证研究,我们得出结论,一种有效的网络架构应:1)使用“平衡”卷积(相等的信道宽度); 2)注意使用组卷积的代价; 3)减少碎片程度;和4)减少按元素操作。这些理想的属性取决于超出理论FLOP的平台特性(例如内存操作和代码优化)。对于实际的网络设计,应该考虑它们。

在这里插入图片描述
轻量级神经网络体系结构的最新进展[15,13,14,9,11,10,12]大多基于FLOP的度量,而没有在上面考虑这些特性。 例如,ShuffleNet v1 [15]在很大程度上依赖于组卷积(针对G2)和类似瓶颈的构建块(针对G1)。MobileNetv2 [14]使用了与G1背道而驰的瓶颈结构。 它在“厚”特征图上使用深度卷积和ReLU,这违反了G4。自动生成的结构[9,11,10]高度分散,违反了G3。

3 ShuffleNet V2: an Efficient Architecture

ShuffleNet v1的回顾[15]。 ShuffleNet是最先进的网络体系结构。它被低端设备(例如手机)广泛采用。它激发了我们的工作。因此,首先要对其进行审查和分析。

根据[15],轻量级网络的主要挑战是在给定的计算预算(FLOP)下,仅有限数量的功能通道是可以承受的。为了在不显着增加FLOP的情况下增加通道数量,在[15]中采用了两种技术:逐点群卷积和类似瓶颈的结构。然后引入“频道混洗”操作以实现不同频道组之间的信息通信并提高准确性。构造块如图3(a)(b)所示。

如第2节所述,逐点组卷积和瓶颈结构都会增加MAC(G1和G2)。此费用不可忽略,尤其是对于轻型机型。同样,使用过多的组也会违反G3。快捷方式连接中按元素进行“添加”操作也是不希望的(G4)。因此,为了获得较高的模型容量和效率,关键问题是如何保持既不密集卷积又不存在过多组的大量相等宽度的信道。

通道拆分和ShuffleNet V2为此,我们引入了一个简单的运算符,称为通道拆分。它在图3(c)中说明。在每个单元的9个开头,将c个特征通道的输入分为两个分支,分别具有c-c0和c0通道。 G3之后,仍保留一个分支作为标识。另一个分支由三个具有相同输入和输出通道的卷积组成,以满足G1。与[15]不同,两个1×1卷积不再按组进行。这部分遵循G2,部分原因是拆分操作已经产生了两个组。

卷积后,将两个分支连接起来。因此,通道数保持不变(G1)。然后使用与[15]中相同的“信道混洗”操作来启用两个分支之间的信息通信。

改组后,下一个单元开始。请注意,ShuffleNet v1 [15]中的“添加”操作不再存在。像ReLU和深度卷积这样的元素操作仅存在于一个分支中。同样,三个连续的元素方式操作“ Concat”,“ Channel Shuffle”和“ Channel Split”被合并为单个元素方式操作。根据G4,这些更改是有益的。

对于空间下采样,单位略有修改,如图3(d)所示。通道拆分运算符已删除。因此,输出通道的数量增加了一倍。

提议的构件(c)(d)以及生成的网络称为ShuffleNet V2。根据以上分析,我们得出结论,此架构设计遵循所有准则,因此非常高效。

重复堆叠构建模块以构建整个网络。为简单起见,我们设置c0 = c / 2。总体网络结构类似于ShuffleNet v1 [15],并在表5中进行了概述。只有一个区别:在全局平均池之前添加了一个附加的1×1卷积层以混合功能,这在ShuffleNet v1中是不存在的。类似于[15],每个块中的通道数按比例缩放以生成复杂度不同的网络,标记为0.5×,1×等。

网络准确性分析ShuffleNet v2不仅高效,而且准确。有两个主要原因。首先,每个构建块中的高效率使得可以使用更多的功能通道和更大的网络容量。

其次,在每个块中,一半特征通道(当c0 = c / 2时)直接通过该块并加入下一个块。与DenseNet [6]和CondenseNet [16]相似,这可以看作是一种功能重用。

在DenseNet [6]中,为了分析特征重用模式,绘制了层之间权重的l1-范数,如图4(a)所示。显然,相邻层之间的连接比其他层更牢固。这意味着所有层之间的密集连接可能会引入冗余。最近的CondenseNet [16]也支持这种观点。

在这里插入图片描述
在ShuffleNet V2中,很容易证明第i个与第(i + j)个构建块之间的“直接连接”通道数为rjc,其中r =(1-c0)/ c。换句话说,特征重用量随两个块之间的距离呈指数衰减。在远距离的块之间,功能重用变得很弱。图4(b)绘制了与(a)中相似的可视化效果,其中r = 0.5。注意,(b)中的模式类似于(a)。

因此,ShuffleNet V2的结构通过设计实现了这种类型的功能重用模式。与DenseNet [6]一样,它也具有重复使用特征以实现高精度的好处,但是它的效率要高得多。在表8中的实验中对此进行了验证。

4 Experiment

我们的消融实验在ImageNet 2012分类数据集上进行[32,33]。遵循惯例[15,13,14],相比之下,所有网络都具有四个级别的计算复杂度,即大约40、140、300和500+个MFLOP。这种复杂性对于移动方案而言是典型的。其他超参数和协议与ShuffleNet v1完全相同[15]。

我们将其与以下网络架构进行比较[12、14、6、15]:

  • ShuffleNet v1 [15]。在[15]中,比较了一系列的组号g。建议g = 3在精度和速度之间有更好的权衡。这也符合我们的观察。在这项工作中,我们主要使用g =3。
  • – MobileNet v2 [14]。它比MobileNet v1 [13]更好。为了全面比较,我们在原始论文[14]和重新实现中均报告了准确性,因为[14]中的某些结果不可用。
  • – Xception [12]。原始的Xception模型[12]非常大(FLOP> 2G),这超出了我们的比较范围。最近的工作[34]提出了一种改进的轻量级Xception结构,该结构在精度和效率之间表现出更好的折衷。因此,我们将其与该变体进行比较。
  • – DenseNet [6]。原始工作[6]仅报告大型模型的结果(FLOP> 2G)。为了进行直接比较,我们按照表5中的体系结构设置重新实现它,其中阶段2-4中的构造块由11个DenseNet块组成。我们调整渠道数量以满足不同的目标复杂性。

表8总结了所有结果。我们从不同方面分析这些结果。

精度与FLOP的关系。显然,提出的ShuffleNet v2模型在很大程度上要优于所有其他网络2,尤其是在较小的计算预算下。另外,我们注意到MobileNet v2在40个MFLOP级别上以224×224的图像大小执行合并。这可能是由于频道太少所致。相比之下,由于我们的高效设计允许使用更多通道,因此我们的模型不会遭受此缺点。而且,虽然我们的模型和DenseNet [6]都具有重用功能,但我们的模型效率更高,如第三节中所述。

表8还比较了我们的模型与其他最新网络的情况,包括CondenseNet [16],IGCV2 [27]和IGCV3 [28]。我们的模型在各种复杂度级别上的性能始终如一。

推理速度与FLOP /精度之间的关系。对于ShuffleNet v2,MobileNet v2,ShuffleNet v1和Xception等四种精度较高的体系结构,我们将它们的实际速度与FLOP进行比较,如图1(c)(d)所示。附录表1中提供了有关不同分辨率的更多结果。

ShuffleNet v2明显比其他三个网络快,尤其是在GPU上。例如,在500MFLOP时,ShuffleNet v2比MobileNet v2快58%,比ShuffleNet v1快63%,比Xception快25%。在ARM上,ShuffleNet v1,Xception和ShuffleNet v2的速度相当。但是,MobileNet v2慢得多,尤其是在较小的FLOP上。我们认为这是因为MobileNet v2具有更高的MAC(请参阅第2节中的G1和G4),这在移动设备上很重要。

与MobileNet v1 [13],IGCV2 [27]和IGCV3 [28]相比,我们有两个观察结果。首先,尽管MobileNet v1的准确性不高,但它在GPU上的速度要比包括ShuffleNet v2在内的所有同类产品都快。我们认为这是因为其结构可以满足大多数建议的准则(例如,对于G3,MobileNet v1的片段比ShuffleNet v2还要少)。其次,IGCV2和IGCV3较慢。这是由于使用了太多的卷积组(在[27,28]中为4或8)。两种观察结果均与我们建议的指南一致。

最近,自动模型搜索[9,10,11,35,36,37]已成为CNN体系结构设计的有希望的趋势。表8的底部评估了一些自动生成的模型。我们发现它们的速度相对较慢。我们认为,这主要是由于使用了太多片段(请参阅G3)。尽管如此,这一研究方向仍然是有前途的。例如,如果将模型搜索算法与我们提出的指南结合起来,并在目标平台上评估直接指标(速度),则可以获得更好的模型。

最后,图1(a)(b)总结了精度与速度(直接度量)的结果。我们得出结论说,ShuffeNet v2在GPU和ARM上均是最佳的。

与其他方法的兼容性。 ShuffeNet v2可以与其他技术结合使用,以进一步提高性能。当配备了Squeezeandand-excitation(SE)模块[8]时,ShuffleNet v2的分类精度提高了0.5%,但会损失一定的速度。块结构在附录图2(b)中说明。结果示于表8(底部)。

大型模型通用化。尽管我们的主要消融是在重量轻的情况下执行的,但ShuffleNet v2可用于大型模型(例如,FLOP≥2G)。表6比较了一个50层的ShuffleNet v2(附录中的详细信息)与ShuffleNet v1 [15]和ResNet-50 [4]的对应关系。 ShuffleNet v2在2.3GFLOP的性能上仍胜过ShuffleNet v1,并以40%的FLOP超过了ResNet-50。

对于深度较深的ShuffleNet v2(例如超过100层),为了加快收敛速度,我们通过添加剩余路径(附录中的详细信息)对基本ShuffleNet v2单元进行了稍微的修改。表6列出了配备SE [8]组件的164层ShuffleNet v2模型(附录中的详细信息)。与以前的最新模型[8]相比,它具有更少的FLOP,因而具有更高的精度。

对象检测为了评估泛化能力,我们还测试了COCO对象检测[38]任务。我们使用最先进的轻型检测器– Light-Head RCNN [34]作为我们的框架,并遵循相同的培训和测试协议。只有骨干网被我们的骨干网取代。在ImageNet上对模型进行预训练,然后根据检测任务对其进行微调。对于训练,我们使用COCO中的train + val设置,除了来自最小设置的5000张图像,然后使用minival进行测试。精度度量标准是COCO标准mmAP,即框IoU阈值从0.5到0.95的平均mAP。

将ShuffleNet v2与其他三个轻量级模型进行比较:Xception [12,34],ShuffleNet v1 [15]和MobileNet v2 [14]在四个复杂度上。表7中的结果表明ShuffleNet v2表现最佳。

将检测结果(表7)与分类结果(表8)进行比较,有趣的是,分类时的准确度等级为ShuffleNet v2≥MobileNet v2> ShuffeNet v1> Xception,而在检测时,准确度等级为ShuffleNet v2> Xception≥ShuffleNet v1≥MobileNet v2。这表明Xception在检测任务方面很出色。这可能是由于Xception构建块的接受域比其他对应域更大(7 vs. 3)。受此启发,我们还通过在每个构建基块中的第一个点式卷积之前引入附加的3×3深度式卷积来扩大ShuffleNet v2的接收范围。此变体表示为ShuffleNet v2 *。仅需几个额外的FLOP,就可以进一步提高精度。

我们还在GPU上对运行时间进行了基准测试。 为了公平比较,批大小设置为4,以确保完全利用GPU。 由于数据复制(分辨率高达800×1200)和其他特定于检测的操作(如PSRoI Pooling [34])的开销,不同模型之间的速度差距要小于分类的速度差距。 尽管如此,ShuffleNet v2仍然胜过其他产品,例如 比ShuffleNet v1快40%,比MobileNet v2快16%。

在这里插入图片描述
在这里插入图片描述
此外,变体ShuffleNet v2 *具有最高的准确性,但仍比其他方法快。这引发了一个实际的问题:如何增加感受野的大小?这对于高分辨率图像中的目标检测至关重要[39]。将来我们将研究该主题。

5 Conclusion

我们建议网络体系结构设计应考虑诸如速度之类的直接量度,而不是像FLOPs这样的间接量度。我们提供实用指南和新颖的体系结构ShuffleNet v2。全面的实验证明了我们新模型的有效性。我们希望这项工作可以激发未来平台意识和更实用的网络体系结构设计的工作。

致谢感谢Yichen Wei在论文写作方面的帮助。这项研究得到了中国国家自然科学基金(授权号61773229)的部分支持。
在这里插入图片描述
​ 表8:在两个平台和四个计算复杂度级别上,几种网络体系结构在分类错误(验证集,单中心作物)和速度方面的比较。将结果按复杂性级别分组,以便更好地进行比较。对于GPU,批处理大小为8;对于ARM,批处理大小为1。图像尺寸为224×224,除了:[*] 160×160和[**] 192×192。由于目前缺乏有效的实施,我们不提供CondenseNets [16]的速度测量。

Appendix

在这里插入图片描述
附录图1:实验中用于准则3的构件。(a)1片段。 (b)2片段系列。 (c)4片段系列。 (d)2片段平行。 (e)4片段平行。
在这里插入图片描述
附录图2:具有SE /残差功能的ShuffleNet v2的构建块。 (a)ShuffleNet v2带有残留。 (b)带SE的ShuffleNet v2。 (c)具有SE和残差的ShuffleNet v2。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值