深度学习之卷积神经网络(7)池化层

深度学习之卷积神经网络(7)池化层


在卷积层中,可以通过调节步长参数s实现特征图的高宽成倍缩小,从而降低了网络的参数量。实际上,处理通过设置步长,还有一种专门的网络层可以实现尺寸缩减功能,它就是这里要介绍的 池化层(Pooling Layer)


 池化层同样基于局部相关性的思想,通过从局部相关的一组元素中进行采样或信息聚合,从而得到新的元素值。特别地,最大池化层(Max Pooling)从局部相关元素集中选取最大的一个元素值,平均池化层(Average Pooling)从局部相关元素集中计算平均值并返回。以 5 × 5 5×5 5×5输入 X \boldsymbol X X的最大池化层为例,考虑池化感受野窗口大小为 k = 2 k=2 k=2,步长 s = 1 s=1 s=1的情况,如下图所示。

在这里插入图片描述

最大池化举例1


绿色方框代表第一个感受野的位置,感受野元素集合为:
{ 1 , − 1 , − 1 , − 2 } \{1,-1,-1,-2\} {1,1,1,2}
在最大池化采样的方法下,通过
x ′ = max ⁡ ( { 1 , − 1 , − 1 , − 2 } ) = 1 x'=\text{max}⁡(\{1,-1,-1,-2\})=1 x=max({1,1,1,2})=1
计算出当前位置的输出值为1,并写入对应位置。

 若采用的是平均池化操作,则此时的输出值应为
x ′ = avg ( { 1 , − 1 , − 1 , − 2 } ) = − 0.75 x'=\text{avg}(\{1,-1,-1,-2\})=-0.75 x=avg({1,1,1,2})=0.75
 计算完当前位置的感受野后,与卷积层的计算步骤类似,将感受野按着步长向右移动若干单位,此时的输出
x ′ = max ⁡ ( − 1 , 0 , − 2 , 2 ) = 2 x'=\text{max}⁡(-1,0,-2,2)=2 x=max(1,0,2,2)=2
 同样的方法,逐渐移动感受野窗口至最右边,计算输出 x ′ = max ⁡ ( 2 , 0 , 3 , 1 ) = 1 x'=\text{max}⁡(2,0,3,1)=1 x=max(2,0,3,1)=1,此时窗口已经到达输入边缘,按照卷积层同样的方式,感受野窗口向下移动一个步长,并回到行首,如下图所示:

在这里插入图片描述

最大池化举例2


循环往复,直至最下方、最右边,获得最大池化层的输出,长宽为 4 × 4 4×4 4×4,略小于输入X的高宽,如下图所示:

在这里插入图片描述

最大池化举例3


 由于池化层没有需要学习的参数,计算简单,并且可以有效减低特征图的尺寸,非常适合图片这种类型的数据,在计算机视觉相关任务中得到了广泛的应用。

 通过精心设计池化层感受野的高宽 k k k和步长 s s s参数,可以实现各种降维运算。比如,一种常用的池化层设定是感受野大小 k = 2 k=2 k=2,步长 s = 2 s=2 s=2,这样可以实现输出只有输入高宽一半的目的。如下两图所示,感受野大小 k = 3 k=3 k=3,步长 s = 2 s=2 s=2,输入 X \boldsymbol X X高宽为 5 × 5 5×5 5×5,输出 O \boldsymbol O O高宽只有 2 × 2 2×2 2×2

在这里插入图片描述

池化层实现高宽减半1

在这里插入图片描述

池化层实现高宽减半2
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值