深度学习:SoftPool : Refining activation downsampling with SoftPool

2021/02/07 07:32
阅读数 720

Abstract

CNN 使用 Pooling 操作来降低 activation map 的大小。这一操作对于取得  局部空间不变性 和 后续卷积的感受野 至关重要。所以, pooling 应当尽量减少信息的丢失,同时计算高效。

作者提出了 softpool,在替换原有pooling 操作,涨点明显,在分类任务上可提升 1-2 个点

Introduction

softpool:思想简洁明了,具体操作如下图,总计分3步

第一步:对kernel中的每个pixel计算 softmax 作为其权重

第二步:将pixel与刚才的权重相乘

第三步:sum求和

所以与其他方法区别较为明显:

 

 为了对比这几种池化的效果,作者进行了可视化验证:soft保留了更新的细节信息。

max:数值最大的位置权重为1,其余为0;

avg :每个位置的权重都为1;

soft:根据数值不同,贡献不同,权重不同。 

Gradient calculation

与max-pooling不同,softmax pooling是可微的。使用softmax进行操作确实挺精妙的,反向求导和梯度传播都解决了。

 

Experimental Results

真的很喜欢这种文章,一目了然,性能明显。

前向速度:比avg慢,比max快

显存占用:比avg多,比max少

综合就是介于两者中间,但分类性能提升明显,还是值得一试的。后面等显卡空了,就去试一下。

 

分类性能:提升明显

 

作者还做了替换不同层数时的效果比对:总的来看,所有的pooling层都可以替换。

 

 

展开阅读全文
加载中

作者的其它热门文章

打赏
0
0 收藏
分享
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部