没有合适的资源?快使用搜索试试~ 我知道了~
可微马尔可夫信道剪枝及其在神经网络中的应用
11539DMCP:用于神经网络的可微马尔可夫信道剪枝郭少鹏郭玉洁王泉泉李俊杰严SenseTime研究{guoshaopeng,wangyujie,liquanquan,yanjunjie}@ sensetime.com摘要74最近的工作表明,信道修剪可以看作是从未修剪的网络中搜索最优子结构。然而,现有的工作,基于这种观察需要训练和评估大量的结构,这限制了它们的应用。在本文中,我们提出了一种新的可微的方法,称为可微马尔可夫信道修剪(DMCP),有效地搜索最佳的子结构的信道修剪。我们的方法是可微的,并且可以通过梯度下降直接优化标准任务损失和预算调整(例如,FLOPs约束)。在DMCP中,我们将信道修剪建模为马尔可夫过程,其中每个状态表示在修剪期间保留相应的信道,并且状态之间的转换表示修剪过程。最后,我们的方法是能够隐式地选择适当的通道数在每一层的马尔可夫过程与优化的过渡。为了验证 我 们 的 方 法 的 有 效 性 , 我 们 使 用 ResNet 和MobilenetV2在Imagenet上进行了大量的实验。结果表明,我们的方法可以实现一致的改善比国家的最先进的修剪方法在各种FLOPs设置。1. 介绍通道修剪[10,2,4]已广泛用于模型加速和压缩。后面的核心思想是大型CNN模型被认为是过度参数化的。通过去除大模型传统的通道修剪方法主要依赖于人类设计的范例。传统剪枝方法的典型流水线可以概括为三个阶段:预训练大型模型,根据预定义的标准修剪大型模型的“不重要”权重,微调修剪后的模型[6,15,18,11]。最近的工作[17]显示了一个新的视角的通道修剪,修剪模型的结构是决定修剪模型的性能的关键,而不是727068666462605850 100 150 200 250 300MFLOPs图1. MFLOPs与ImageNet分类数据集的准确性。最初的模型是MobileNetV2 [21]。我们的方法在所有FLOP下在移动设置(300MFLOP)上优于现有的修剪方法MetaPruning [16]和AMC [7]。更多结果见表6。最好用彩色观看。继承下来的“重要”重量。基于这种观察,一些工作试图设计一个修剪过程,直接从未修剪的结构中搜索最优子结构。AMC [7]采用强化学习(RL)来训练控制器以输出未修剪结构中每层的修剪率,而MetaPruning[16]使用进化算法来搜索结构。然而,这些修剪过程的优化需要训练和评估大量的结构样本,从未修剪的网络,从而这些方法的可扩展性是有限的。虽然AMC神经结构搜索(NAS)中的一个类似问题已经通过可微方法DARTS解决[14]。然而,DARTS提出的可微方法不能直接应用于信道修剪。首先,搜索空间的定义不同。DARTS的搜索空间是一类预定义的操作(卷积,最大池等),而在信道修剪中,搜索空间是每层中的信道数量。其次,DARTS中的操作是独立的,MobileNetV2MetaPruningAMC我们精度11540其他. 但在通道修剪中,如果一个层有k+ 1个通道,则它必须首先至少有k个通道,这是一个逻辑蕴涵关系。本文提出了一种新的可微马尔可夫信道剪枝方法DMCP(Differentiable Markov Channel Pruning)来实现高效的最优子结构搜索。我们的方法通过将其建模为马尔可夫过程,使信道修剪在每个层的马尔可夫过程中,状态Sk表示第k个信道被保留,并且从Sk到Sk+1的转变表示在给定第k个信道被保留的情况下保留第(k+1)个信道的概率注意,在我们的方法中,起始状态总是S1然后,状态Sk的边际概率,即保留第k信道的概率,可以通过转移概率的乘积来计算,并且也可以被视为缩放系数。在网络转发期间,每个缩放系数乘以其对应的信道的特征图。因此,由可学习参数参数化的转换概率可以通过相对于任务损失的梯度下降以及预算调节(例如,FLOPs约束)。在优化之后,可以通过马尔可夫过程利用学习的转移概率对所需预算内的模型进行采样,并从头开始训练以实现高性能。我们的设计细节将在第3节中介绍。最后,为了证明我们方法的有效性,我们在Ima-geNet上进行了详尽的分类实验[19]。在相同的FLOP下,我们的方法在MobileNetV2和ResNet上的性能优于所有其他修剪方法,如图1所示。使用我们的方法,Mo-bileNetV 2没有精度下降,FLOPs减少了30%,ResNet-50的FLOPs减少了44%,只有0.4%的下降。2. 相关工作在本节中,我们讨论了网络架构搜索(NAS)和信道修剪的相关工作。神经架构搜索。[25]首先提出用强化学习搜索神经架构,以在给定推理成本的情况下实现有竞争力的准确性但搜索成本太高,难以应用大致上最近的工作试图通过基于梯度的方法来降低搜索成本。DARTS [14]使用一组可学习的权重来参数化每个可识别操作的概率,层的输出是概率和相应操作的特征图的线性组合。在训练之后,具有最高概率的操作被选择为最终架构。然而,DARTS是在一个小的代理任务上执行的(例如,CIFAR10)并将搜索到的体 系 结 构 转 移 到 大 规 模 目 标 任 务 ( 例 如 ,ImageNet)。ProxylessNAS [1]通过只对两条路径进行采样来搜索archi,从而避免了使用代理任务。大规模目标任务的架构。与上述NAS方法中具有不同类型操作的搜索结构不同,我们的方法侧重于搜索具有不同数量通道的结构。频道修剪。以前的工作渠道修剪可以大致分为两类,即。硬修剪和软修剪。硬修剪在迭代修剪和微调过程中删除通道,而软修剪ing仅使修剪后的通道为零或接近零。硬修剪方法主要取决于不同的修剪标准,例如,权重范数[10],输出中零的平均百分比[9]或每个通道对最终损失的影响[18]。软修剪方法主要是使被修剪的通道为零或趋近于零,从而减小这些通道的影响。[6]首先通过层内准则和计算的逐层比率将一些滤波器归零。然后逐渐增加修剪滤波器的比例,直到达到给定的计算预算。[15]在训练时对Batch Normalization的系数添加 L1正则化[3]以二分搜索方式搜索最不重要的过滤器。[12]全局修剪不显著的滤波器,然后动态更新所有滤波器的显著性[13]使用生成对抗学习来学习稀疏软掩码,以将修剪的过滤器的输出缩放到零。我们的方法可以看作是软修剪。DMCP与上述方法的主要区别在于我们的马尔可夫模型消除了重复解例如,给定一个具有C个通道的层,我们的方法的解空间是O(C),但对于上述方法,即使通道数相同,不同组合的解空间也是O(2C)基于最近的工作[17],一些工作设计了一个搜索过程来直接从未修剪的网络中搜索最优子结构。AMC [7]使用强化学习来确定每层应该保留的通道比例。MetaPruning [16]使用进化算法来搜索网络结构,并训练元网络来预测搜索期间网络结构的权重这些方法需要训练或评估大量的结构,这使得它们效率低下,而我们的方法可以通过梯度下降来优化,避免了这个问题。3. 方法在本节中,我们将详细解释所提出的可微分马尔可夫信道修剪(DMCP)方法。如第3.1节所示,信道修剪首先被公式化为由架构参数化的马尔可夫过程,并且可以以端到端的方式进行优化。然后在第3.2节中,DMCP的培训过程可分为两个阶段:在第一阶段,未修剪的网络由我们提出的变体更新11541出来k kout结构参数化的马尔可夫过程Stage1样品Stage2闵拱兰德拱门兰德拱门麦克斯·阿奇包装块更新重量更新Arch.参数(a)(b)第(1)款图2.DMCP的培训管道图(a)展示了DMCP的两个阶段DMCP首先运行stage1多次迭代以更新未修剪网络的权重以进行预热,然后迭代地运行stage1和stage2以更新权重和架构参数。在图(a)中,每个矩形表示卷积块,例如,Conv-BN-ReLU。四个子结构,由矩形的蓝色部分表示,从未修剪的网络中采样:(1)整个未修剪网(Max. Arch.)(2)具有最小通道数的结构(Min.Arch.)(3)两个结构随机抽样的马尔可夫过程(兰德。Arch.)。这些结构中的每一个被独立地转发,并且四个子结构中的梯度被累积以更新权重。图(b)是图(a)中的包裹块O.图(b)中的符号在第3节中解释。最好用彩色观看。三明治规则,而在阶段2中,架构参数被包装到未修剪的网络中并得到更新,如图2(a)所示。在优化之后,我们在3.3节中提出了两种对修剪后的网络进行采样的方法。3.1. 修剪过程令M(L(1),L(2),...,L(N))表示N层未修剪网络,其中L(i)是第i层.在具有C(i)的层L(i)中,卷积滤波器(即,如果给定输入x,则输出O(i)可以通过以下公式计算:(k-1)个通道给出第k个通道被保留,这遵循马尔可夫性质。3.1.1基于马尔可夫过程的信道修剪我们将上述无环图中的转移建模为随机过程,并通过一组可学习的参数来参数化转移概率。我们将可学习参数命名为架构参数,以将它们与网络权重区分开来。让p(w1,w2,., w k−1)是第一个k − 1改变的概率,O(i)= w(i)≠ x,k = 1,2,., C(i)(一)nels被保留。 保留第一个k通道的概率-nels可以表示为:其中O(i)是O(i)的第k个通道,w(i)是第k个文件。p(w,...,w)= p(w|W,...,W)p(w,.,W)(2)k k1kk1k−11k−1ter在L(i)中,并且f表示卷积运算。如果没有明确说明,则表示图层为了简单起见,下面将省略索引如第1节所示,我们以相反的方式执行通道修剪,其可以由有向无环图表示,如图3所示,其中表示第k个通道的状态Sk(1≤k≤Cout)在修剪过程中被保留,并且从Sk到如果第k个通道被保留,则Sk+1意味着第(k+ 1)修剪过程可以通过从任何其他状态转换到终端状态T来结束。该过程具有以下性质:如果C个输出通道中的k个通道被保留在层L中,则它们必须是前k个通道。 换句话说,假设第k个通道被保留,那么必须保留前(k-1)个通道,我们可以进一步得出结论,保留-使第(k+ 1)个通道有条件地独立于第一个其中p(w k|w1,.,w k−1)是在第一(k−1)个通道被保留的情况下保留第k个通道的概率。因为保留wk是有条件的独立于{w1,w2,. w k−2},如果保留w k−1,则我们可以将等式2改写为:pk=p(wk|w1,w2,. wk−1)=p(wk|Wk−1)(3)p(wk|<$wk−1)=0(4)其中<$w k−1表示丢弃第(k−1)个信道。因此,在图3中,转变可以由转变概率P={p1,Conv1212BatchNorm…ReLU1122保险丝���1���2���������������11542p2,. p Cout},其由等式3定义。11543组步幅1+e−αk1 -p1p1S1...图3.将信道修剪建模为马尔可夫过程。状态 Sk(k= 1,2,.)意味着第k个信道被保留,并且transi.tionp k是保留第k个通道的概率,假设第(k-1)个通道被保留,而1-p k是终止该过程的概率。 状态T表示终端状态,Cout是每层中的最大信道数。我们 使用 一 设置 的 架构参数A={α1,α2,,αcout}为参数P,因此pk可以是计算如下:.1k = 1利用恒等捷径,由于逐元素求和,最后卷积层中的信道数量必须与先前块中的信道数量相同许多复杂的工作[10,9]在我们的方法中,我们采用了一种权重共享策略来解决这个问题,使得输出通道必须相等的层将共享同一组架构参数。3.1.3预算正规化FLOP和延迟通常用于评估修剪方法。为了执行易于实现和公平的比较,我们使用某些FLOP的准确性作为bud- get正则化。然而,像FLOP这样的预算正则化不能通过梯度下降自然优化。在这一节中,我们介绍我们的解决方案来处理不可微的预算正则化问题.pk=sigmoid(αk)=1k=2,…C出来,αk∈A(五)在层L中,预期通道E(通道)可以计算为:请注意,我们为每个层至少保留一个通道,因此p1=p(w1)= 1。采样通道的边际概率wkde-E(通道)=C=1p(wi)(8)由p(wk)表示,可以计算为:p(w k)= p(w k| w k−1)p(w k−1)+p(w k|<$w k−1)p(<$w k−1)= p(w k|w k−1)p(w k−1)+0(六)其中Cout是L中的输出通道数,p(wi)是等式6中定义的边际概率。在层L中,给定如等式8计算的预期输入声道E(in)和输出声道E(out),=p(w1)YkI=2p(wi|wi−1)=Ykpii=1FLOPsE(LFLOPs )可以通过以下方式计算:然后,通过以下等式将架构参数包装到未修剪的网络中:E(LFLOPs)=E(out)×E(kernel op)(9)E(内核操作)=E(in)×#通道操作(10)奥格克 =Ok ×p(wk)(7)#通道操作=(SI+SP−SK+ 1)?S×SK(十一)其中,Ok是第k个通道的实际输出。因此,修剪wk可以通过将p(wk)设置为零来表示。然而,我们不能直接在卷积层之后实现等式7,因为批量归一化层可以按比例放大第i个通道的值,使得后一层将不受影响。因此,修剪过程应该放在批量归一化层之后。图2(b)中给出了如何将架构参数与未修剪网络相结合的示例。通过上述定义,修剪后的模型可以通过马尔可夫过程进行采样,而转换可以通过梯度下降进行优化,这将在第3.2节中说明。3.1.2解决问题的方法请注意,MobilenetV2和ResNet都有带有快捷连接的剩余块。对于剩余块,不….pCout=1pk-2pkpCout-1S...K11544其中,对于正常卷积,groups= 1,对于深度卷积,groups=E(in)S I和S K分别表示输入宽度/高度和内核宽度/高度,而S P是填充大小,步幅是卷积步幅。那么模型E(NFLOPs)的预期触发器为:ΣNE(NFLOPs)=E(1)(LFLOPs)(12)l=1其中N是卷积层的数量。使用公式12,我们可以通过梯度下降来优化FLOP。3.1.4损失函数给定目标FLOPsFLOPs目标,我们将可微预算正则化损失lossreg公式化如下:loss reg=log ( |E ( N FLOPs ) −FLOPs 目 标 | )(13)11545为了使E(NFLOPs)严格低于FLOPs目标值,但又不对目标值太敏感,我们在损失函数中加入单边当γ×FLOPs目标≤E(NFLOPs)≤FLOPs目标得到满足,则损失将为零. γ1是公差比,可通过以下方式调整:用户.当更新权重时,FLOPs损失对权重没有影响,因此损失函数为:损失重量=损失cls(14)其中损失cls是分类的交叉熵损失。当更新架构参数时,损失函数被公式化为如下:Lossarch=losscls+λreglossreg( 15)其中λreg是平衡两个损失项的超参数每个层中的开关(保留通道的比率)是不相同的。因为修剪后的网络在不同的层中可能有不同的交换机。第二,交换机的随机抽样服从马尔可夫过程的结构参数分布因为在我们的方法中可能的体系结构数量远远超过[24]。而要使所有的体系结构都能反映出它们的真实性能,需要付出太多的代价。因此,我们只关注频繁采样的架构。阶段2:架构参数更新。 在第二阶段,我们只更新架构参数。对于未修剪网络中的每个卷积层,通过以下方式将架构参数与其原始输出张量合并:等式7.因此梯度可以反向传播到架构参数。梯度将通过以下公式反向传播到α请注意,我们半径。 因为当保留一些损失=Cuut(i)损失×(十六)当通道趋近于0或1时,可学习参数α的范数将变得很大,这将使它们向前移动到零,从而影响优化。(i)∂Okα(i).0=k=1Q(i)∂Ok(一)J,kj(十七)(一)∂pk O(i)pr,k≥j3.2. 训练管道αjαjkr∈{r|r=j且r≤k}pk=(1−p)p(十八)如图2(a)所示,DMCP可以分为两个阶段,即:未修剪网络的权值更新和结构参数更新。阶段1和阶段2在训练期间被迭代地调用阶段1:未修剪网络的权重更新。 在第一阶段,我们只更新未修剪网络中的权重如等式6中所定义的,保留第k个信道的概率也可以被认为是保留前k个信道。然后,我们的方法可以看作是软采样的所有子结构在一个单一的转发时,更新架构参数。通常,一个层中的所有信道都是相等的,并且将信道选择建模为马尔可夫过程是不直观的。受到启发,在一项研究中[24]提出了方法是0。经过训练的MobileNetV2的75×部分1 .一、0×可以获得与从头开始训练类似的性能在训练方案中引入了一种变异的三明治规则,使信道组处于未修剪的模型比它后面的频道组更“重要”。所以层中的通道是不相等的。具有k个通道的层的最佳选择将是前k个通道,而不是其他可能的组合。基于未修剪模型中的这种信道重要性排序属性,当对具有k(k C)个信道的子网络进行采样时,选择前k个信道可以更好地指示子网络的真实性能(单独从头开始训练)。因此,引入马尔可夫模型是合理的.我们的变化和原来的“三明治规则”之间有两个区别。首先,随机抽样Jα11546αjkK这样,我们方法的所有组件都可以以端到端的方式进行训练为了进一步减小搜索空间,我们将信道均匀地分成组(≥10组),每个结构参数α负责一个一个频道,而不是一个频道。每一层都有相同数量的组。Warmup过程在迭代调用阶段1和阶段2之前,DMCP首先运行阶段1几个时期以预热,其中子网络通过随机初始化的结构参数的马尔可夫过程这该过程的目的是避免网络在更新结构参数时由于权值训练不足而陷入不良的局部极小值。我们还在第4.2节中进行了消融研究,以显示使用预热的有效性。3.3. 剪枝模型抽样在DMCP训练完成后,我们再从中生成满足给定成本约束的模型。在本节中,我们将介绍两种生产方法。第一种方法称为直接采样(DS),它是在每一层中独立地通过具有最佳转移概率的马尔可夫过程进行采样。我们对几个结构进行采样,只保留目标FLOP预算中的结构。第二种方法,称为预期采样(ES),是将每层中的通道数量设置为由等式8计算的预期通道。在我们的实验中,lossreg总是优化为零,因此11547期望网络等于或小于给定FLOP约束。因此,预期的网络也满足要求。在第4节中,我们进行了大量的实验来比较这两种方法。直接采样的剪枝模型的最佳性能稍差它比期望抽样方法产生的模型高出一点,但需要更长的时间来找到这样的模型。因此,在我们的实验中,我们使用期望抽样方法来产生最终的修剪模型。4. 实验在本节中,我们进行了大量的实验来验证和分析我们的方法。我们首先在4.1节中描述DMCP的实现细节。为了研究我们的方法中每个组件的有效性,我们在第4.2节中进行了消融实验。 最后,在第4.3节中,我们将我们的结果与最先进的通道修剪方法进行了比较。更多的可视化和实验将显示在补充材料。4.1. 实现细节我们证明了我们提出的可区分修剪方法在ImageNet分类上的有效性 我们做实验在轻型(MobileNetV2[22] ) 和 重 型 ( ResNet [5] ) 型 号 上 。 对 于MobilenetV2,我们使用MobilenetV2 1.5x作为未修剪的网络,每层中的通道分为15组(每组0.1x)。而对于 ResNet , 我 们 使 用 标 准 的 ResNet50 ( 1.0x ) 和ResNet18(1.0x)作为未修剪的结构,每层中的通道分为10组(每组0.1x)。DMCP培训。如第3.2节所述,DMCP的培训管道包括两个阶段:热身和反复训练。培训在8个Nvidia GTX1080TI GPU上进行,批量大小为512。MobileNetV2和ResNet共训练40个epoch,初始学习率为0.2,最后通过余弦调度降为0.02。在预热阶段,使用“三明治规则”的变体,仅对网络权重进行20个epoch的训练。在迭代训练阶段,架构参数和未修剪的网络都在总共20个epoch中训练。在所有实验中,预算正则化的λreg被设置为0.1在所有实验中,公差比γ设定为0.99为了在下面的章节中使解释简短,我们使用实验设置的缩写形式例如,MBV 2 1.0x-59 M意味着未修剪的网络是MobileNetV 2 1.0x,目标FLOP等于59 M。修剪网络训练。剪枝后的网络分别由直接采样法和期望采样法产生。详细说明了剪枝模型生成方法第3.3节请注意,所有修剪的模型都是从头开始训练的修剪模型的训练在32个Nvidia GTX 1080TI GPU上进行,批量大小为2048。修剪后的MobileNetV2训练了250个epoch,修剪后的ResNet训练了100个epoch。训练所有修剪模型的初始学习速率首先在一个epoch内从0.2预热到0.8,然后通过余弦调度器降低到0。其他设置与原始文件中的设置相同。4.2. 消融研究可恢复性验证。我们的方法应该具有的一个属性是,当在没有FLOPs约束的预训练模型上搜索时,它应该保留几乎所有的通道我们使用预先训练的MobileNetV21.0x并随机初始化架构参数。请注意,只执行迭代训练阶段。我们冻结了MobileNetV2 1.0x的权重和经过训练的架构参数,只有任务丢失。图4中的结果表明,我们的方法的FLOP和前1训练精度可以在500次迭代内恢复到预训练模型的水平。图4. DMCP的可恢复性与预训练的Mo-bileNetV 2 1.0x和随机初始化的架构参数。期望抽样和直接抽样。 作为 如3.3节所述,我们可以通过直接采样(DS)和期望采样(ES)对修剪后的模型进行采样。在MobileNetV 2 - 210 M和ResNet 50 -1.1G上验证了两种模型生成方法的有效性。我们还训练 了 MobilenetV2 0.75x 和 ResNet50 0.5x , 它 们 的FLOPS分别为210M和1.1G,作为比较的基线。这两个基线的性能分别为70.4%和71.9%。对于DS,我们对五个模型进行了采样,结果报告在表1中。该表显示,DS产生的所有模型的性能都优于基线模型,这意味着架构参数收敛到一个高性能的子空间。并且ES产生的模型性能与DS产生的最优模型性能非常接近,说明了ES的有效性。此外,表2和表3的结果也显示了11548DMCP三明治规则MBV 2 - 210 M原始我们的变体Top-171.572.4ES的鲁棒性。为了节省微调的成本,我们使用ES来产生一个模型,如果没有指示。DMCPESDS高最低MBV2 1.5x-210M72.272.4 70.6Res50 1.0x-1.1G74.174.0 72.3表1.通过直接抽样(DS)和期望抽样(ES)产生的修剪模型的性能。 MBV2是MobileNetV2的缩写,Res50是ResNet 50的缩写。设置结构参数,这使得权重更加可区分,并防止结构参数陷入糟糕的局部最小值。DMCP热身ESDS高最低MBV2-210MC✗72.271.472.4 71.471.2 70.5表3.是否使用热身的影响MBV2是MobileNetV2的缩写未修剪网络的规模。在本节中,我们评估了缩放未修剪网络的影响。我们使用两个尺度的MobileNetV2,即。MobileNetV2 1.0x和MobileNetV2 1.5x,作为未修剪的网络,并将其修剪为59M和210M FLOP。注意,在实验中,每层中的通道被分成10组以保持相同的组大小。表2中的结果表明,我们的方法对未修剪的网络规模不敏感。使用较大的未修剪网络300250200150100500500 5 10 15 20 25 30 35信道索引可以带来更好的性能。因此,我们在剩下的论文中使用Mo-bileNetV 2 1.5x和ResNet 50 1.0x作为默认的未修剪网络。在图5中,我们还可视化了通过从MBV 2 1.5x-210M中的通道数减去MBV 2 1.0x-210 M中每层的通道从图中,我们可以观察到MBV 2 1.0x-210 M倾向于在浅层中保留更多的通道,而MBV 2 1.5x-210 M在深层中保留更多的通道,即使它们在精度上只有微小的这表明在信道修剪的搜索空间中存在多个局部极小值。DMCPESDS最高最低MBV2 1.5x-59M62.762.960.8MBV2 1.0x-59M62.662.660.6MBV2 1.5x-210M72.272.471.4MBV2 1.0x-210M71.872.070.4表2.在MobileNetV2(MBV2)上,在59M和210M FLOP水平下,在不同的未修剪网络规模下,修剪模型的性能。预热阶段的影响。我们在有和没有预热阶段的情况下训练MobileNetV 2 - 210 M,并评估其相应修剪模型的性能。为了保持其他设置相同,我们将实验的迭代训练阶段的时期加倍,而不预热。在没有预热的设置中,模型被训练100个epoch,前50个epoch中的初始学习速率和调度器表3中的结果表明,使用预热可以获得更好的性能。一个可能的原因是,使用预热使权重在更新之前训练得更充分图5.来自MBV2的两个修剪模型之间的差异1.5x-210 M和MBV2 1.0x-210 M。X轴指示层索引,并且y轴是通过从MBV 2 1.5x-210 M中的通道数目减去MBV 2 1.0x-210 M中的每层的通道数目而计算的差三 明 治 规 则 的 影 响 。 我 们 消 除 了 三 明 治 规 则 在MobileNetV 2 - 210 M中的影响。原始的三明治规则和我们的变体三明治规则仅在DMCP中被采用以进行比较。结果列于表4中我们可以看到,使用可变三明治规则会带来更好的性能。可能的原因是,对应于更高的概率的权重将被更好地优化的变体三明治规则。在这些权重中,它们中的每一个都将被优化以更好地代表它们的真实重要性,而其他权重的影响较小。因此,在更新体系结构参数时,表4.是否使用变异三明治法则的影响培训计划。我们验证了更新方案的有效性。我们在MobileNetV 2 - 59 M上进行了三个实验。 所有实验在预热阶段使用相同的设置,而迭代训练阶段的设置如下:在第一个实验中,我们只更新关于预算调整(FLOPs损失)的架构参数;在第二个实验中,我们只更新关于预算正则化和任务丢失的架构参数;在最后一个实验中,MBV2 1.5x-210M - MBV2 1.0x-210M11549Arch. Params. 更新权重更新Top-1任务损失C52.1C C61.5C CC62.7表5.迭代训练中不同成分的影响相位实验在MobileNetV2上进行,目标FLOP均为59M。没有复选标记的单元格表示在训练期间不使用相应的组件。关于全损失函数更新未修剪的网络和架构参数两者。结果示于表5中。第一个实验是FLOP引导的修剪的朴素基线。具有相同FLOP的层可以被修剪到相同的程度。结果比其他实验差得多。通过实验一和实验二的比较,我们发现任务损失可以帮助区分不同层次的重要性,即使它们具有相同的FLOP。最后,通过与前两个实验的比较,我们可以得出结论,当结构参数改变时,权重也应该自适应。4.3. 与最新技术水平的比较在本节中,我们将我们的方法与各种修剪方法进行了比较,包括强化学习方法AMC [7],进化方法MetaPruning [16],一次性方法AutoSlim [23]以及传统的通道修剪方法SFP [6]和FPGM [8]。我们的方法在所有FLOP设置中的训练设置在第4.1节中说明,我们修剪的模型通过预期采样进行采样所有方法都在MobileNetV2,ResNet18和ResNet50上进行了评估,在每种类型的模型中,我们训练了一组基线模型与设置4.1进行比较。从表6中可以看出,在相同的设置下,我们的方法优于所有其他方法,这表明我们的方法的优越性。请注意,AMC,MetaPruning和我们的方法通过标准硬标签丢失从头开始训练修剪模型。而AutoSlim采用了一种可精简的训练方法,其中修剪网络与未修剪网络共享权重,并模仿未修剪网络的输出。为了与AutoSlim进行公平的比较,我们还使用可精简的训练方法来训练我们的修剪模型实验结果表明,该训练方法能进一步提高训练性能,在不同的FLOPs模型下,该方法均优于AutoSlim5. 结论针对现有信道修剪方法需要训练和评估大量子结构的缺陷,提出了一种新的可微分信道修剪方法--可微分马尔可夫所提出的方法是可微的模型-1基线和修剪模型的训练设置不同。表6.不同模型在ImageNet数据集上使用不同FLOPs设置的性能。Top-1列列出了与原始工作中报告的未修剪基线模型(1.0×)相比的精度提高,我们的基线用“-"表示。“α ×”表示基线模型中的每一层均按α缩放。 标记为*的组表示修剪后的模型是通过[23]将信道修剪作为马尔可夫过程,因此可以通过梯度下降来优化任务丢失。在优化之后,所需的模型可以通过简单的期望采样从优化的转换中采样,并从头开始训 练 我们 的 方 法 实现 了 最 先 进 的性 能 与ResNet 和MobileNet V2的Ima-geNet在各种FLOPs设置。组模型FLOPsTop-1∆顶部-1制服1.0x300M72.3-制服0.75x210M70.3-2.0制服0.5x97M65.4-6.9制服0.35x59M60.1-12.2217M71.2-0.8MetaPruning[16]87M63.8-8.243M58.3-13.7AMC[7]211M70.8-1.0[23]第二十三话300M74.2+2.4MBV2211M73.0+1.2300M73.9+1.6211M72.4+0.1DMCP97M67.0-2.487M66.1-6.359M62.7-9.743M59.1-13.3DMCP*300M74.6+2.3211M73.5+1.2Res18制服1.0xFGM [8]1.8G1.04G70.168.4--1.9DMCP1.04G69.2-0.9制服1.0x4.1G76.6-制服0.85x3.0G75.3-1.3制服0.75x2.3G74.6-2.0制服0.5x1.1G71.9-4.7制服0.25x2.78亿63.5-13.1FGM [8]2.4G75.6-0.6[6]2.4G74.6-2.03.0G76.2-0.4Res50MetaPruning[16]2.3G75.4-1.21.1G73.4-3.23.0G76.0-0.6[23]第二十三话2.0G75.6-1.01.1G74.0-2.62.8G77.0+0.4DMCP2.2G76.2-0.41.1G74.4-2.22.78亿66.4-10.011550引用[1] 韩才、朱立庚、宋涵。Proxylessnas:在目标任务和硬件上直接进行神经结构搜索。arXiv预印本arXiv:1812.00332,2018。[2] 作者:John S. Denker和Sara A.索拉最佳脑损伤。神经信息处理系统进展,第598-605页。摩根·考夫曼,1990年。[3] 丁小涵、丁贵光、郭雨辰、韩俊功、严成刚。用于破坏性CNN宽度优化的近似oracle过滤器修剪。CoRR,abs/1905.04748,2019。[4] 放 大 图 片 作 者 : David G.Stork , Gregory Wolff ,Takahiro Watanabe.最佳脑外科医生:扩展和性能比较。在第六届神经信息处理系统国际会议论文集,NIPS'93,第263-270页,San Francisco,CA,USA,1993中。摩根考夫曼出版公司[5] Kaiming He,Xiangyu Zhang,Shaoying Ren,and JianSun. 用 于 图 像 识 别 的 深 度 残 差 学 习 。 CoRR ,abs/1512.03385,2015。[6] 杨和,董宣义,康国良,傅彦伟,杨毅。通过软过滤器修剪进行渐进式深度神经网络加速arXiv预印本arXiv:1808.07471,2018。[7] Yihui He, Ji Lin ,Zhijian Liu ,Hanrui Wang,Li-JiaLi,and Song Han. Amc:移动设备上模型压缩和加速的自动化。在欧洲计算机视觉会议(ECCV)的会议记录中,第784- 800页[8] 杨河,刘平,王紫薇,杨毅。用于深度卷积神经网络加速的几何中值修剪过滤器。CoRR,abs/1811.00250,2018。[9] Hengyuan Hu,Rui Peng,Yu-Wing Tai,and Chi-KeungTang.网络修整:数据驱动的神经元修剪方法实现高效的深度架构。arXiv预印本arXiv:1607.03250,2016。[10] Hao Li,Asim Kadav,Igor Durdanovic,Hanan Samet,and Hans Peter Graf.修剪过滤器以实现高效的卷积。arXiv预印本arXiv:1608.08710,2016。[11] Hao Li,Asim Kadav,Igor Durdanovic,Hanan Samet,and Hans Peter Graf.修剪过滤器以实现高效的卷积。CoRR,abs/1608.08710,2016。[12] Shaohui Lin,Rongrong Ji,Yuchao Li,Yongjian Wu,Feiyue Huang,and Baochang Zhang.通过全局动态过滤器修剪加速卷积网络。第27届国际人工智能联合会议论文集,IJCAI-18,第2425国际人工智能组织联合会议,2018年7月。[13] Shaohui Lin , Rongrong Ji , Chenqian Yan , BaochangZhang,Liujuan Cao,Qixiang Ye,Feiyue Huang,andDavid S.多尔曼。通过生成对抗学习实现最佳结构化CNN修剪。CoRR,abs/1903.09291,2019。[14] 柳寒笑,凯伦西蒙尼扬,杨一鸣。 Darts:差异化架构搜索。arXiv预印本arXiv:1806.09055,2018.[15] Zhuang Liu,Jianguo Li,Zhiqiang Shen,Gao Huang,Shoumeng Yan,and Changshui Zhang.学习效率卷积网络通过网络瘦身。国际计算机视觉会议,第2755-2763页,2017年。[16] Zechun Liu , Haoyuan Mu , Xiangyu Zhang , ZichaoGuo,Xin Yang,Tim Kwang-Ting Cheng,and Jian Sun.元运行:用于自动神经网络通道修剪的Meta学习。arXiv预印本arXiv:1903.10258,2019。[17] Zhuang Liu,Mingjie Sun,Tinghui Zhou,Gao Huang,and Trevor Darrell.重新思考网络修剪的价值。arXiv预印本arXiv:1810.05270,2018。[18] Pavlo Molchanov,Stephen Tyree,Tero Karras,TimoAila,and Jan Kautz.修剪卷积神经网络以实现资源高效推理。arXiv预印本arXiv:1611.06440,2016。[19] Olga Russakovsky , Jia Deng , Hao Su , JonathanKrause , San- jeev Satheesh , Sean Ma , ZhihengHuang , Andrej Karpathy , Aditya Khosla , MichaelBernstein,Alexander C.伯格和李飞飞。ImageNet大规模视觉识别挑战。国际计算机视觉杂志(IJCV),115(3):211[20] OlgaRussakovsky , Jia Deng , Hao Su , JonathanKrause , San- jeev Satheesh , Se
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功