【阅读笔记】Refining activation downsampling with SoftPool

1. Introduction
        本文提出了一种快速、高效的池化方法SoftPool,Softpool可以以指数加权方式累加激活。与一系列其他池化方法相比,SoftPool在下采样激活映射中保留了更多的信息,可以获得更好的分类精度。在ImageNet上,对于一系列流行的CNN架构,用SoftPool替换原来的池化操作可以带来1-2%的一致性精度提升。
2. Related Work
        Average Pooling:区域平均值。

 

        
  • Max Pooling:区域最大值。

 

  • Stochastic Pooling:它使用一个核区域内激活的概率加权抽样。

 

  • S3 Pooling:对原始Feature Map网格中的行和列进行随机采样。

 

  • Preserving Pooling:使用平均池化,同时用高于平均值的值增强激活。
  • Local Importance Pooling:进一步评估了如何将学习到的权值作为一种基于子网络注意的机制来使用,该机制可用于汇集信息特征,同时丢弃无信息特征。

 

3. SoftPool Downsampling

        考虑activation map中的 local region,其维数为C×H×W,通道数为C,通道高度为H,通道宽度为W。为了简化符号这里省略通道维数,并假设R是与考虑的二维空间区域的激活相对应的索引集。对于大小为k×k的池化kernel定义|R|=k^2。池化操作的输出为,对应的梯度用表示该方法以自然指数(e)为基础,保证了较大的激活值对输出的影响较大。SoftPool是可微的,所有在局部邻域内的激活在反向传播期间将被分配至少一个最小梯度值。这与使用最大池化的方法相反。SoftPool利用激活区域内的最大近似R。每一个指数为的激活应用一个权重,该权重计算为该激活的自然指数与邻域R内所有激活的自然指数之和的比值:

                                              

权重与相应的激活值一起用作非线性变换。较高的激活比较低的激活占更多的主导地位。SoftPool操作的输出值是通过对内核邻域R内所有加权激活的标准求和得到的:

                                                   

与其他基于最大池化和平均池化的方法相比,使用区域的softmax产生归一化结果,其概率分布与每个激活值相对于核区域的邻近激活值成比例。这与最大激活值选择或对内核区域的所有激活取平均形成了直接对比,而内核区域的输出激活是没有规则化的。因此是可微的。

 

在训练的更新阶段,所有网络参数的梯度都是根据在上一层计算的误差导数进行更新的。当在整个网络体系结构中反向传播时,这会创建一个更新链。在SoftPool中,梯度更新与前向传播过程中计算的权重成比例。这对应于较小激活的梯度更新小于实质性激活的梯度更新。

Softmaxmax或随机池化不同,Softmax是可微的。因此,在反向传播期间,一个最小的非零权值将被分配给一个核区域内的每一个激活。这样就可以计算出该区域每一次激活的梯度。在SoftPool实现中使用了给定精度级别有限范围的可能值,保留了softmax的可微性质,通过给定每个类型使用的比特数分配一个较低的算术限制。这可以防止算术下溢。也为内核值和最终求和中使用的生成的激活值实现了这种机制。

4. Experimental Results
该图展示了使用不同池化进行的下采样,可发现SoftPool有更好的效果。

直接在Backbone的基础上把池化方法替换为SotfPool,效果有明显的提升。

SoftPool池化层的替代精度是各种池化方法的最高精度。 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值