Day 7: RepMLP: Re-parameterizing Convolutions into Fully-connected Layers for Image Recognition

要点总结

  1. 全连接层在对长距离依赖性和位置进行建模时,比卷积的效果更好,且更有效,但在局部信息的获取上比卷积更差,因此之前全连接层不太被用在图片识别上。
  2. 本文提出了一种“参数重置”的方法,将局部的先验信息加进了全连接层,使它足够强大到可以运用到图像识别中。
  3. 具体点就是,在训练过程中,在RemMLP内加入卷积层,但在推断时,将它融合到全连接层中去。
  4. 结果表明,当将全连接层的全局表征能力、位置感知能力,和卷积的局部先验结合起来后,能提高在具有平移不变性(比如语义分割)的任务和有着排列好的图像及位置模式(如面部识别)的任务中的表现,且速度更快。

简介

在这里插入图片描述
Figure 1: Sketch of a RepMLP. Here N , C , H , W N, C, H, W N,C,H,W are the batch size, number of input channels, height and width, h , w , g , p , O h, w, g, p, O h,w,g,p,O are the desired partition height and width, number of groups, padding, and output channels, respectively. The input feature map is split into a set of partitions, and the Global Perceptron adds the correlations among partitions onto each partition. Then the Local Perceptron captures the local patterns with several conv layers, and the Partition Perceptron models the long-range dependencies. This sketch assumes N = C = 1 , H = W , H w = W w = 2 ( N=C=1, H=W, \frac{H}{w}=\frac{W}{w}=2( N=C=1,H=W,wH=wW=2( i.e., a channel is split into four partitions) for the better readability. We assume h , w > 7 h, w>7 h,w>7 so that the Local Perceptron has conv branches of kernel size 1 , 3 , 5 , 7 1,3,5,7 1,3,5,7. The shapes of parameter tensors are shown alongside FC and conv layers. Via structural re-parameterization, the training-time block with conv and BN layers is equivalently converted into a three-FC block, which is saved and used for inference.

  1. 图像中的位置信息(比如某像素和邻近像素的相关性,高于和它位置较远的像素的相关性),使得卷积网络在图像识别中大放异彩,本文中,称这种归纳偏见为局部先验(local prior)
  2. 我们也希望网络能获取长距离上的相关信息,本文中称为全局能力(global capacity)
  3. 传统的卷积网络模型,通过深层地叠加卷积层得到较大的感受野,来获取长距离上的相关信息。
  4. 但这样的做法在计算上很低效,且会给优化带来困难。
  5. 此外,有些图像本就有一些内在的位置先验信息,但卷积层没有充分地利用这些,因为它的参数是在所有位置之间共享的。比如当有人用面部解锁手机的时候,脸部是大概率会处于中央位置且对准好的,例如眼睛处于屏幕的上部,鼻子位于中间。我们把利用这种位置先验的能力称为位置感知(positional perception)
  6. 本文回顾了全连接层,并用它来给卷积层提供全局能力和位置感知能力。我们直接用全连接层替换掉卷积层,充当特征图之间的过渡及转换。
  7. 将特征图扁平化,输入给全连接层,再把它变回原来的形状,这样就能充分利用位置感知能力(因为它的参数是和位置相关的)以及全局能力(因为每个输入点都和每个输入点相关)
  8. 当在某些应用场景下,模型的准确性和吞吐量是最重要的考量,而不是参数数目的时候,你可以选择这种基于全连接层的模型,而不是传统的卷积模型。
  9. 然而,全连接层没有局部先验,因为空间信息已经丢失了。本文中,我们提出用一个结构性地参数重置方法,将局部先验加入到全连接层中。
  10. 具体也就是,在训练过程中,搭建一个卷积层和批量正则化层,并且与全连接层平行,再在之后的推断过程中,把已经训练好的参数融合到全连接层中,减少参数及延迟。
  11. 参数重置的意思是,训练过程和推断过程分别有一套自己的参数,且我们根据从前者转化过来的参数,来给后者进行参数化。
  12. 注意,我们并不是在每次推断前都做一次参数重置,而是对所有的统一做一次,之后训练阶段的模型就能完全抛弃了。

Methods and Approaches

接下来的部分有点硬核,特别是3.3那一节,需要点时间消化,等消化完了再上传吧……

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值