网络参数重组论文三(SpineNet-Seg)

本系列文章介绍一种最近比较火的设计网络的思想,即利用网络的重参数化(意义在于训练时间模型有一组参数,而推理时间模型有另一组参数),把多层合成一层,进行网络加速。

本文介绍的ResRep: Lossless CNN Pruning via Decoupling Remembering and Forgetting是将参数重组应用在剪枝的一篇论文,提出了一种新的无损通道修剪方法。

在传统剪枝方法,conv参数同时涉及“记忆”(目标函数)和“遗忘”(惩罚损失),以实现两者的权衡。也就是说,传统的方法强迫每一个渠道“忘记”,并删除“忘记最多”的渠道。

作者提出,将传统范式中耦合的“记忆”和“遗忘”解耦,首先将原始模型重新参数化为“记忆部分”和“遗忘部分”,然后将“记忆学习”(即常规SGD与原始目标)应用于前者以维持“记忆”(原始表现),将“遗忘学习”应用于后者以“遗忘”(清除通道)。

ResRep包含两个关键组件:卷积重新参数化(Rep,解耦方法和相应的等价转换)和梯度重置(Res,用于“遗忘”的更新规则)。

具体地说,我们希望在修剪的原始转换层之后插入压缩器1×1conv。在训练过程中,只对压缩器添加惩罚梯度,选择一些压缩器通道,并将它们从目标函数中得到的梯度归零。这样的训练过程使压实机的一些通道非常接近于零,这些通道被删除时没有修剪造成的损坏。

通过一些线性变换,将卷积-BN-压缩器序列等效地转换为单个转换器:

  1. 将卷积-BN等效地融合为带偏差的卷积,参数为 ( K ˉ , b ˉ ) (\bar{K},\bar{b}) (Kˉ,bˉ)

在这里插入图片描述

  1. 将带偏差的卷积-压缩器融合为新的带偏差的卷积 ( K ′ , b ′ ) (K',b') (K,b)

在这里插入图片描述

最终,生成的模型具有与原始模型相同的架构(即没有压缩器)但更窄的层。

由于从训练时间模型到剪枝模型的等价转换依赖于参数的等价转换,ResRep可以看作是Structural Re-parameterization的一个应用。

ResRep与传统的基于学习的剪枝的区别如下图所示。即,传统的剪枝范式对参数施加惩罚以产生稀疏性,这可能会抑制对存储至关重要的参数。而ResRep通过增加压缩器,将惩罚以掩码的形式施加在压缩器参数上,不会破坏原本的参数,从而实现了完美剪枝。

网络参数重组论文三(SpineNet-Seg)_第1张图片

你可能感兴趣的:(计算机视觉,剪枝,网络参数重组,深度学习,pytorch,神经网络)