没有合适的资源?快使用搜索试试~ 我知道了~
48350HetConv:基于异构卷积核的深度CNN卷积0Pravendra Singh Vinay Kumar Verma Piyush Rai Vinay P. Namboodiri印度卡纳普尔理工学院计算机科学与工程系0{psingh, vkverma, piyush, vinaypn}@cse.iitk.ac.in0摘要0我们提出了一种新颖的深度学习架构,其中卷积操作利用异构卷积核。所提出的HetConv(基于异构卷积核的卷积)相对于标准卷积操作减少了计算量(FLOPs)和参数数量,同时仍然保持了表示效率。为了展示我们提出的卷积的有效性,我们在标准卷积神经网络(CNN)架构(如VGG[31]和ResNet[8])上进行了广泛的实验结果展示。我们发现,在这些架构中用我们提出的HetConv滤波器替换标准卷积滤波器后,我们在速度方面实现了3倍到8倍的FLOPs改进,同时仍然保持(有时甚至提高)准确性。我们还将我们提出的卷积与分组/深度卷积进行了比较,并展示了它在减少FLOPs方面的更高准确性。01. 引言0卷积神经网络[8, 19,31]在视觉和自然语言处理等领域表现出色。为了进一步提高性能,一般趋势是使模型更加复杂和深层。通过增加模型复杂性和深度来提高准确性并非免费,这会导致计算量(FLOPs)的大幅增加。因此,提出了各种类型的卷积操作/卷积滤波器,以提高模型的效率并减少FLOPs。现有的卷积滤波器可以大致分为三类:1-深度卷积滤波器用于执行深度卷积(DWC)[39],2-点卷积滤波器用于执行点卷积(PWC)[37],3-分组卷积滤波器用于执行分组卷积(GWC)[19]。最近的大多数架构[12, 36, 2, 15, 38,43]使用这些卷积滤波器的组合来使模型更加高效。通过使用这些卷积(例如DWC,PWC和GWC),许多流行的模型[15, 12, 2]探索了新的0架构来减少FLOPs。然而,设计一个新的架构需要大量的工作来找出在FLOPs最小的情况下的最佳滤波器组合。提高模型效率的另一种流行方法是使用模型压缩[28, 1, 24, 11, 21,10,42]。模型压缩可以大致分为三类:连接剪枝[6],滤波器剪枝[24, 11, 21, 10, 33, 32, 34]和量化[6,28]。在滤波器剪枝中,思想是剪枝掉对模型贡献最小的滤波器或连接,然后通常对模型进行微调以保持性能。在剪枝模型时,我们需要一个预训练模型(可能需要计算量大的训练作为预处理步骤),然后稍后丢弃对模型贡献最小的滤波器。因此,这是一个非常昂贵和棘手的过程。因此,使用高效的卷积滤波器或卷积操作来设计高效的架构比剪枝更受欢迎。这不需要昂贵的训练和剪枝,因为训练可以从头开始高效地完成。使用高效的卷积滤波器,有两个不同的目标。一种工作集中于设计具有最小FLOPs的架构,但在准确性上有所妥协。这些工作侧重于为物联网/低端设备开发模型[12,43]。这些模型的准确性较低,因此它们必须寻找最佳模型以在准确性和FLOPs之间取得平衡。因此,FLOPs和模型准确性之间存在权衡。另一组工作侧重于在保持模型FLOPs与原始架构相同的情况下提高准确性。最近的架构,如Inception [36],RexNetXt [41]和Xception[2]就是这种工作的例子。它们的目标是使用高效的卷积滤波器设计更复杂的模型,同时保持FLOPs与基础模型相同。通常预期更复杂的模型能够学习更好的特征,从而得到更好的准确性。然而,这些方法并不专注于设计新的架构,而主要是在标准基础架构中使用现有的高效滤波器。因此,这些工作保持了层数和48360与这两种方法相反,我们的工作的主要重点是通过设计新的卷积核来减少给定模型/架构的FLOP,而不会牺牲准确性。实验结果表明,与最先进的修剪方法相比,我们提出的方法具有更低的FLOP,同时保持了基础模型/架构的准确性。修剪方法非常昂贵,并且在实现FLOP压缩时会出现显著的准确性下降。在我们提出的方法中,我们选择了一种不同的策略,以提高现有模型的效率而不会牺牲准确性。架构搜索需要多年的研究才能获得优化的架构。因此,我们设计了一种高效的卷积操作(卷积滤波器),可以直接插入任何现有的标准架构中以减少FLOP。为了实现这一点,我们提出了一种新类型的卷积-异构卷积。根据卷积核的类型,卷积操作可以分为两类:0•同质卷积使用传统的卷积滤波器(例如标准卷积、分组卷积、深度卷积、点卷积)。同质卷积可以使用同质滤波器进行。如果一个滤波器包含相同大小的所有卷积核,则称其为同质滤波器(例如,在一个3×3×256的CONV2D滤波器中,所有256个卷积核的大小都是3×3)。0•异构卷积使用异构卷积滤波器(HetConv)。如果一个滤波器包含不同大小的卷积核,则称其为异构滤波器(例如,在一个HetConv滤波器中,256个卷积核中有一部分是3×3的,剩余的卷积核是1×1的)。0在深度CNN中使用异构滤波器克服了基于高效架构搜索和模型压缩的现有方法的局限性。最新的高效架构MobileNet[12]使用深度卷积和点卷积。标准卷积层被两个卷积层替换,因此它具有更高的延迟(延迟为1)。有关延迟的更多细节,请参阅第3.3节和图4。但是我们提出的HetConv与原始架构具有相同的延迟(延迟为0),而[12, 36, 37,2]的延迟大于零。与模型压缩相比,后者准确性下降严重,我们的方法与ResNet [8]和VG-GNet[31]等标准模型的最先进结果非常有竞争力。使用HetConv滤波器,我们可以训练我们的模型0与需要预训练模型的修剪方法不同,我们的方法是从头开始训练的,而且不会牺牲准确性。修剪方法在FLOP修剪程度增加时也会出现准确性急剧下降的问题。使用我们提出的Het-Conv滤波器,与FLOP修剪方法相比,我们在FLOP方面取得了最先进的结果。此外,修剪过程效率低下,修剪后的训练和微调需要很长时间。我们的方法非常高效,并且在从头开始训练时与原始模型相比具有相似的结果。据我们所知,这是第一个异构的卷积/滤波器。这种异构设计有助于提高现有架构的效率(FLOP减少),而不会牺牲准确性。我们对不同架构(如ResNet [8],VGG-16[31]等)进行了广泛的实验,只需将它们的原始滤波器替换为我们提出的滤波器。我们发现,在不牺牲这些模型的准确性的情况下,我们可以实现高度的FLOP减少(3倍至8倍)。与现有的修剪方法相比,这些FLOP减少甚至更好。我们的主要贡献如下:0•我们设计了一种高效的异构卷积滤波器,可以插入任何现有的架构中,以提高架构的效率(FLOPs减少3倍至8倍),而不会牺牲准确性。0•所提出的HetConv滤波器的设计方式使其具有零延迟。因此,从输入到输出几乎没有延迟。02. 相关工作0深度神经网络的最近成功[19, 29, 8,014, 4, 5, 26, 40, 35,27]取决于模型设计。为了实现最小的错误率,模型变得越来越复杂。复杂且更深的架构包含数百万个参数,并需要数十亿个FLOPs(计算)[8, 31,14]。这些模型需要高端规格的计算机,而这种类型的架构在低计算资源上非常低效。这引起了对设计高效模型的兴趣[7]。提高模型效率的工作可以分为两部分。02.1. 高效卷积滤波器0最近提出了几种新颖的卷积滤波器来设计高效架构。其中Groupwise Convolution (GWC) [19],Depthwiseconvolution (DWC) [39]和Pointwise Convolution (PWC)[8]是常用的卷积滤波器。它们被广泛用于设计高效架构。GoogleNet[37]使用inception模块和不规则堆叠架构。Inception48370模块使用GWC和PWC来减少FLOPs。ResNet [8,9]使用瓶颈结构设计了一种高效的架构,带有残差连接。他们使用PWC和标准卷积,有助于更深入地进行,而不增加模型参数并减少FLOPs爆炸。因此,他们可以设计比VGG[31]更深的架构。ResNetxt[41]使用ResNet架构,并将每个层分为GWC和PWC。因此,在不增加FLOPs的情况下,他们可以增加基数1。他们表明,增加基数比更深或更宽的网络更有效。SENet[13]设计了一种新的连接,为每个输出特征图赋予权重,FLOPs略有增加,但性能提升。MobileNet[12]是另一种专为物联网设备设计的流行架构,包含DWC和PWC。这种架构非常轻巧,FLOPs方面非常高效。与最先进的模型相比,这种FLOPs的减少并非免费,而是以准确性下降的代价而来。[17,16]在同一层使用不同类型的卷积滤波器,但每个滤波器由于每个滤波器中存在相同类型的内核而执行同质卷积。在同一层使用不同类型的卷积滤波器还有助于减少参数/FLOPs。在我们提出的卷积中,由于每个滤波器中存在不同类型的内核,卷积操作是异质的。02.2. 模型压缩0另一种提高CNN效率的流行方法是模型压缩。这些方法可以分为以下几类:1-连接剪枝[6, 44],2-过滤器剪枝[23, 3,33, 32,34]和3-位压缩[28]。与其他方法相比,过滤器剪枝方法更有效,并且在FLOPs方面具有较高的压缩率。此外,过滤器剪枝方法不需要任何特殊的硬件/软件支持(稀疏库)。大多数过滤器剪枝的工作都是根据某些标准计算过滤器的重要性,并根据这些标准进行修剪,然后进行重新训练以恢复准确性下降。[20]使用l1范数作为过滤器排序的度量标准。但是修剪是在预训练模型上进行的,并涉及迭代训练和昂贵的修剪。此外,如果FLOP修剪的程度增加,过滤器修剪会导致准确性急剧下降[3, 42, 24]。03. 提出的方法0在这项工作中,我们提出了一种新颖的滤波器/卷积(HetConv),它包含了异质卷积核(例如,一些卷积核的大小为3 × 3,其他卷积核的大小可能为1 ×1),以减少现有模型的FLOPs,同时保持相同的准确性。01. 变换集的大小0图1.标准卷积滤波器(同质)和异质卷积滤波器(HetConv)之间的区别。这里M是输入深度(输入通道数),P是部分。在M个卷积核中,M/P个卷积核的大小为3 × 3,剩下的卷积核的大小为1 × 1。0这与由同质卷积核(例如全部为3 × 3或全部为5 ×5)组成的标准卷积滤波器非常不同。异质滤波器在FLOPs方面非常高效。它可以近似为组卷积滤波器(GWC)和逐点卷积滤波器(PWC)的组合滤波器。为了减少卷积层的FLOPs,我们通常用两个或更多层(GWC/DWC和PWC)替换它,但这会增加延迟,因为下一层的输入是上一层的输出。因此,为了获得正确的输出,所有计算必须按顺序进行。相比之下,我们提出的HetConv具有相同的延迟。标准滤波器和HetConv滤波器之间的区别如图1和图2所示。在标准卷积层中,假设输入(输入特征图)的大小为D i × D i ×M。这里D i 是输入方形特征图的空间宽度和高度,M是输入深度(输入通道数)。还假设输出特征图的大小为Do × D o × N。这里D o是输出方形特征图的空间宽度和高度,N是输出深度(输出通道数)。通过应用大小为K × K ×M的N个滤波器,可以得到一个输出特征图。这里K是卷积核大小。因此,该层L的总计算成本可以表示为:0FL S = D o × D o × M × N × K × K (1)FL1 = (Do × Do × N) ×�M − MFLHC = FLK + FL1(4)=(5)48380图2. 提出的卷积滤波器(HetConv)与其他高效卷积滤波器之间的比较。我们的异质滤波器具有零延迟,而其他滤波器(GWC+PWC或DWC+PWC)的延迟为一个单位。0从方程1可以清楚地看出,计算成本取决于卷积核大小(K)、特征图大小、输入通道数M和输出通道数N。这个计算成本非常高,可以通过精心设计新的卷积操作进一步减少。为了减少高计算量,提出了各种卷积方法,如DWC、PWC和GWC,这些方法在许多最新的架构中被用于减少FLOPs,但它们都会增加延迟。标准卷积操作和一些最新的卷积操作使用同质卷积核(即每个卷积核在整个滤波器中都是相同大小的)。为了提高效率,我们使用异质卷积核。它包含了相同滤波器的不同大小的卷积核。请参考图3来可视化特定层L上的所有滤波器。让我们定义一个部分P,它控制卷积滤波器中不同类型卷积核的数量。对于部分P,总卷积核中的1/P比例将用于K × K卷积核,剩余的比例(1 - 1/P)将用于1 ×1卷积核。为了更好地理解,让我们举一个例子,在一个3 ×3 × 256的标准CONV2D滤波器中,如果你用(1 - 1/P) *256个3 × 3卷积核(连同中心轴)替换为1 ×1卷积核,你将得到一个具有部分P的HetConv滤波器。请参考图1和2。在层L上,HetConv滤波器中K ×K大小卷积核的计算成本如下:0FL K = (D o × D o × M × N × K × K) / P (2)0由于现在我们只有 K × K 大小的 M/P 个卷积核,而不是 M个大小为 K × K 的卷积核,所以成本降低了 P 倍。剩下的(M - M/P) 个卷积核的大小为 1 × 1。剩下的 1 × 1卷积核的计算成本可以表示为:0P0� (3)0图3.第L层的卷积滤波器:使用异构核的提出卷积滤波器(HetConv)。在该图中,每个通道由大小为3×3和1×1的异构核组成。将标准卷积滤波器中的3×3卷积核替换为1×1卷积核可以大大减少FLOPs,同时保持准确性。特定层的滤波器以移位方式排列(即,如果第一个滤波器从第一个位置开始3×3卷积核,则第二个滤波器从第二个位置开始3×3卷积核,依此类推)。0因此,第L层的总计算成本为:0与标准卷积相比的总计算缩减量可以表示为:0R HetConv = FL K + FL 10FL S0P + (1 − 1 /P)0K 20在方程5中,如果我们将P =1,则变为标准卷积滤波器。通过将某些通道上的滤波器尺寸从3×3减小到1×1,我们减小了空间范围=(7)=(11)48390然而,通过保持某些通道上的大小为3×3的滤波器,我们确保滤波器在某些通道上覆盖了空间相关性,并且不需要在所有通道上具有相同的空间相关性。我们在实验部分观察到,通过这样做,可以获得与均匀滤波器相似的准确性。另一方面,如果我们避免并保留在所有通道上使用1×1滤波器尺寸,那么我们将无法覆盖必要的空间相关性信息,准确性将受到影响。03.1. 与深度可分离卷积后跟点卷积的比较0在极端情况下,当P =M时,HetConv可以与DWC+PWC(深度可分离卷积后跟点卷积)进行比较。MobileNet[12]使用这种类型的卷积。虽然MobileNet比我们的极端情况需要更多的FLOPs和延迟,因为MobileNet[12]的延迟为1。DWC+PWC(MobileNet)的第L层的总FLOPs可以计算如下:0FL MobNet = D o × D o × M × K × K + M × N ×D o × D o (6) 因此,与标准卷积相比的总计算缩减量为:0R MobNet = FL MobNet0FL S0N + 10K 20从方程5可以清楚地看出,我们可以改变P值的部分来在准确性和FLOPs之间进行权衡。如果我们减小P值,得到的卷积将更接近于标准卷积。为了展示所提出的HetConv滤波器的有效性,我们在实验部分展示了结果,其中HetConv在类似的FLOPs下实现了显著更好的准确性。在极端情况下,当P= M时,根据方程5和7(对于MobileNet N =M),我们可以得出结论:01 M + (1 /M )0K 2 < 10M + 0K 2 (8)0缩减 = 与标准卷积相比的计算总缩减量0加速比 = 10缩减(9)0因此从方程8可以清楚地看出,MobileNet的计算量比我们的方法更大。在我们的HetConv中,我们的延迟为零,而MobileNet的延迟为1。在这种极端情况下,我们的准确性明显优于MobileNet(参见实验部分)。0图4. 该图显示了不同类型的卷积在延迟方面的比较。03.2. 与分组卷积后跟点卷积的比较0在组卷积后跟点卷积(GWC+PWC)的情况下,对于层L的GWC+PWC的总FLOPs可以计算如下:0FL G = (D o × D o × M × N × K × K)/G + M × N × D o× D o (10)因此,与标准卷积相比,计算量的总减少量为:0R Group = FL G0FL S0G + 10K 20同样,当P = G时,根据公式5和11,我们有:01 P + (1 0K 2 < 10P + 10K 2(12)0因此,根据公式12,可以明确地看出GWC+PWC的计算量比我们的方法更大。在我们的HetConv中,延迟为零,而GWC+PWC的延迟为一。03.3. 运行延迟0大多数以前的方法[36,37,43,12]设计了高效的卷积以减少FLOPs,但它们增加了架构中的延迟2。不同类型卷积的延迟在图4中显示。在Inception模块[37,36]中,一个层被分解为两个或更多的顺序层。因此,架构中的延迟大于零。在Xception[2]中,首先应用GWC,然后应用PWC。PWC等待GWC完成。因此,这种方法减少了FLOPs,但增加了系统的延迟。类似地,在MobileNet[12]中,首先应用DWC,然后应用PWC,因此它的延迟为一。这个延迟包括GPU等并行设备的延迟。在我们的02个并行步骤转换为多个顺序步骤,因此降低了并行性。层的后期阶段等待前一阶段的执行完成,因为所有计算必须在层之间按顺序进行。48400图5.HetConv滤波器在3×3和1×1内核下,对于不同P值的标准卷积的加速比。0所提出的方法没有将任何层替换为顺序层,因此延迟为零。我们直接设计滤波器,以便在不增加任何延迟的情况下减少FLOPs。与以前的高效卷积相比,我们提出的方法在FLOPs方面非常有竞争力,同时保持延迟为零。03.4. HetConv相对于标准卷积的加速比,对于不同的P值0如图5所示,加速比随P值的增加而增加。我们可以使用P值在准确性和FLOPs之间进行权衡。如果我们减小P值,得到的卷积将更接近标准卷积。为了展示所提出的HetConv滤波器的有效性,我们在实验部分展示了与其他类型的卷积相比具有类似FLOPs但准确性显著更好的HetConv的结果。04. 实验和结果0为了展示所提出的HetConv滤波器的有效性,我们对当前最先进的架构进行了大量实验。我们用所提出的滤波器替换了这些架构中的标准卷积滤波器。我们在ImageNet[30]上对ResNet-34、ResNet-50 [8]和VGG-16[31]架构进行了三次大规模实验。我们在CIFAR-10[18]上对VGG-16、ResNet-56和Mo- bileNet[12]架构进行了三次小规模实验。在所有实验中,我们将压缩与激励(SE)[13]的缩减比例设置为8。04.1. 符号0XXX P α:XXX是架构,部分值为P = α;XXX P αSE:SE表示压缩与激励,缩减比例为8;XXX GWC βPWC:GWC βPWC是β组大小的组卷积,后跟逐点卷积;XXX DWCPWC:DWC PWC是0深度卷积后跟逐点卷积;XXX PC:PC是部分值P =输入通道数(输入深度)。04.2. VGG-16在CIFAR-10上0在这个实验中,我们使用了VGG-16架构[31]。在CIFAR-10数据集中,每个图像的尺寸为32×32,RGB色彩空间。在VGG-16架构中,有13个卷积层,使用标准的CONV2D卷积,并在每个层之后添加批归一化。我们使用了与[20]中描述的相同设置。超参数的值为:权重衰减=5e-4,批量大小=128,初始学习率=0.1,每50个epoch后衰减0.1。除了初始卷积层(即CONV1)之外,所有剩余的12个标准卷积层都被我们的HetConv层替换(所有12个层的P值相同),同时保持过滤器数量不变。如表1所示,P值增加,FLOPs(计算量)的值减少,而准确率没有显著下降。我们还尝试了使用SE技术的HetConv,发现SE技术在初始阶段可以提高准确率,但后来由于过拟合,开始降低模型性能(准确率),如表1所示。04.2.1 分组卷积与逐点卷积的比较0我们尝试了分组卷积后跟逐点卷积,其中所有标准卷积层(除了初始卷积层,即CONV1)都被两个层(分组卷积层,组大小为4,和逐点卷积层)替换。现在模型的延迟为1。如表1所示,VGG-16 GWC4PWC的准确率为92.76%,而我们的模型VGG-16P4的准确率为93.93%,FLOPs更低。04.2.2 深度可分离卷积与逐点卷积的比较0我们尝试了深度可分离卷积后跟逐点卷积,其中所有标准卷积层(除了初始卷积层,即CONV1)都被两个层(深度可分离卷积层和逐点卷积层)替换。现在模型的延迟为1。如表1所示,VGG-16 DWCPWC在CIFAR-10上的准确率仅为91.27%,而我们的模型VGG-16P64的准确率为93.42%,FLOPs相当。我们还尝试了不同的P值用于不同的层。除了初始卷积层(即CONV1)之外,所有剩余的12个标准卷积层都被我们的HetConv层替换,其中P等于输入通道的数量。如表1所示,我们的模型VGG-16 P194.06313.74M–15.00M–VGG-16 P1 SE94.13314.19M–15.22M–VGG-16 P293.89175.23M44.158.45M43.68VGG-16 P2 SE94.11175.67M44.008.68M42.99VGG-16 P493.93105.98M66.225.17M65.45VGG-16 P4 SE94.29106.42M66.085.41M64.48VGG-16 GWC4 PWC92.76107.67M65.685.42M–VGG-16 P893.9271.35M77.263.54M76.40VGG-16 P8 SE93.9771.79M77.123.77M75.22VGG-16 P1693.9654.04M82.782.72M81.86VGG-16 P16 SE93.6354.48M82.642.95M80.59VGG-16 P3293.7345.38M85.542.31M84.58VGG-16 P32 SE93.4145.82M85.392.54M83.28VGG-16 P6493.4241.05M86.922.11M85.95VGG-16 P64 SE93.3341.49M86.772.34M84.63VGG-16 DWC PWC91.2738.53M87.721.97M–VGG-16 PC92.5338.18M87.831.93M–VGG-16 PC SE93.0838.62M87.692.15M–Li-pruned [21]6.6034.20SBP [25]7.5056.52SBPa [25]9.0068.35AFP-E [3]7.0679.69AFP-F [3]7.1381.39Li-B [21]6.9427.6NISP [42]6.9943.6CP [11]8.2050.0SFP [10]6.6552.6AFP-G [3]7.0660.9ResNet-56 P16.41–ResNet-56 P26.4044.30ResNet-56 P46.7166.45ResNet-56 P1 SE7.16–ResNet-56 P2 SE6.7544.27ResNet-56 P4 SE7.7966.4248410模型准确率% FLOPs FLOPs减少率(%) 参数 参数减少率(%)0表1. 该表显示了在不同设置下VGG-16在CIFAR-10上的详细结果。0方法 错误率% FLOPs 减少率(%)0VGG-16 P32 (我们的) 6.27 85.540VGG-16 P64 (我们的) 6.58 86.920表2.该表显示了我们的模型与CIFAR-10数据集上最先进的模型压缩方法VGG-16的比较。0VGG-16 PC和VGG-16 PC SE仍然比VGG-16 DWCPWC表现更好,这显示了我们的HetConv相对于DWC+PWC的卓越性能。04.2.3 与FLOPs压缩方法的比较0如表2所示,我们的模型VGG-16 P32和VGG-16P64的准确性明显优于最先进的模型压缩方法。我们在不损失准确性的情况下减少了约85%的FLOPs,而FLOPs压缩方法在准确性上遭受了显著的损失(超过1%),如表2所示。04.3. CIFAR-10上的ResNet-560我们在CIFAR-10数据集上使用了ResNet-56架构[ 8]进行了实验。ResNet-56由三个卷积层阶段组成,大小为16-32-64,其中每个阶段中的每个卷积层包含相同的2.36MFLOPs,总FLOP为126.01M。我们使用[ 8]提出的相同参数训练了模型。除了初始卷积层外,所有其他标准卷积层都被替换为我们的HetConv层。0方法误差% FLOPs减少率(%)0表3.该表显示了在不同设置下ResNet-56在CIFAR-10上的详细结果和与最先进的模型压缩方法的比较。0我们将ResNet-56架构的卷积层替换为我们的HetConv层,同时保持与之前相同的过滤器数量。如表3所示,我们的模型ResNet-56 P2和ResNet-56P4的准确性明显优于最先进的模型压缩方法,并且FLOPs减少更多。我们还尝试了使用SE技术的HetConv,发现由于过拟合,SE的性能不如预期。04.4. CIFAR-10上的MobileNet0我们在CIFAR-10数据集上使用了MobileNet架构进行了实验。除了初始卷积层外,所有其他卷积层都被我们的HetConv层替换,同时保持与之前相同的过滤器数量。在我们的模型中,两个卷积层(深度卷积层和点卷积层)被一个HetConv卷积层替换,从而减少了MobileNet [12]91.1746.36MMobileNet P3292.0655.94MMobileNet P32 SE92.1756.91MRNP (3X)[22]–87.5766.67ThiNet-70 [24]69.889.5369.04CP 2X [11]–89.9050.00VGG-16 P171.390.2–VGG-16 P471.290.265.8Li-B [21]27.832.7G24.2NISP [42]27.69–43.76ResNet-34 P126.803.6G–ResNet-34 P427.001.3G64.4848420方法准确率(%) FLOPs0表4. 该表显示了在不同设置下MobileNet [ 12 ]在CIFAR-10上的结果。0方法准确率%(Top-1) 准确率%(Top-5) FLOPs减少%0表5. 该表显示了VGG-16在ImageNet [ 30]上的结果。与最先进的[ 11 , 24]剪枝方法相比,我们的模型在准确性上没有损失,同时FLOPs减少更多。0方法误差(top-1)% FLOPs FLOPs减少率(%)0ResNet-34 P4 SE 26.50 1.3G 64.480表6. 表格显示了在ImageNet [ 30]上的ResNet-34的结果。我们的模型与最先进的[ 21 , 42]修剪方法相比,在准确度上没有损失,同时在不同设置下FLOPs减少更多。0从表4可以看出,我们的模型MobileNet P32和MobileNetP32SE在准确度上与MobileNet模型相比有显著提高(接近1%),而FLOPs几乎相同,这再次显示了我们提出的HetConv卷积相对于深度+逐点卷积的卓越性能。04.5. 在ImageNet上的VGG-160我们在大规模的ImageNet [ 30 ]数据集上使用VGG-16 [ 31]架构进行了实验。除了初始卷积层外,所有剩余的卷积层都被我们的HetConv层替换,同时保持与之前相同的滤波器数量。我们的模型VGG-16P4在最近提出的用于FLOP压缩的方法上展示了最先进的结果。通道修剪(CP)[ 11]具有50.0%的FLOP压缩,而我们的FLOP压缩为65.8%,准确度没有损失。更多详细结果请参见表5。04.6. 在ImageNet上的ResNet-340我们在大规模的ImageNet [ 30 ]数据集上使用ResNet-34 [8]架构进行了实验。除了初始卷积层外,所有剩余的卷积层都被我们的HetConv层替换。我们的模型ResNet-34P4在先前提出的方法上展示了最先进的结果。NISP [ 42]具有43.76%的FLOP压缩。0方法 错误率(top-1)% FLOPs FLOPs减少(%)0ThiNet-70 [ 24 ] 27.90 – 36.80NISP [ 42 ] 27.33 – 27.310ResNet-50 P1 23.86 4.09G –0ResNet-50 P4 23.84 2.85G 30.320表7. 表格显示了在ImageNet [ 30]上的ResNet-50的结果。我们的模型与最先进的[ 24 , 42]FLOP修剪方法相比,在准确度上没有损失。0而我们的准确度更高,FLOP压缩为64.48%。更多细节请参见表6。04.7. 在ImageNet上的ResNet-500ResNet-50 [ 8]是一个具有50层和跳跃/残差连接的深度卷积神经网络。在这个架构中,我们用我们提出的HetConv卷积替换了标准卷积。超参数的值为:权重衰减=1e-4,批量大小=256,初始学习率=0.1,每30个epoch后降低0.1,模型在90个epoch中进行训练。从表7可以看出,我们的模型ResNet-50P4在准确度上没有损失,而FLOP修剪方法[ 24 , 42]在top-1准确度上有很大的下降。我们的模型是从头开始训练的,而修剪方法[ 24 , 42]需要一个预训练的模型,并涉及迭代修剪和微调,这是一个非常耗时的过程。05. 结论0在这项工作中,我们提出了一种使用异构卷积核的新型卷积。我们将我们提出的卷积与流行的卷积方法(深度卷积、分组卷积、逐点卷积和标准卷积)在各种现有架构(VGG-16、ResNet和MobileNet)上进行了比较。实验结果表明,与现有的卷积方法相比,我们的HetConv卷积更加高效(FLOPs更少,准确度更高)。由于我们提出的卷积不会增加层数(例如,用一些层替换一层,比如MobileNet)以减少FLOPs,因此延迟为零。我们还将基于HetConv卷积的模型与FLOPs压缩方法进行了比较,并表明与压缩方法相比,它产生了更好的结果。将来,使用这种类型的卷积,我们可以设计更加高效的架构。0致谢:PravendraSingh感谢Google提供的旅行支持。VinayVerma感谢Visves- varaya奖学金的支持。48430参考文献0[1] Wenlin Chen,James Wilson,Stephen Tyree,Kilian Wein-berger和YixinChen。使用哈希技巧压缩神经网络。在ICML中,页码2285-2294,2015年。10[2] FrancoisChollet。具有深度可分离卷积的深度学习。CVPR,2017年。1,2,50[3] Xiaohan Ding,Guiguang Ding,Jungong Han和ShengTang。用于高效卷积神经网络的自动平衡滤波器修剪。AAAI,2018年。3,70[4] Chelsea Finn,Pieter Abbeel和SergeyLevine。用于快速调整深度网络的模型无关元学习。ICML,2017年。20[5] Ian Goodfellow,Jean Pouget-Abadie,MehdiMirza,Bing Xu,David Warde-Farley,Sherjil Ozair,AaronCourville和YoshuaBengio。生成对抗网络。在神经信息处理系统进展中,页码2672-2680,2014年。20[6] Song Han,Huizi Mao和William JDally。深度压缩:通过修剪,训练量化和霍夫曼编码来压缩深度神经网络。ICLR,2016年。1,30[7] Kaiming He和JianSun。在受限时间成本下的卷积神经网络。在2015年IEEE计算机视觉和模式识别会议(CVPR)中,页码5353-5360。IEEE,2015年。20[8] Kaiming He,Xiangyu Zhang,Shaoqing Ren和JianSun。深度残差学习用于图像识别。在CVPR中,页码770-778,2016年。1,2,3,6,7,80[9] Kaiming He,Xiangyu Zhang,Shaoqing Ren和JianSun。深度残差网络中的身份映射。在欧洲计算机视觉会议上,页码630-645。Springer,2016年。30[10] Yang He,Guoliang Kang,Xuanyi Dong,Yanwei Fu和YiYang。用于加速深度卷积神经网络的软滤波器修剪。IJCAI,2018年。1,70[11] Yihui He,Xiangyu Zhang和JianSun。用于加速非常深的神经网络的通道修剪。在ICCV中,第6页,2017年。1,7,80[12] Andrew G Howard,Menglong Zhu,Bo Chen,DmitryKalenichenko,Weijun Wang,Tobias Weyand,Marco An-dreetto和HartwigAdam。移动视觉应用的高效卷积神经网络。arXiv预印本arXiv:1704.04861,2017年。1,2,3,4,5,6,80[13] Jie Hu,Li Shen和GangSun。挤压和激励网络。CVPR,2018年。3,60[14] Gao Huang,Zhuang Liu,Laurens Van DerMaaten和Kilian QWeinberger。密集连接的卷积网络。在CVPR中,2017年。20[15] Forrest N Iandola,Song Han,Matthew WMoskewicz,Khalid Ashraf,William J Dally和KurtKeutzer。Squeezenet:具有50倍少参数和0.5MB模型大小的Alexnet级别准确性。arXiv预印本arXiv:1602.07360,2016年。10[16] Yani Ioannou,Duncan Robertson,Roberto Cipolla,AntonioCriminisi等人。深层根源:通过分层滤波器组提高CNN效率。2017年。30[17] Yani Ioannou,Duncan Robertson,JamieShotton,Roberto Cipolla和AntonioCriminisi。使用低秩滤波器训练CNN以实现高效的图像分类。arXiv预印本arXiv:1511.06744,2015年。30[18] Alex Krizhevsky和GeoffreyHinton。从小图像中学习多层特征。2009年。60[19] Alex Krizhevsky,Ilya Sutskever和Geoffrey EHinton。使用深度卷积神经网络进行图像分类。在NIPS中,页码1097-1105,2012年。1,20[20] 郝力,Asim Kadav,Igor Durdanovic,Hanan Samet和Hans PeterGraf。修剪卷积神经网络的滤波器以提高效率。arXiv预印本arXiv:1608.08710,2016年。3,60[21] Hao Li, Asim Kadav, Igor Durdanovic, Hanan Samet, 和Hans Peter Graf. 用于高效卷积神经网络的
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功