[论文解读]CVPR2019|RePr: Improved Training of Convolutional Filters

该博客解读了一篇名为RePr的CVPR2019论文,探讨了如何改进卷积神经网络中卷积滤波器的训练,以减少冗余并提升模型效率。作者提出通过固定部分滤波器并训练剩余滤波器的方式,降低特征间的相关性,实现网络正交化。实验表明这种方法在不改变网络结构的基础上,能有效提高模型性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目:RePr: Improved Training of Convolutional Filters
作者:Aaditya Prakash ; James Storer;Dinei Florencio, Cha Zhang

Motivation:
作者认为,所有训练好的网络都是可以在不明显降低效果的同时,对网络进行剪枝。这是因为网络的卷积核有一些不必要的重复。一个具有较少卷积核的小模型从头开始训练的效果,都没有大模型通过剪枝得到的相同数量卷积核的网络的效果好。一般的训练流程都会产生一些无用的,冗余的,可修剪的卷积核,因此,作者提出本文的中心思想:先固定一些卷积核,训练其余的卷积核,然后如此重复。最后,再按照标准的方法继续训练。

Related Work:
训练计划:目前很多模型压缩提高效果的论文,普遍通过Dropout的方法实现。有随机drop 神经元的,有drop 激活函数的,有drop整个网络层的,这却让模型学得与丢掉的层相同的特征,但很大程度上抑制了过拟合。而作者提出的不是学得相同的特征,而是让这些特征层进行线性的组合。
模型压缩:KD使用soft logist让大模型教小模型,使小模型获得大模型相同的效果,作都不要大模型并计算量很小,如果加上KD的话,模型的效果会更好。
接下来讲神经元的排行;
然后是网络结构,如果事先改变网络结构,不会有什么效果。
后面讲不同特征之间的相关性,通过拼接相加等方法减小相关性。这使计算量增加并改变了网络结构,作者的方法在不改变网络结构的基础上减小了相关性。

如果特征图之间是正交的,那么会在不同的激活空间进行计算,改善网络的效果,这可以通过计算那些表达最强的卷积。对于浅层网络比较容易,但对于深层的网络计算量非常大,则可以通过正则化可以减小相关性。还有很多使特征图正交的方法,可参考论文。
作者通过CCA(典型相关性分析)来学习每层特征图之间的重叠性,

而后,作者又作了一个实验,用一个两层每层32个Filter的网络训练CIFA-10,并单独分析各个Filter对模型效果的影响,如图:
在这里插入图片描述
一个很小的网络都存在可以修剪的filter,并且两层之间都有很大的相关性。
以上只是介绍,不涉及方法,重点在下:
RePr:
直接上算法流程:
在这里插入图片描述
循环:
1、迭代计算MFM_FMF
2、用RfR_fRf找出F^\hat{F}F^
3、迭代计算MF−F^M_{F-\hat{F}}MFF^
4、更新参数

inter-filter orthogonality(核内正交化):
一个layer有多个filter:l→k∗k∗c多个filter→Wl归一化:W^l=Wl/∣∣Wl∣∣映射:Pl=∣W^l∗W^lT−I∣相关性:Olf=∑Pl[f]Jl,Jl是Pl的大小Jl×Jl一个layer 有多个 filter:l\to k*k*c \\ 多个filter \to W_l \\ 归一化:\hat {W}_l=W_l/||W_l|| \\ 映射:P_l=|\hat {W}_l*\hat {W}_l^T - I| \\ 相关性:O_l^f = \frac{\sum P_l[f]}{J_l}, J_l是P_l的大小J_l×J_l layerfilter:lkkcfilterWlW^l=Wl/WlPl=W^lW^lTIOlf=JlPl[f],JlPlJl×Jl

一个layer的多个卷积核可以用一个matrix表示,也就是WlW_lWl,先对WlW_lWl归一化,再与自己的转置相乘得到W^l\hat {W}_lW^l,第i行表示其他filter对第i个filter的映射,可以看成是相关性,如果是正交性的越大,那么这个值就越小,一行的数值之和越小,说明其他filter与这个filter相关性越低。因此可以通过这个sum来对filter进行rank。计算这个metric是在一个layer内,但rank是在所有layer进行的,目的是为了不让layer这个因数影响filter的rank,避开layer的差异性,同时也不引入过多的超参。

Experiment:
还是直接上图:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一碗白开水一

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值