没有合适的资源?快使用搜索试试~ 我知道了~
1多维修剪:模型压缩的统一框架金阳郭万里欧阳东旭悉尼大学电气与信息工程学院{jinyang.guo,wanli. jiao,dong.xu}@ sydney.edu.au摘要在这项工作中,我们提出了一个统一的模型压缩框架,称为多维修剪(MDP),在多维上对卷积神经网络(CNN)进行模拟压缩。与仅旨在减少沿空间/空间-时间维度(例如,2D CNN的空间维度,3D CNN的空间和具体地,为了减少沿空间/空间-时间维度的冗余,我们对卷积层的输入张量进行下采样,其中用于下采样操作的缩放因子由我们的方法自适应地选择。卷积运算后,输出张量被上采样到原始大小,以确保后续CNN层的输入大小不变。为了减少通道冗余,我们为输出张量的每个通道引入一个门作为其重要性得分,其中门值是自动学习的。具有小重要性分数的通道将在模型压缩过程之后被移除。我们在四个基准数据集上的综合实验表明,我们的MDP框架在修剪2D CNN和3D CNN时优于现有方法。1. 介绍随着卷积神经网络(CNN)在各种计算机视觉应用中的普及,开发了几种模型压缩技术(见第二节)。2了解更多细节),以在资源受限的平台上部署CNN在这些技术中,通道修剪方法[8,23,38]旨在减少CNN通道维度上的冗余然而,在CNN的空间/时空维度上也存在大量冗余(即,2D CNN的空间维度,3D CNN的空间和时间维度),这是现有的信道修剪方法所不考虑的。图1(a)显示了四个控制器的输出特征图(一)图1:(a)从第一个卷积层的输出张量生成的四个连续帧的特征图(C3D模型[31]用于说明)。在这些帧中,人的手的位置基本上是相同的。(b)下采样张量,其中的信息几乎与原始输出张量相同。从C3D模型中第一卷积层的输出张量生成的连续帧[31]。该图显示了一个人正在潜水的场景,空间分辨率为每帧112×112。从图1(a)中,我们注意到背景(the蓝色部分)和人(红色部分)在四个帧中基本相同,这表明CNN中的我们在空间和时间维度上对这个输出张量进行下采样。如图1(b)所示,在下采样之后,每个帧的空间分辨率为减半(即,从112× 112到56× 56),四个连续帧减少到两个帧。中的信息图1(b)与图1(a)几乎相同,我们仍然可以识别出该人在下采样操作后正在潜水,这表明可以通过对CNN中的张量进行下采样来减少时空冗余(STR),同时信息损失最小。为了减少沿多个维度的冗余,可以通过首先修剪通道然后减少STR来以逐步的方式执行不同的模型压缩算法。然而,这种解决方案通常是次优的,因为在逐步修剪过程中没有很好地探索来自不同修剪阶段的依赖性例如,如果我们在第一步中修剪通道,然后在下一步中减少STR,则改变1508下采样(b)第(1)款1509在第一修剪阶段中被认为不重要的nels在减少CNN的STR之后可能变得重要。然而,我们不能在第二修剪阶段中恢复这些通道,因为它们已经在第一阶段中被移除,这降低了压缩模型的性能CNN中的不同通道通常关注特征图的不同部分。在减少STR之前,具有详细信息的通道可能比具有整体信息的通道更重要,因为高分辨率特征图中的细节可以为CNN提供丰富的信息。因此,具有全面信息的通道将被移除.在减少STR之后,特征图的分辨率将降低,并且这些特征图中的细节将丢失。在这种情况下,与高分辨率情况相比,具有较少细节的通道可能变得更具信息性。因此,我们应该保持渠道的全面信息。为了解决上述问题,我们提出了一种新的统一框架,称为多维Pruning(MDP),以端到端的方式同时减少CNN中的空间/时空和信道冗余。具体来说,我们的MDP框架包括三个阶段:搜索阶段、修剪阶段和微调阶段。在搜索阶段,我们通过将每个卷积层扩展为多个并行分支来构造一个过参数化网络,其中不同的分支对应于不同空间/时空分辨率的信息处理。来自不同分支机构的信息将根据其重要性得分进行汇总。 我们还为每个通道引入一个门以表明其重要性。在搜索阶段自动学习分支和通道的重要性分数。在剪枝阶段,我们根据分支和通道的重要性分数对其进行剪枝我们最终对压缩模型进行微调,以从精度下降中恢复。据我们所知,这是第一个统一的模型压缩框架,可以同时减少2D CNN的空间和通道冗余,以及3D CNN的空间,时间和通道冗余。当与现有的通道修剪方法[21,38]或旨在减少STR的其他方法[4,33,39]相比时,我们的MDP框架具有几个优点:(1)MDP框架是一个统一的模型压缩框架,它适用于2D CNN和3DCNN。(2)从多个维度选择的特征的最佳组合(即,空间/空间-时间维度的所选分支以及信道维度的所选信道)可以在搜索阶段中自动学习,这可以解决以逐步方式顺序使用不同模型压缩算法的替代方法中的次优问题。在四个基准数据集上的实验证明了我们提出的MDP框架对图像分类和视频分类任务的有效性2. 相关工作频道修剪。通道修剪技术[23,8,38,35,24,7,22,37]旨在减少CNN中的通道在[18]中,Lin等人提出使用对抗学习来修剪CNN中的冗余结构。Guo等人。[5]通过使用分类损失和特征重要性的指导来修剪通道。然而,现有的通道修剪方法忽略了神经网络中的STR。与这些通道修剪方法不同,我们的MDP框架可以额外地减少沿空间/时空维度的冗余。空间/时空冗余减少。 最近,提出了许多方法[4,12]来减少在设计CNN的架构时考虑空间冗余。例如,Chen等人[4]提出用八度卷积代替香草卷积。另一方面,提出了几种网络架构[33,39,17]来减少3D CNN中的时间冗余。TSN [33]使用稀疏时间采样策略来降低长期时间结构的计算成本。ECO [39]混合了2D和3D网络以节省计算。这些方法[4,12,33,39,17]的目标是设计新型卷积运算或网络架构,而不是压缩给定的网络。相反,我们的目标是通过沿着2D CNN的空间和通道维度以及3D CNN的空间,时间和通道维度联合修剪网络来压缩给定的模型。由于新设计的卷积运算或网络结构,这些方法不适合于模型压缩,因为它们需要从头开始训练因此,这些方法不能将信息从预训练模型转移到压缩模型,这将降低压缩模型的性能。而且,这些方法只关注如何沿一维(空间或时间)减少冗余。相比之下,我们的方法可以联合减少沿多个维度的冗余,从而实现更好的性能。多尺度表征学习。多尺度表征学习[10,30,19]已被证明对许多计算机视觉任务有效。例如,Elastic-Net[32]在CNN中引入了弹性模块,提取多尺度特征表示。在[16]中,来自多个尺度的特征被连接以获得来自不同尺度的信息。这些多尺度表示学习方法的目标是捕获不同尺度的特征信息,但我们的MDP框架旨在压缩给定的CNN以获得更有效的网络。1510图2:过参数化网络的构造。我们将每个卷积层扩展为多个并行分支,并在每个分支处向输出张量的每个通道引入一个门。在该图中,S(·)和g·,·分别是分支的重要性分数和门的门值输入张量(3个通道)和输出张量(2个通道)以及其他张量都是4阶张量,为了更好地呈现,将其显示为三个或两个3阶对于卷积运算,我们使用两个滤波器来生成具有两个通道的输出张量网络架构搜索。虽然我们的MDP方法也与网络架构搜索方法[20,2]相关,但我们的目标是通过沿着不同维度修剪给定模型来减少CNN中的冗余,而不是像[20,2]中那样搜索最佳网络架构。3. 多维剪枝在本节中,我们以压缩3D CNN的过程为例来介绍我们的MDP框架,这是一种更一般的情况。可以容易地获得用于压缩2D CNN的算法。3.1. 概述我们的MDP框架包括三个阶段:搜索阶段、修剪阶段和微调阶段。在搜索阶段,我们首先从任何给定的原始网络构建一个过参数化网络进行修剪,然后使用在第二节中引入的目标函数来训练这个过参数化网络。第3.2.2条。 在剪枝阶段,我们根据在搜索阶段学习的重要性分数,修剪这个过参数化网络中不重要的分支和通道。在微调阶段,我们对修剪后的网络进行微调,以从准确性下降中重新覆盖。3.2. 搜索阶段3.2.1过参数化网络概述在搜索阶段,我们首先从任意给定的原始网络构造一个过参数网络通过对该过参数化网络进行剪枝,得到压缩模型。图2显示了原始网络中的一个卷积层(左)及其在过参数化网络中的对应层(右)我们将每个卷积层扩展为过参数化网络的相应层中的几个并行由于我们在本节的大部分地方只关注一个卷积层,因此我们省略了该层的索引当引入每个操作时,除了在Eq. 其中,对于第l层,层index被表示为上标·(l)在每个分支中,我们执行以下操作:(1)我们通过沿空间和/或时间维度应用平均池化来对卷积层的输入张量进行下采样。在我们的实现中,我们使用四个缩放因子1、2、3和4沿着空间维度将输入张量下采样到4个不同的分辨率,其中缩放因子1意味着没有下采样操作(即,标识映射)。我们还沿着时间维度使用四个不同的缩放因子(1,2,3和4)对输入张量进行下采样 因此,总数在沿空间和时间维度执行下采样操作之后,过参数化网络的每层中的分支的数目为4×4= 16在图2中,我们有三个通道的输入张量层X(蓝色部分),每个通道表示为一个蓝色块在每个通道中沿着时间维度存在4个帧,其被表示为每个蓝色块的深度。 对于图2中的分支2,我们将X下采样为盖茨Conv/1,1br#$c#1/1,2过参数化网络中的对应层原始层((*1)Conv平均池化Conv/2.1上采样输出张量((*2)(两个通道)高度br#$c2/2,2输出张量深度(两个频道)宽度输入张量(三个通道)输入张量(三个频道)平均池化Conv/+,1上采样((*+)br#$c/+,2+…………1511j,:k,:,:,:i,kLB()ci,k沿着空间维度和时间维度分别使用缩放因子2和1。我们获得分支2中的下采样张量I2,其标记为ΣBY=i=1S(λi)·Ui{Ti[Ai(X)]},(1)绿色。 在这种情况下,I 2的高度/宽度变为X的高度/宽度的一半,而在X和I 2中的帧数都是4。与分支2中的下采样操作类似,我们通过使用缩放因子对X其中Ai、Ti和Ui是平均池化操作,变换函数,以及这一层的第i个分支。λi是第i个分支中的可学习参数,S(·)是softmax函数。即S(λi)=λexp(λi)。注:S(λi)表示4和2的空间维度和时间维度,Bb=1 exp(λb)在分支i中的mension。该分支Ii的下采样输入张量被标记为黄色。在这种情况下,Ii的高度/宽度变为X的高度/宽度的四分之一,并且X中的4个帧被下采样为2个帧。(2)每个分支的下采样张量被馈送到卷积层中过参数化网络的所有分支中的卷积层的参数是该层的第i个将Ii表示为在使用平均池化操作之后在该层的第i个分支的池化输入张量,即,Ii=Ai(X).将Ii表示为Ii的第j个通道。在第i个分支中,执行变换操作Ti后的输出可以写为:阿夫奇因从原始网络复制(3)卷积后我们将每个通道乘以一个门,O我k,:,:,:=gi,k·j=1我我j,:Wik,j,:、(二)在图2中表示为g·,·。该门用于评估每个通道的重要性,其值在搜索阶段与卷积层的参数同时学习。(4)在卷积操作之后,我们将卷积层的输出张量上采样到原始大小,以便可以将来自不同分支的输出张量整合在一起,而不会出现分辨率失配。在我们的实现中,我们选择了简单的最近邻插值方法进行上采样操作,因为它不需要任何计算,并在我们提出的框架中取得了来自多个分支的上采样张量被集成到过参数化网络中的该层的最终输出张量中。受DARTS [20]的启发,我们使用加权和作为集成策略,在图2中表示为S(·)。其中Oi是上采样操作之前的输出张量。第i个分支中的第i个通道,Oi是Oi的第k个通道。Wi∈Rcout×cin×dkr×hkr×wkr是卷积运算的权重张量,其中下标kr表示内核/过滤器。gi,k是第i个分支中第k个通道的门值。*是卷积运算。我们省略了方程中的偏置项和激活函数。(2)更好的展示。目标函数在每一层独立地构造过参数化网络之后,我们通过使用以下目标函数来训练过参数化网络,这是由[21,2]启发的。为了更好地呈现,我们另外引入上标·(l)来表示以下目标函数中的第l层的对应符号arg minL =Lc+αLst+ηLgate,Θ,λ, GL B(l)Σ Σ(l)(l)3.2.2制剂其中,Lst=l=1i =1S(λi )·F(Ti),(三)形式上,为了构造过参数化网络,在每层的3D CNN中,让我们将该层的输入张量表示为X∈Rcin×din×hin×win,其中cin是该层的输入通道的数量,din是长度L门=l(l)乌特河l=1i =1k =1(1)在第(1)款中,输入张量沿着时间维度的高度和宽度,并且hin和win是输入张量的高度和宽度。类似地,该层处的输出张量可以表示为Y∈Rcout×dout×hout×wout,其中cout是该层的输出通道的数量,dout是该层的长度。的输出张量沿时间维度,以及h_out和w_out分别是输出张量的高度和宽度 卷积层通过给定的变换(例如,卷积运算)T,其中Y=T(X)。假设我们在这一层有B个分支-对于参数化网络,过参数化网络中该层的输出张量可以写为:Lc是标准交叉熵损失。Lst是对控制计算复杂度,我们用它来计算,期望大多数分支的重要性分数接近于零,使得大多数分支将在修剪过程中被移除。L门是基于l1范数的正则化器,其强制来自大多数分支和通道的门值g(l)接近于零,使得这些通道可以在修剪过程中被安全地移除。L是层的总数,B(l)是第l层的分支数Θ是整个网络的参数。在搜索阶段,从待修剪的原始网络初始化Θ。λ是包含可学习参数的集合-从所有层中提取λ(1),λ ={λ(1),λ(1),. - 是的- 是的,λ(l),. - 是的- 是的个文件夹i1 2i∗1512我我我平均合并卷积上采样输出张量输入张量图3:修剪阶段的图示(一个层的选定分支用作图示示例)。对于这一层,我们在图2中的过参数化网络中选择第i个分支和第i个分支的第二个通道。其中λ(l)是可学习参数,用于获得第l层处的第i个 G是包含来自所有层的所有通道的门值的集合。ers,G={g(1),g(1),. -是的-是的 ,g(l),. -是的-是的}其中g(l)是gate我们仅应用平均池化操作用于沿空间维度的下采样。与压缩3D CNN的过程类似,我们通过使用缩放因子1,2,3,4对输入张量进行下采样在这种情况下,我们在过参数化网络中的每一层都有4个分支。同时,我们只对每个分支的输出张量沿空间维度进行上采样。在构建过参数化网络之后,以下阶段与修剪3D CNN的阶段相同。3.6. 与其他方法相比我们的工作与多尺度表示学习方法[16,32]和通道修剪方法[21,18]有关然而,我们的工作是从这些方法的动机和制定不同。多尺度表示学习方法旨在捕获多尺度信息以提高CNN的准确性。因此,在最终模型中选择并保留多个分支,一,一一、二i,ki,k第l层第i分支的第k通道的值F(T(1))表示第1层处的变换T(1)的浮点运算(FLOP)的数目,其广泛用于计算复杂度测量。α和η是平衡不同损失的两个系数。 ·我们可以通过调整α和η的值来控制压缩比。特别是,更高的价值-α和η的使用将导致更高的压缩比。3.3. 修剪阶段我们在搜索阶段完成后执行修剪过程在每一层,我们只选择具有最大重要性分数的分支在图3中,我们展示了一个卷积层的修剪过程。在这里,我们忽略上标·(l)获得更好的展示。 假设图2中的第i个分支具有最大的重要性得分S(λ i)。在这种情况下,在修剪阶段,我们保留第i个分支并重新移动此层的其他分支同时,让我们假设该分支的第二信道具有最大的重要性得分gi,2。因此,我们保留第二个通道并删除第一个通道。如图3所示,在修剪阶段之后,我们最终得到了这一层的修剪网络3.4. 微调阶段我们对修剪后的网络执行微调过程,以从精度下降中恢复过来。在微调阶段之后,得到压缩模型.3.5. 压缩2D CNN使用我们的MDP框架压缩2D CNN是压缩3D CNN的一种特殊情况。对于2D CNN,[16, 32]. 与这两种方法相比,我们的工作旨在来压缩CNN,并且在压缩模型中仅保留一个分支。虽然[21,18]中的通道修剪方法也基于可学习的重要性分数修剪通道,但在他们的作品中没有探索时空冗余[21,18]。4. 实验为了证明我们的MDP框架的有效性,我们将我们的MDP方法与几种最先进的模型压缩方法进行了比较,包 括 ThiNet [23] , Channel Pruning ( CP ) [8] ,Slimming [21] , Width-multiplier ( WM ) [9] , DCP[38],GAL [ 18 ],Taylor Pruning(TP)[24],FilterPruning(FP)[15],和基于正则化的修剪(RBP)[36]对四个基准数据集:CIFAR-10 [13],ImageNet [26],UCF-101 [29]和HMDB 51 [14]。本节中浮点运算次数的百分比[#FLOPs(%)]是指修剪后的网络的FLOPs与原始网络的FLOPs之比,这是计算复杂度测量的常用标准。数据集。CIFAR-10和ImageNet用于评估我们提出的方法 在 修 剪 2D CNN 用 于 图 像 分 类 任 务 时 的 有 效 性CIFAR-10包含来自10个类的50k训练图像和10k测试图像。ImageNet是一个大型数据集,包含来自1000个类别的超过100万张训练图像和50k张测试图像另一方面,UCF-101和HMDB 51用于评估我们的MDP方法在修剪3D CNN用于视频分类任务时的性能具体而言,UCF-101包含来自101个类的13,320个视频,而HMDB 51包含来自51个类的6,766个视频。实作详细数据。基于原始网络,我们应用我们的MDP方法来压缩模型,1513模型ThiNet [23] CP [8] WM [9] DCP [38] DCP+SP GAL [18]MDP模型[23][21][22][23][24][25][26]VGGNetFLOP数量(%)50.0050.0049.0250.0034.9724.84(基线93.99%)Acc. (%)93.8593.6793.8093.6194.5794.57ResNet-56FLOP数量(%)50.2550.00-50.2550.2545.11(基线93.74%)Acc. (%)92.9891.80-93.2493.4994.29MobileNet-V2FLOP数量(%)---73.5373.5371.29(基线95.02%)Acc. (%)---94.0294.6995.14表1:用于压缩VGGNet、ResNet-56、和CIFAR-10数据集上的MobileNet-V2。当使用CP方法[8]时,我们直接引用原始工作[8]中用于压缩ResNet-56的结果。其他结果是从[38]中的工作复制的。ResNet-50FLOP数量(%)44.4450.0044.4444.4445.4745.0644.29(基线92.94%)前5名Acc.(%)90.0290.8091.3192.3292.4690.8292.66MobileNet-V2FLOP数量(%)55.25-55.2555.25--56.85(基线90.56%)前5名Acc.(%)86.44-85.5186.34--88.86表2:来自用于压缩ResNet-50和ResNet-52的不同模型压缩方法的Top-5精度的比较MobileNet-V2在ImageNet上。对于最先进的作品,我们直接引用[38]的结果。多个维度我们通过选择不同的α和η值来调整#FLOPs。对于图像分类,我们使用SGD优化器和nesterov在搜索阶段进行优化。在CIFAR-10上,初始学习率、批量大小和动量分别设置为0.1、256和0.9。ImageNet上的设置与CIFAR-10相同,只是初始学习率设置为1e−2。在微调阶段,我们按照[18]使用最后一层的提示[25]微调修剪后的网络。其他设置与搜索阶段相同。对于视频分类任务中使用的C3D模型[31],我们遵循[36]将每个视频分割成几个非重叠的剪辑,其中16帧作为网络的输入对于膨胀3D(I3D)ConvNet [34],我们对模型进行预训练[1]基于动力学[3,11],并在UCF-101和HMDB 51上微调预训练模型,以获得模型压缩前为了公平比较,我们遵循[1]使用帧长度32作为输入大小。初始学习率、批量大小和权重cay分别设置为1e−3、32和5e−4。其他设置与ImageNet相同。4.1. 关于CIFAR 10在CIFAR-10上,我们通过使用三种广泛使用的模型来评估我们的MDP方法的有效性:VGGNet [28]、ResNet-56 [6]和MobileNet-V2 [27]。结果示于表1中。对于VGGNet,我们的MDP方法仅用24.84%的#FLOP就 达 到 了 94.57% 的 准 确 度 , 而 DCP 需 要 34.97% 的#FLOP才能达到相同的准确度[38]。对于ResNet-56和MobileNet-V2,与其他基线方法相比,我们提出的MDP方法实现了更高的精度和更低结果清楚地表明了我们的MDP方法在小规模数据集上的有效性。也值得一提的是--1514我 们 的 MDP 方 法 分 别 比 预 先 训 练 的 ResNet-56 和MobileNet-V2的性能高出0.55%和0.12%。在DCP工作中也报告了类似的结果[38]。一种可能的解释是,像CIFAR-10这样的小规模数据集上的过拟合问题可以通过压缩模型来部分解决。4.2. ImageNet上的结果为了将我们提出的方法与大规模数据集上的其他最先进方法进行比较,我们在ImageNet上压缩了ResNet-50 [6]和MobileNet-V2 [27]。我们遵循[8]中的设置,将Top-5精度与其他方法进行比较,结果如表2所示。为了研究同时减少沿多个维度的冗余的优点,我们还报告了通过使用逐步修剪策略的替代方法的结果,该策略在第一步中通过使用DCP方法修剪通道,然后在第二步中通过使用我们的MDP方法减少结果在表2中称为DCP+SP。从表2中,我们得到以下观察结果:(1)对于ResNet-50,我们的MDP方法优于其他实验方法,这表明使用我们的MDP方法压缩模型是有益的。(2)对于MobileNet-V2,当#FLOP相当时,我们提出的方法超过其他最先进的方法超过2.4%,这是对ImageNet数据集的显著改进。(3)DCP+SP方法与DCP方法相比,DCP+SP方法的性能更好,这表明它有利于进一步减少空间维上的冗余。(4)我们的MDP框架比DCP+SP方法的性能高出0.2%,这证明了我们的MDP方法在沿着多个维度联合修剪模型方面的有效性1515方法FLOP数量(%)Acc.(%)方法FLOP数量(%)Acc.(%)C3D [31](基线)100.0082.10[第24话]49.4972.48[15]第十五话49.4577.58DCP [38]50.3777.77MDP49.8980.17C3D [31](基线)100.0047.39[第24话]47.4341.90[15]第十五话49.4543.53DCP [38]49.4542.22MDP47.1544.97I3D [1,34](基线)100.0093.47[第24话]48.9084.48[15]第十五话50.6285.38DCP [38]49.1385.20MDP47.0288.03I3D [1,34](基线)100.0069.41[第24话]48.8459.48[15]第十五话50.6257.84DCP [38]49.1358.24MDP48.0062.88表3:不同视频级别的准确度比较UCF-101(Split 1)上的模型压缩方法。现有方法的结果是基于 我们的实现。对 于I3 D模型,我 们使用ResNet-50作为主干。ImageNet数据集上的结果清楚地表明,使用我们提出的方法同时减少大规模数据集上多个维度的冗余4.3. 关于UCF 101为了评估我们的MDP方法在修剪3D CNN时的性能,我们在UCF-101上进行了压缩C3 D [31]和I3 D[1,34]的[29](拆分1)。我们遵循[34]中的设置来报告视频级精度。对于I3 D模型,我们使用ResNet- 50作为主干。结果示于表3中。从表3中,我们观察到,我们的MDP方法优于其他通道修剪方法,用于压缩C3D和I3D模型。由于工作RBP [36]仅报告了压缩C3D模型的剪辑级精度,因此我们将我们的MDP方法与RBP方法在剪辑级精度方面进行了比较。对于RBP方法,剪辑级准确度为76.38%,#FLOPs为结果表明,我们的MDP方法的有效性prun- ING三维CNN。4.4. 关于HMDB51我们还在HMDB 51数据集上进行了更多实验,以进一步评估我们的MDP方法用于修剪3D CNN的性能与UCF-101上的实验类似,我们在HMDB 51(拆分1)上压缩C3 D和I3 D,并报告视频级精度。结果示于表4中。Again, our MDP approach consistently outper- formsother baseline methods with lower #FLOPs, which furtherdemonstrate the effectiveness of the proposed ap- proachfor compressing 3D CNNs.4.5. 消融研究4.5.12D CNN在本节中,我们在CIFAR-10上压缩ResNet-56,以研究MDP方法中的不同组件,表4:不同视频级别的准确度比较HMDB51上的模型压缩方法(拆分1)。现有方法的结果是基于 我们的实现。对 于I3 D模型,我 们使用ResNet-50作为骨干。方法FLOP数量(%)Acc.(%)MDP,不含CP45.1992.86MDP,不含SP45.4193.39MDP45.1194.29表5:我们的MDP方法及其变体在CIFAR-10上修剪ResNet-56的准确性,其包括不修剪通道的MDP(MDPw/o CP)和不减少空间冗余的MDP(MDP w/o SP)。压缩2D CNN。渠道修剪的效果。为了研究在我们的MDP方法中修剪通道的有效性,我们执行实验以仅减少空间冗余而不修剪通道,这在表5中被称为MDP w/o CP。从表5中,我们的MDP方法比MDP w/o CP方法好1.43%,这表明在我们的MDP方法中修剪通道是有效的。空间修剪的效果。为了研究在我们的MDP框架中减少空间冗余的有效性,我们执行实验以仅修剪通道,其中去除空间冗余,其在表5中被称为MDP w/o SP。从表5中,我们的MDP方法超过MDP w/o SP方法0.9%,这表明在我们的MDP方法中沿着空间维度减少冗余是有效的。表5中的实验结果表明,单独的通道修剪或空间修剪都没有比我们的MDP方法更好地执行,MDP方法联合执行这两者。因此,它是有益的,联合修剪模型沿多个维度使用我们的MDP方法。α和η的影响。我们进行了更多的实验来研究当选择不同的α和η值时的性能。为了公平比较,我们调整了方程中的α和η。 (3)获得具有相似#FLOP的压缩模型,比较他们的表现。结果示于表6中。从表6中,我们有几个观察结果:(1)通过增加一个系数和减少另 一个系数,可以获得具有相似#FLOP的模型。(二)1516每层所选分支的索引43表6:当在CIFAR-10上修剪ResNet-56时,通过使用不同的α和η方法FLOP数量(%)Acc.(%)2113 579 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47层索引表7:视频级精度,我们的MDP方法图4:所选分支的索引(即,被选中的下采样操作的缩放因子)在ImageNet上修剪ResNet-50时在每个层索引1到48对应于第一卷积。及其用于在UCF-101上修剪C3 D的变体,其包括不修剪信道的MDP(MDP w/o CP)和不减少时空冗余的MDP(MDP w/o STP)。在相同的FLOP数下,使用不同的α和η值得到的压缩模型的性能是相当的,这表明我们的MDP方法的性能对系数α和η不敏感。4.5.23D CNN为了研究MDP方法中不同组件压缩3D CNN的有效性,我们在UCF-101上进行了压缩C3 D的实验,并报告了视频级精度。在3D CNN中,时空冗余沿着空间维度和时间维度两者存在。我们首先执行实验以仅减少空间-时间冗余而不修剪C3 D模型中的通道,其在表7中被称为MDP w/o CP。我们还进行了实验,只修剪通道,而不减少C3 D模型中的时空冗余,这被称为MDP w/o STP。从表7中,我们的MDP方法优于替代方法MDP w/o CP,这表明在我们的MDP方法中修剪用于压缩3D CNN的通道是有效我 们 的 MDP 方 法 也 超 过 替 代 方 法 MDP w/o STP2.51%,这证明了我们的MDP方法在压缩3D CNN时减少时空冗余的有效性4.6. 分支选择分析在图4中,我们报告所选分支的索引(即,下采样操作的选定缩放因子),用于ImageNet数据集上压缩ResNet-50模型中的从图4中可以看出,具有较高下采样缩放因子的分支(例如, 所选分支的索引为4)倾向于出现在较浅的层中(靠近CNN的输入),在ResNet-50中,第一个残差块中的卷积层到最后一个残差块中的最后一个卷积层。尺度因子较大的分支倾向于出现在较浅的层中,而尺度因子较小的分支倾向于出现在较深的层中。而具有较低下采样比例因子的分支(例如,所选分支的索引为1)倾向于出现在更深层(接近CNN的输出)。我们假设,在较浅的层中的特征图具有较高的分辨率,这表明沿空间维度的更多冗余。另一方面,较深层中的特征图沿着空间维度具有较低的分辨率,这表明沿着该维度存在较少的值得一提的是,我们不会降低分辨率(即,对于从层29到层48的大多数分支,所选分支的索引为1),这表明ResNet-50模型的较深层中的空间冗余可以被忽略,可能是因为这些深层中的低空间分辨率。5. 结论在这项工作中,我们提出了一个统一的模型压缩框架,称为多维修剪(MDP),以压缩沿通道和空间维度的2D CNN,以及沿通道,空间和时间维度的3DCNN。与现有的模型压缩方法相比,仅减少了沿某个维度的冗余,我们提出的框架可以同时减少沿多个维度的冗余,从而显着加速CNN在资源受限的平台上部署时。在四个基准数据集上的综合实验证明了我们的MDP方法对于修剪2D CNN和3D CNN的有效性谢谢。这项工作得到了澳大利亚研究委员会(ARC)未 来 奖 学 金 的 资 助 FT180100116 。 Wanli Ouyang 在Grant DP200103223下得到ARC发现项目的支持。所选分支的索引(下采样比例因子)α ηFLOP数量(%)Acc.(%)43.4443.5345.1145.4745.0394.1894.2694.2994.2394.22e2e−14e1e−112e−131e−122e−121e−132e−111e−14MDP,不含CP49.5476.92MDP,不带STP49.5077.661517引用[1] pytorch-resnet3d.https://github.com/Tushar-N/ pytorch-resnet3d. 2019. 六、七[2] 韩才、朱立庚、宋涵。Proxylessnas:在目标任务和硬件上直接进行神经结构搜索。2019年,在ICLR。三、四[3] Joao Carreira和Andrew Zisserman。你好,动作识别?新模型和动力学数据集。在CVPR,2017年。6[4] 陈云鹏,方浩奇,徐冰,颜志成,颜尼斯,MarcusRohrbach,颜水成,和Ji-ashi Feng.降低八度音:用倍频程卷积减少卷积神经网络中的空间冗余。在ICCV,2019年。2[5] 郭金阳、欧阳万里、徐东。分类损失和特征重要性指导的通道修剪,2020年。2[6] Kaiming He,Xiangyu Zhang,Shaoying Ren,and JianSun.用于图像识别的深度残差学习。在CVPR,2016年。6[7] Yihui He, Ji Lin ,Zhijian Liu ,Hanrui Wang,Li-JiaLi,and Song Han. AMC:Automl,用于移动设备上的模型压缩和加速。参见ECCV,第815-832页,2018年。2[8] Yihui He,Xiangyu Zhang,and Jian Sun.用于加速深度神经网络的通道修剪。在ICCV,第1398-1406页,2017年。一、二、五、六[9] Andrew G Howard,Menglong Zhu,Bo Chen,DmitryKalenichenko,Weijun Wang,Tobias Weyand,MarcoAn- dreetto,and Hartwig Adam. Mobilenets:用于移动视觉应用的高效卷积神经网络。arXiv预印本arXiv:1704.04861,2017。五、六[10] Gao Huang , Danlu Chen , Tianhong Li , Felix Wu ,Laurens van der Maaten,and Kilian Q Weinberger.多尺度密集网络用于资源有效的图像分类。arXiv预印本arXiv:1703.09844,2017。2[11] Will Kay 、 Joao Carreira 、 Karen Simonyan 、 BrianZhang、Chloe Hillier、Sudheendra Vijayanarasimhan 、Fabio Viola、Tim Green、Trevor Back、Paul Natsev、Mustafa Suleyman 和 Andrew Zisserman 。 The kineticshuman action video dataset,2017. 6[12] Tsung-Wei Ke,Michael Maire,and Stella X Yu.多网格神经架构。在CVPR,2017年。2[13] 亚历克斯·克里热夫斯基从微小的图像中学习多层特征。技术报告,Citeseer,2009年。5[14] H. Kuehne,H. Jhuang、E. Garrote,T. Poggio和T. Serre.HMDB:一个用于人体运动识别的大型视频数据库。见ICCV,2011年。5[15] Hao Li,Asim Kadav,Igor Durdanovic,Hanan Samet,and Hans Peter Graf.修剪过滤器以实现高效的卷积。ICLR,2016. 五、七[16] Yi Li , Zhanghui Kuang , Yimin Chen , and WayneZhang. 规 模 聚 集 网 络 的 数 据 驱 动 神 经 元 分 配 。 在CVPR,2019年。二、五[17] 纪林、闯乾、宋涵。用于高效视频理解的时间移位模块。ICCV,2019。21518[18] Shaohui Lin,Rongrong Ji,Chenqian Yan,BaochangZhang,Liujuan Cao,Qixiang Ye,Feiyue Huang,andDavid Doer-mann.通过生成对抗学习实现最优结构化cnn剪枝。在CVPR,2019年。二、五、六[19] 林宗义、彼得·多尔、罗斯·格希克、何嘉明、巴拉特·哈里哈兰和塞尔日·贝隆吉.用于对象检测的特征金字塔网络。在CVPR,2017年。2[20] 柳寒笑,凯伦西蒙尼扬,杨一鸣。飞镖:差异架构搜索。2019年,在ICLR。三、四[21] Zhuang Liu,Jianguo Li,Zhiqiang Shen,Gao Huang,S
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Aspose资源包:转PDF无水印学习工具
- Go语言控制台输入输出操作教程
- 红外遥控报警器原理及应用详解下载
- 控制卷筒纸侧面位置的先进装置技术解析
- 易语言加解密例程源码详解与实践
- SpringMVC客户管理系统:Hibernate与Bootstrap集成实践
- 深入理解JavaScript Set与WeakSet的使用
- 深入解析接收存储及发送装置的广播技术方法
- zyString模块1.0源码公开-易语言编程利器
- Android记分板UI设计:SimpleScoreboard的简洁与高效
- 量子网格列设置存储组件:开源解决方案
- 全面技术源码合集:CcVita Php Check v1.1
- 中军创易语言抢购软件:付款功能解析
- Python手动实现图像滤波教程
- MATLAB源代码实现基于DFT的量子传输分析
- 开源程序Hukoch.exe:简化食谱管理与导入功能
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功