Press "Enter" to skip to content

SoftPool:基于Softmax加权的池化操作 | 2021新文

本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.

SoftPool使用softmax进行加权池化,能够保持特征的表达性并且是可微操作。从性能和准确率来看,SoftPool是目前的常规池化方法的一个不错的替代品

 

来源: 晓飞的算法工程笔记 公众号

 

论文: Refining activation downsampling with SoftPool

论文地址:https://arxiv.org/abs/2101.00440v2

 

论文代码:https://github.com/alexandrosstergiou/SoftPool

 

Introduction

 

池化层是当今卷积神经网络的基础算子,用于降低特征图的大小以及网络的计算量,能够达成平移不变性以及增大后续卷积的感受域。目前的池化方法大多基于最大池化或平均池化,虽然计算很快内存占用少,但其有很大的提升空间,主要在于更好地维持特征图的重要信息。

为此,论文提出了SoftPool,基于softmax加强进行特征图的池化操作。从实验结果来看,SoftPool在保持计算和内存高效的情况下,能够很好的保留特征图的重要信息,提升模型的准确率。

 

SoftPool Downsampling

定义大小为的特征图的局部区域,为2D空间区域,大小等同于池化核大小,输出为,对应的梯度为。

 

Exponential maximum kernels

 

SoftPool的核心思想在于softmax的利用,根据特征值非线性地计算区域的特征值权重:

权重能够保证重要特征的传递,区域内的特征值在反向传递时都至少会有预设的最小梯度。在得到权重后,通过加权区域内的特征值得到输出:

SoftPool能够很好地参照区域内的激活值分布,服从一定的概率分布,而基于最大池化和平均池化的方法的输出则是无分布的。

 

Gradient calculation

 

SoftPool是可微的,在反向传播计算时,SoftPool梯度根据前向时的激活值比例进行计算,若梯度过小,将直接赋予预设的非零最小梯度值。

 

Feature preservation

下采样的目的是在保持特征表达的同时降低分辨率,如果损失了特征的表达,势必会降低整体网络的性能。而论文通过可视化发现,相对于其它池化操作,SoftPool能够很好的保留特征表达,算是最大池化和平均池化的折中。

 

Spatio-temporal kernels

 

论文提到,CNN网络可以扩展处理3D输入,SoftPool也可以进行对应的适配。假设输入的特征维度为,为时间维度,SoftPool的处理区域则从原来的2D区域加上时间维度。

 

Experiment

SSI、Pix Sim和EMD为3种不同的相似度度量方法,这里主要对比特征的丢失以及计算性能。SoftPool虽然加入了softmax加权,但其速度依然很快。在实现时,先对整图计算,然后将得到的图特征图与原图进行element-wise相乘,然后进行平均池化。

多种池化方法的对比。

多个主干网络上的分类准确率对比。

 

Discussion

论文列举了许多池化操作的示意图,从图中可以看到,其实SoftPool和早前提出的LIP很像,都是用到了softmax加权,只是LIP额外加了一个小网络对激活值进行线性变换,这幺看来,SoftPool可以算是LIP的一个特例。感觉整体论文的内容以及亮点不够多,另外实验部分的baseline的准确率有点低,不知道作者是怎幺得来的。

 

Conclusion

 

SoftPool使用softmax进行加权池化,能够保持特征的表达性并且是可微操作。从性能和准确率来看,SoftPool是目前的常规池化方法的一个不错的替代品。

 

 

Be First to Comment

发表评论

邮箱地址不会被公开。 必填项已用*标注