没有合适的资源?快使用搜索试试~ 我知道了~
自动神经网络通道修剪的元学习方法
3296MetaPruning:用于自动神经网络通道修剪的元学习刘泽春1穆浩源2张翔宇3郭子超3杨欣4郑光庭1孙健31香港科技大学2清华大学3旷视科技4华中科技大学摘要在本文中,我们提出了一种新的Meta学习方法,用于非常深的神经网络的自动通道修剪。我们首先训练PruningNet,这是一种Meta网络,它能够为给定目标网络的任何修剪结构生成权重参数。我们使用一个简单的随机结构抽样方法来训练PruningNet。然后,我们应用一个进化的过程来搜索性能良好的修剪网络。搜 索 是 高 效 的 , 因 为 权 值 直 接 由 经 过 训 练 的PruningNet生成,并且我们在搜索时不需要任何微调。使用一个为目标网络训练的PruningNet,我们可以搜索不同约束下的各种Pruned Networks,而很少有人参与。与最先进的剪枝方法相比,我们在MobileNetV1/V2和ResNet上表现出了卓越的性能。代码可在https上获得//github.com/liuzechun/MetaPruning网站。1. 介绍通道修剪已被公认为一种有效的神经网络压缩/加速方法[32,22,2,3,21,52],并广泛用于行业。典型的修整方法包括三个阶段:训练大的过参数化网络、修剪不太重要的权重或通道、微调或重新训练修剪后的网络。第二阶段是关键。它通常执行迭代逐层修剪和快速微调或权重重构以保持准确性[17,1,33,41]。传统的信道修剪方法主要依赖于数据驱动的稀疏性约束[28,35]或人类设计的策略[22,32,40,25,38,2]。最近的AutoML风格作品基于反馈循环[52]或强化学习[21]以迭代模式自动修剪通道。与常规修剪这项工作是刘泽春和穆浩元在旷视科技实习时完成的。图 1. 我 们 的 MetaPruning 有 两 个 步 骤 。 1) 训 练 一 个PruningNet。在每次迭代时,网络编码向量(即,每一层中的 信 道 数 目 ) 是 随 机 产 生 的 。 相 应 地 构 建 修 剪 网 络PruningNet将网络编码向量作为输入,并为Pruned Network生成权重。2)寻找最佳的剪枝网络。我们通过改变网络编码向量来构建多个剪枝网络,并使用PruningNet预测的权重对验证数据进行评估在搜索时不需要微调或重新训练。方法,AutoML方法节省了人力,可以优化硬件延迟等直接指标。除了在修剪后的网络中保留重要权重的想法之外,最近的一项研究[36]发现,修剪后的网络可以达到相同的精度,无论它是否包含原始网络中的权重。这一发现表明,信道修剪的本质是找到良好的修剪结构-逐层信道数量。然而,穷尽地找到最优修剪结构在计算上是禁止的。考虑具有10层并且每层包含32个信道的网络。逐层通道编号的可能组合可以是32× 10。受最近的神经架构搜索(NAS),特别是One-Shot模型[5]以及超网络[15]中的权重预测机制的启发,我们3297我们建议训练一个PruningNet,它可以为所有候选的修剪网络结构生成权重,这样我们就可以通过评估它们在验证数据上的准确性来搜索性能良好的结构,这是非常高效的。为了训练PruningNet,我们使用随机结构采样。如图1所示,PruningNet生成具有相应网络编码向量的修剪网络的权重,该网络编码向量是每层中的通道数量。通过随机馈送不同的网络编码向量,PruningNet逐渐学习为各种修剪结构生成权重。在训练之后,我们通过进化搜索方法搜索性能良好的剪枝网络,该方法可以灵活地引入各种约束,例如计算FLOPs或硬件延迟。此外,通过确定每个层或每个阶段的信道来直接搜索最佳修剪网络,我们可以在捷径中修剪信道而无需额外的努力,这在以前的信道修剪解决方案中很少解决。我们将所提出的方法命名为MetaPruning。我们将我们的方法应用于MobileNets [24,46]和ResNet [19]。在相同的浮点数下,我们的精度是2。2%-6 。 比 MobileNet V1 , 0. 百 分 之 七 到 三 。 比MobileNet V2高7%,比MobileNet V2高0. 6%-1。比ResNet-50高4%。在相同的延迟下,我们的准确率为2。百分之一到九。0%高于MobileNet V1,1. 百分之二到九。比MobileNet V2高9%与现有的信道修剪方法ods [21,52],我们的MetaPruning也产生了优异的结果。我们的贡献体现在四个方面:• 我们提出了一个Meta学习的方法,MetaPruning,通道修 剪。该 方法的 核心是 学习 Meta网络 (名为PruningNet),该元网络为各种修剪结构生成权重。使用一个训练好的PruningNet,我们可以搜索不同约束下的各种• 与传统的剪枝方法相比,MetaPruning将人类从繁琐的超参数调整中解放出来,并能够使用所需的度量进行直接优化。• 与其他AutoML方法相比,MetaPruning可以轻松地在搜索所需结构时实施约束,而无需手动调整强化学习超参数。• Meta学习能够毫不费力地修剪ResNet类结构的捷径中的通道,这是不平凡的,因为捷径中的通道影响多于一个层。2. 相关作品对压缩和加速神经网络有广泛的研究,例如量化[54,43,37,23,56,57],修剪[22,30,16]和紧凑的网络去,[24,46,55,39,29]。在[47]中提供了全面的调查。在这里,我们总结了与我们的工作最相关的方法。网络修剪是用于去除DNN中的冗余的普遍方法。在权重修剪中,人们修剪单个权重以压缩模型大小[30,18,16,14]。然而,权重修剪导致非结构化的稀疏滤波器,这很难被通用硬件加速。最近的工作[25,32,40,22,38,53]集中在CNN中的信道修剪,其重新移动整个权重滤波器而不是单独的权重。传统的通道修剪方法基于每个通道的重要性以迭代模式[22,38]或通过添加数据驱动的稀疏度[28,35]来修剪通道。在大多数传统的信道修剪中,需要基于人类经验或启发式来手动设置每个层的压缩比,这是耗时的并且容易陷入次优解。AutoML最近,AutoML方法[21,52,8,12]考虑到多个设备上的实时推理延迟,以通过强化学习[21]或自动反馈回路[52]迭代地修剪网络不同层中的通道。与传统的通道修剪方法相比,AutoML方法有助于减轻手动调整通道修剪中的超参数的工作。我们提出的MetaPruning 也 涉 及 很 少 的 人 类 参 与 。 与 以 前 的AutoML修剪方法不同,这种方法是在逐层修剪和微调循环中进行的,我们的方法受到最近发现的启发[36],这表明通道修剪的本质有时在于识别最佳修剪网 络 , 而 不 是 选 择 从 这 个 角 度 来 看 , 我 们 提 出MetaPruning直接找到最佳的修剪网络结构。与以前的AutoML修剪方法[21,52]相比,MetaPruning方法在精确满足约束方面具有更高的灵活性,并且具有修剪捷径中的通道Meta学习元学习是指通过观察不同的机器学习方法在各种学习任务上的表现来学习。Meta学习可以用于少量/零次学习[44,13]和迁移学习[48]。Meta学习的全面概述在[31]中提供。在这项工作中,我们受到[15]的启发,使用Meta学习进行权重预测。权重预测是指神经网络的权重由另一个神经网络预测,而不是直接学习[15]。最近的工作还将Meta学习应用于各种任务,并在检测[51],具有任意放大率的超分辨率[27]和实例分割[26]中实现了最神经结构搜索神经结构搜索的研究试图找到最佳的网络结构32983. 方法在本节中,我们将介绍我们的Meta学习方法,用于自动修剪深度神经网络中的通道,修剪后的网络可以轻松满足各种约束。我们将信道修剪问题公式化为(c1,c2,…cl)*= arg min L(A(cl,c2,…cl; w))c1,c2,. ClS.T. C<约束,(一)图2.提出了PruningNet的随机训练方法。在每次迭代中,我们随机化一个网络编码向量。PruningNet通过将向量作为输入来生成 权重修剪网络是相 对于向量构造的 我们裁剪PruningNet生成的权重,以匹配Pruned Networks中的输入和输 出 通 道 。 通 过 在 每 次 迭 代 中 改 变 网 络 编 码 向 量 ,PruningNet可以学习为各种Pruned网络生成不同的权重。和超参数与强化学习[58,4],遗传算法[50,42,45]或基于梯度的ap。proaches [34,49].参数共享[7,5,49,34]和权重预测[6,11]方法也在神经结构搜索中得到了广泛的研究。单次架构搜索[5]使用在每个层中具有多个操作选择的过参数化网络。通过联合训练多个选择和drop-path,它可以在训练好的网络中搜索精度最高的路径,这也启发了我们的两步剪枝流水线。调谐通道宽度也包括在一些神经架构搜索方法中。ChamNet [9]使用贝叶斯优化在高斯过程之上构建了一个精度预测器,以预测每个阶段中不同通道宽度、扩展比和块数量的网络精度。尽管它的高精度,建立这样一个准确的预测需要大量的计算能力。FBNet [49]和Proxyless-Nas [7]包括在搜索空间中具有若干不同中间信道选择的块与神经结构搜索不同,在通道修剪任务中,每一层的通道宽度选择是连续的,这使得将每一个通道宽度选择作为一个独立的操作进行枚举是不可行的。针对通道修剪的 建 议 MetaPruning 能 够 通 过 使 用 权 重 预 测 训 练PruningNet来解决这种连续通道修剪挑战,这将在第3节其中A是修剪之前的网络。我们尝试找出修剪后的网络信道宽度(c1,c2,...,cl)对于在训练权重之后具有最小损失的第1层到第1层,其中成本C满足约束(即,FLOP或延迟)。为了实现这一点,我们建议构建一个PruningNet,一种Meta网络,在那里我们可以快速获得所有潜在的修剪网络结构的优点,通过评估的验证数据。然后,我们可以使用任何搜索方法,这是进化算法在本文中,搜索最佳修剪网络。3.1. PruningNet训练通道修剪是不平凡的,因为通道中的逐层先前的方法试图将信道修剪问题分解为逐层修剪不重要信道的子问题[22]或添加稀疏正则化[28]。AutoML方法通过反馈循环[52]或强化学习[21]自动修剪通道。在这些方法中,如何修剪通道中的捷径很少被解决。大多数先前的方法仅修剪每个块中的中间通道[52,21],这限制了整体压缩比。在考虑网络整体结构的情况下进行信道剪枝,有利于寻找最优的信道剪枝方案,解决了最短路径剪枝问题。然而,获得最佳修剪网络并不简单,考虑到具有10层并且每层包含32个信道的小网络,可能的修剪网络结构的组合是巨大的。受最近的工作[36]的启发,该工作表明与修剪后的网络结构相比,修剪留下的权重并不重要,我们有动力直接找到最佳的修剪网络结构。在这个意义上,我们可以直接预测最佳修剪网络,而无需迭代地决定重要的权重滤波器。为了实现这一目标,我们构建了一个Meta网络,PruningNet,为各种修剪网络结构提供合理的权重,以排名其性能。PruningNet是一个Meta网络,它采用网络编码向量(c1,c2,. cl)作为输入并输出3299图 3. (a)PruningNet 的 网 络 结 构 与 Pruned Network 相 连 。PruningNet和Pruned Network通过输入网络编码向量以及小批量图像进行联合训练。(b)对PruningNet块生成的权重矩阵进行整形和裁剪操作。修剪网络的权重:W= PruningNet(cl,c2,…cl)。(二)PruningNet块由两个完全连接的层组成在前向传递中,PruningNet采用网络编码向量(即,每一层中的声道数目同时,构建了一个剪枝网络,每层的输出通道宽度等于网络编码向量中的元素。生成的权重矩阵被裁剪以匹配修剪网络中的输入和输出通道的数量,如图2所示给定一批输入图像,我们可以使用生成的权重计算剪枝网络的损失。在反向传递中,我们不是更新Pruned Networks中的权重,而是计算PruningNet中权重的梯度。由于整形操作 以 及 PruningNet 中 的 全 连 接 层 的 输 出 与 PrunedNetwork中的前一个卷积层的输出之间的卷积操作也是可微的,因此PruningNet中的权重的梯度可以通过链式规则容易地计算。PruningNet是端到端可训练的。的详细结构与Pruned Network连接的PruningNet在图3中示出。为了训练PruningNet,我们提出了随机结构采样。在训练阶段,通过在每次迭代时随机选择每层中的信道的数量来生成网络编码向量。采用不同的网络编码,构造不同的剪枝网络,并为剪枝网络提供相应的权值。通过使用不同的编码向量进行随机训练,PruningNet学习预测各种不同Pruned网络的合理权重。3.2. 剪枝网络搜索PruningNet 训 练 完 成 后 , 将 网 络 编 码 输 入PruningNet,生成相应的权值,并对验证数据进行评价,即可得到每个潜在剪枝网络的准确性。由于网络编码向量的数量巨大,我们无法枚举。为了在约束条件下找到高精度的修剪网络,我们使用了进化搜索,它能够很容易地将任何软或硬约束。在MetaPruning中使用的进化算法中,每个修剪的网络用每个层中的通道数的向量编码,称为修剪的网络的基因。在硬约束条件下,我们首先随机选择一些基因,并通过评估获得相应的修剪网络的精度。然后选择前k个具有最高准确度的基因用于产生新的基因与变异和交叉。突变是通过随机改变基因中元素的比例来实现的交叉意味着我们随机重组两个亲本基因中的基因以产生后代。我们可以很容易地通过消除不合格的基因来加强约束。通过进一步重复前k个选择过程和新基因生成过程多次迭代,我们可以获得满足约束的基因,同时实现最高的准确度。详细算法见图1。4. 实验结果在本节中,我们展示了我们提出的MetaPruning方法的有效性。我们首先解释了实验设置,并介绍了如何在 MobileNet V1 [24] V2 [46] 和 ResNet [19] 上 应 用MetaPruning,这可以很容易地推广到其他网络结构。其次,我们比较我们的结果与统一的修剪基线,以及国家的最先进的通道修剪方法。第三,我们可视化了使用MetaPruning获得的修剪网络。最后,烧蚀研究进行阐述的重量预测在我们的方法的效果。33004C算法1进化搜索算法超参数:群体大小:P,突变数:M,交叉次数:S,最大迭代次数:N.输入:PruningNet:PruningNet,约束:C.输出:最准确的基因:G顶。一曰:G0=随机(P),s.t.C;第二章: GtopK=;3:对于i=0:Ndo4:{Gi,准确度}=推断(PruningNet(Gi));5:G_topK,准确度topK= TopK({Gi,准确度});6:G_mutation= Mutation(G_topK,M),s.t. C;7:G交叉=交叉(G_topK,S),s.t. C;8:Gi=G突变+G交叉;第九章: 端十: G_top_l,准确度_top_l= Topl({G_N,准确度});十一: returnGtop1;4.1. 实验设置所提出的元剪枝是非常有效的。因此,在ImageNet2012分类数据集上进行所有实验是可行的[10]。MetaPruning 方 法包 括 两个 阶 段 。在 第 一阶 段 ,PruningNet是从头开始训练的随机结构采样,它需要1个epoch作为训练网络正常。进一步延长PruningNet训练在所获得的Pruned Net中产生很少的最终精度增益。在第二阶段,我们使用进化搜索算法来找到最佳的修剪网络。通过PruningNet预测所有PrunedNet的权重,在搜索时不需要微调或重新训练,这使得进化搜索非常高效。在8个Nvidia 1080Ti GPU上推断PrunedNet只需要几秒钟。从搜索中获得的最佳PrunedNet然后从头开始训练。对于这两个阶段的训练过程,我们使用标准的数据增强策略[19]来处理输入图像。我们采用与[39]相同的训练方案用于MobileNets上的实验,并采用[19]中的训练方案用于ResNet。对于所有实验,输入图像的分辨率设置为224×图4.考虑逐层相互依赖性的信道修剪方案。(a)对于没有快捷方式的网络,例如,Mo-bileNet V1,我们裁剪原始权重矩阵的左上方以匹配输入和输出通道。为了简化,我们在这里省略了深度卷积;(b)对于具有捷径的网络,例如,MobileNetV2,ResNet,我们修剪块中的中间通道,同时保持块的输入和输出相等。网络,这只需要几秒钟。在获得最佳修剪网络之后,在原始训练数据集上从头开始训练修剪网络,并在测试数据集上进行评估4.2. MobileNets和ResNet上的元剪枝为了证明我们的MetaPruning方法的有效性,我们将其应用于MobileNets [24,46]和ResNet [19]。4.2.1MobileNet V1MobileNet V1是一个没有捷径的网络。为了构造相应的PruningNet,我们使PruningNet块等于MobileNet vl中的卷积层的数量,并且每个PruningNet块由两个级联的全连接(FC)层组成。PruningNet的输入向量是每层中的通道数。然后将该矢量解码为每层的输入和输出声道压缩比Cl−1Cl也就是说,[po ,po]。这里,C表示通道的数量,l在训练时,我们将原始训练图像子验证数据集包含从训练图像中随机选择的50000个图像,其中每1000个类中有50个图像,以及具有其余图像的子训练数据集。我们在子训练数据集上训练PruningNet,并在搜索阶段对子验证数据集上评估修剪网络的性能。在搜索时,我们重新计算运行平均值,l−1loo是当前层的层索引,并且l-1表示先前层的层索引层,o表示原始网络的输出,po是修剪的输出。然后将该二维向量输入到与每个层相关联的每个PruningNet块PruningNet块中的第一FC层输出具有64个条目的向量,并且第二FC层使用此64个条目的编码。ing输出一个长度为Cl×Cl−1×Wl×Hl的向量。o o具有20000个子训练的BatchNorm层中的方差然后我们将其重塑为(Cl,Cl−1,Wl,Hl)作为权重ma。o o图像,用于正确推断卷积层中修剪矩阵的性能,如图3所示C3301OpopoC在随机结构采样中,输出信道号的编码向量用其每个条目Cl生成表1.该表比较了MetaPruning方法与MobileNet V1 [24]上的统一基线的前1精度。po独立且随机地选自[int(0. 1X Cl),Cl],其中步长为int(0. 03× Cl)。更精致或统一基线元剪枝比Top1-访问FLOPsTop1-访问FLOPso o可根据产品细度选择粗级ing.在PruningNet中解码和权重生成过程之后,生成的权重矩阵的左上部分被裁剪为(Cl,Cl-1,Wl,Hl)并用于训练。1× 70.6% 569M0.75× 68.4% 325百万70.9%324百万0.5× 63.7% 149M 66.1%149M0.25× 50.6% 41M57.2%41M而其余的权重可以被认为是“非”的如图4(a)所示。在不同的迭代中,生成不同的信道宽度编码向量。4.2.2MobileNet V2在MobileNet V2中,每个阶段都以匹配两个阶段之间维度如果阶段由多于一个块组成,则该阶段中的后续块将包含将输入特征图与输出特征图相加的快捷方式,因此阶段中的输入和输出通道应该是相同的,如图4(b)所示为了修剪包含捷径的结构,我们生成两个网络编码向量,一个编码全局级输出通道以匹配捷径 中 的 通 道 , 另 一 个 编 码 每 个 块 的 中 间 通 道 在PruningNet中,我们首先将这个网络编码向量解码为每个块的输入、输出和中间通道压缩比。然后我们生成相应的权重表2.此表比较了MetaPruning方法与MobileNet V2 [46]上的统一基线的前1名准确度。MobileNet V2仅报告585M和300MFLOP的准确度,因此我们在MobileNet V2上应用统一修剪方法来获得具有其他FLOP的网络的基线准确度统一基线元剪枝表3.此表比较了MetaPruning,统一基线和最先进的通道修剪方法,ThiNet [38],CP [22]和SFP [20]在ResNet-50 [19]Cb−1 CbCb块中的矩阵,其中向量[po 、po、中po]网络FLOPs Top1-访问b−1bpoB中澳输入到对应的PruningNet块,其中b表示块索引。PruningNet块设计与MobileNetV1相同,PruningNet块的数量等于MobileNetv2 中的卷积层数量。4.2.3ResNet作为一个具有捷径的网络,ResNet与MobileNet v2具有相似的网络结构,仅在中间层的卷积类型,下采样块和每个阶段的块数量方面有所因此,我们为ResNet采用了与MobileNetV2类似的PruningNet设计。4.3. 与最新技术水平的比较均匀1.0× ResNet-504.1G76.6%基线0.75× ResNet-502.3G74岁百分之八0.5 ×ResNet-501.1G七十二0%的百分比SFP[20]2.9G75. 百分之一传统的ThiNet-702.9G75. 百分之八修剪ThiNet-50 [38]2.1G74岁占7%ThiNet-30 [38]1.2G七十二百分之一简体中文[CN] 2.0G七十三。百分之三MetaPruning -0.85×ResNet-503.0G七十六。百分之二MetaPruning -0.75×ResNet-502.0G75. 百分之四MetaPruning - 0.5×ResNet-501.0G七十三。百分之四CCTop1-访问FLOPsTop1-访问FLOPs百分之七十四点七585M––72.0%313M百分之七十二点七291M百分之六十七点二140M68.2%140M3302表4.此表比较了MetaPruning方法与其他最先进的基于AutoML的方法的top-1准确度。网络FLOPs Top1-访问我们比较我们的方法与统一的修剪基地-线、传统修剪方法以及最先进的通道修剪方法。4.3.1FLOPs约束表1将我们的准确性与[24]中报告使用MetaPruning学习的剪枝方案0.75x MobileNet V1 [24] 3.25亿68.4%NetAdapt [52] 2.84亿69.1%AMC [21]285M百分之七十点五MetaPruning281百万百分之七十点六0.75x MobileNet V2 [46]220M69.8%AMC [21]220M70.8%MetaPruning217M71.2%3303基线0.25×MobileNet V1。此外,由于我们的方法可以推 广 到 修 剪 网 络 中 的 快 捷 方 式 , 因 此 我 们 还 在MobileNet V2上实现了不错的改进,如图所示表5.该表比较了MetaPruning方法与MobileNet V1 [24]在延迟约束下报告的延迟是Titan Xp上相应网络的运行时间,批量大小为32在表2中,先前的修剪方法仅修剪中间-瓶颈结构[52,21]的dle通道,这限制了它们在给定输入分辨率下的最大压缩比。使用MetaPruning,当模型大小小到43M FLOPs时,我们可以获得3.7%的准确率提升。对于像ResNet这样的重模型,MetaPruning的性能也大大优于均匀基线和其他传统的修剪方法,如表3所示。在表4中,我们将MetaPruning与最先进的AutoML修剪方法进行了比较。MetaPruning的结果优于AMC [21]和NetAdapt [52]。此外,MetaPruning算法无需人工调整强化学习超参数,能够精确地得到满足FLOPs约束的剪枝网络。通过使用四分之一epoch训练一次的PruningNet作为正常训练目标网络,我们可以获得多个修剪的网络结构以达到不同的准确性-速度权衡,这比最先进的AutoML修剪方法更有效[21,52]。第4.1节报告了时间成本4.3.2时延约束直接优化目标设备上的延迟越来越受到关注。在不知道设备内部的实现细节的情况下,MetaPruning根据从设备估计的延迟来学习修剪通道。由于潜在的修剪网络的数量是大量的,因此测量每个网络的延迟太耗时。在合理假设每一层的执行时间是独立的情况下,我们可以通过将网络中所有层的运行时间相加来获得网络延迟。按照[49,52]中的实践,我们首先构建一个查找表,通过估计在目标设备上执行具有不同输入和输出通道宽度的不同卷积层的延迟,在我们的实验中是Titan Xp GPU然后,我们可以从查找表中计算所构建的网络的我们在MobileNet V1和V2上进行了实验。表5和表6显示,MetaPruning发现的修剪网络比具有相同延迟的均匀基线实现了显著更高的准确性。4.4. 修剪结果可视化在信道修剪中,人们对最佳的修剪启发式算法很好奇,许多人类专家正在手动设计修剪策略。出于同样的好奇心,我们想知道是否有任何合理的修剪方案是通过我们的MetaPruning方法学习的,该方法包括:统一基线元剪枝Top1-Acc延迟Top1-Acc比率 延迟1× 70.6%0.62ms0.75× 68.4% 0.48ms71.0%0.48ms0.5× 63.7% 0.31ms67.4%0.30ms0.25× 50.6% 0.17ms59.6%0.17ms表6.该表比较了MetaPruning方法与MobileNet V2 [46]在延迟约束下我们重新实现MobileNet V2以获得0.65×修剪率为0.35倍。 这个修剪比例是指均匀地修剪所有层的输入和输出通道。统一基线元剪枝Top1-Acc延迟Top1-Acc延迟比率1.4× 74.7%0.95ms1× 72.0% 0.70ms 73.2%0.67ms0.65× 67.2% 0.49ms71.7%0.47ms0.35× 54.6% 0.28ms64.5%0.29ms向其高精度致敬。在可视化修剪的网络结构中,我们发现MetaPruning确实学到了一些有趣的东西。图5显示了Mo-bileNet V1的修剪网络结构。我们观察到显着的高峰修剪网络时,每次有一个下采样操作。当下采样以步幅2深度卷积发生时,需要通过使用更多通道来携带相同量的信息来补偿特征图大小因此,MetaPruning自动学习在下采样层保持更多通道。在MobileNet V2中也观察到了相同的现象,如图6所示。当对应的块负责缩小特征图大小时,中间通道将被修剪得更少。此外,当我们使用MetaPruning自动修剪MobileNetV2中的快捷通道时,我们发现,尽管145M修剪的网络仅包含300M修剪的网络的一半FLOP,但145M网络在最后阶段保持与300M网络相似的通道数量,并在早期阶段修剪更多的通道。我们怀疑这是因为ImageNet数据集的分类器数量包含1000个输出节点,因此在后期阶段需要更多的通道来提取足够的特征。当FLOP被限制在45M时,网络几乎达到最大剪枝率,只能在后期进行信道剪枝,并且从145M网络到45M网络的精度下降比从300M到145M网络的精度下降严重得多。3304图5.该图显示了修剪的MobileNet v1的每个块每个块包含3x3深度卷积,然后是1x1逐点卷积,除了第一块仅由3x3卷积组成。图6. MobileNet V2块是通过连接1x1逐点卷积、3x3逐深度卷积和1x1逐点卷积来构造的。该图说明了每个块的中间通道的数量。图7.在MobileNet V2中,每个阶段都以具有不同输入和输出通道的瓶颈块开始,然后是几个重复的瓶颈块。具有相同输入和输出通道的那些瓶颈块用捷径连接。MetaPruning将快捷方式中的通道与中间通道一起修剪。该图示出了在通过MetaPruning修剪之后的每个阶段中的快捷通道的数量4.5. 消融研究在本节中,我们讨论MetaPruning方法中的权重预测效果图8.我们通过推断Mo- bileNet V1[24]的几个均匀修剪网络的准确性,比较了具有权重预测的PruningNet和不具有权重预测的PruningNet的性能。具有权重预测的PruningNet比没有权重预测的PruningNet具有我们想知道,如果我们不使用PruningNet中的两个全连接层进行权重预测,而是直接应用所提出的随机训练并裁剪相同的权重矩阵以匹配Pruned Network中的我们比较了有和没有权重预测的PruningNet之间的性能。我们选择通道数,以[0.25,1]的比率均匀地修剪每一层,并使用这两个PruningNets生成的权重来评估准确性。图8显示了没有权重预测的PruningNet我们进一步使用没有权重预测的PruningNet来搜索具有小于45M FLOP的Pruned MobileNet V1。所得到的网络达到只有55.3%的top1的准确性,1.9%低于修剪网络与重量预测。这是直觉。例如,当总输入声道增加到128个,后面再增加64个声道时,输入声道宽度为64的权重矩阵可能不是最佳的。在这种情况下,Meta学习中的权重预测机制在对不同修剪结构的权重进行去相关方面是有效的,从而为PruningNet实现了更高的准确性。5. 结论在这项工作中,我们提出了MetaPruning的通道修剪具有以下优点:1)它实现了更高的精度比均匀的修剪基线以及其他国家的最先进的通道修剪方法,传统的和AutoML为基础的; 2)它可以灵活地优化不同的约束,而无需引入额外的超参数; 3)可以有效地处理类ResNet架构; 4)整个管道效率高。6. 确认作者谨此感谢香港特区研资局对国家重点研发计划(第16203918号)的资助&。2017YFA0700800)和北京人工智能研究院(BAAI)。3305引用[1] Jose M Alvarez和Mathieu Salzmann。学习深度网络中的神经元数量。神经信息处理系统的进展,第2270-2278页[2] Sajid Anwar,Kyuyeon Hwang,and Wonyong Sung.深度卷积神经网络的结构化修剪。ACM Journal on EmergingTechnologies in Computing Systems ( JETC ) , 13(3):32,2017。[3] 萨吉德·安瓦尔和宋元勇具有粗修剪的紧凑深度卷积神经网络。arXiv预印本arXiv:1610.09639,2016。[4] Bowen Baker 、 Otkrist Gupta 、 Nikhil Naik 和 RameshRaskar。使用强化学习设计神经网络架构。arXiv预印本arXiv:1611.02167,2016。[5] Gabriel Bender,Pieter-Jan Kindermans,Barret Zoph,Vijay Vasudevan,and Quoc Le.理解和简化一次性架构搜索。在机器学习国际会议上,第549-558页[6] Andrew Brock、Theodore Lim、James M Ritchie和NickWeston。通过超网络的一次性模型架构搜索arXiv预印本arXiv:1708.05344,2017。[7] 韩才、朱立庚、宋涵。Proxylessnas:在目标任务和硬件上直接进行神经结构搜索。arXiv预印本arXiv:1812.00332,2018。[8] Changan Chen,Frederick Tung,Naveen Vedula,andGreg Mori.约束感知深度神经网络压缩。在欧洲计算机视觉会议(ECCV)的会议记录中,第400-415页[9] Xiaoliang Dai , Peizhao Zhang , Bichen Wu , HongxuYin,FeiSun,Yanghan Wang,Marat Dukhan,YunqingHu,Yiming Wu,Yangqing Jia,et al. Chamnet:通过平台感知模型适应实现高效网络设计。arXiv预印本arXiv:1812.08934,2018。[10] Jia Deng,Wei Dong,Richard Socher,Li-Jia Li,KaiLi,and Li Fei-Fei. Imagenet:一个大规模的分层图像数据库。2009年[11] Misha Denil,Babak Shakibi,Laurent Dinh,Nando DeFreitas,et al.深度学习中的参数预测。神经信息处理系统的进展,第2148-2156页,2013年[12] Jin-Dong Dong,An-Jieh Cheng,Da-Cheng Juan,WeiWei,and Min Sun.Dpp-net:设备感知渐进式搜索帕累托最优神经架构。在欧洲计算机视觉会议(ECCV)的会议记录中,第517-531页[13] Mohamed Elhoseiny、Babak Saleh和Ahmed Elgammal。写一个分类器:使用纯文本描述的零镜头学习。在Proceedings of the IEEE International Conference onComputer Vision,第2584-2591页[14] Yiwen Guo,Anbang Yao,and Yurong Chen.动态网络外科手术用于有效的dnns。神经信息处理系统进展,第1379-1387页,2016年[15] David Ha,Andrew Dai,and Quoc V Le. 超网络arXiv预印本arXiv:1609.09106,2016。[16] Song Han,Huizi Mao,and William J Dally.深度压缩:通过修剪压缩深度神经网络,训 练 量 化 和 霍 夫 曼 编 码 。 arXiv 预 印 本 arXiv :1510.00149,2015。[17] Song Han,Jeff Pool,John Tran,and William Dally.学习权值和连接以实现高效的神经网络。神经信息处理系统的进展,第1135-1143页,2015年[18] Babak Hassibi,David G Stork,and Gregory J Wolff.最佳脑外科医生和一般网络修剪。在IEEE神经网络国际会议,第293IEEE,1993年。[19] Kaiming He,Xiangyu Zhang,Shaoying Ren,and JianSun.用于图像识别的深度残差学习。在Proceedings ofthe IEEE conference on computer vision and patternrecognition,第770-778页[20] 杨和、康国良、董宣义、傅彦伟、杨毅。用于加速深度卷积神经网络的软滤波器修剪arXiv预印本arXiv:1808.06866,2018。[21] Yihui He ,Ji Lin ,Zhijian Liu ,Hanrui Wang, Li-JiaLi,and Song Han. Amc:移动设备上模型压缩和加速的自动化。在欧洲计算机视觉会议(ECCV)的会议记录中,第784- 800页[22] Yihui He,Xiangyu Zhang,and Jian Sun.用于加速深度神经网络的通道修剪。在IEEE计算机视觉国际会议论文集,第1389-1397页[23] 陆厚及郭炳湘。深度网络的损失感知权重量化。在2018年学习代表国际会议论文集[24] Andrew G Howard,
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- 京瓷TASKalfa系列维修手册:安全与操作指南
- 小波变换在视频压缩中的应用
- Microsoft OfficeXP详解:WordXP、ExcelXP和PowerPointXP
- 雀巢在线媒介投放策划:门户网站与广告效果分析
- 用友NC-V56供应链功能升级详解(84页)
- 计算机病毒与防御策略探索
- 企业网NAT技术实践:2022年部署互联网出口策略
- 软件测试面试必备:概念、原则与常见问题解析
- 2022年Windows IIS服务器内外网配置详解与Serv-U FTP服务器安装
- 中国联通:企业级ICT转型与创新实践
- C#图形图像编程深入解析:GDI+与多媒体应用
- Xilinx AXI Interconnect v2.1用户指南
- DIY编程电缆全攻略:接口类型与自制指南
- 电脑维护与硬盘数据恢复指南
- 计算机网络技术专业剖析:人才培养与改革
- 量化多因子指数增强策略:微观视角的实证分析
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功