1. 种类
常见的的池化层有最大池化(max pooling)和平均池化(average pooling):
2. 作用
- 通过池化层可以减少空间信息的大小,也就提高了运算效率;
- 减少空间信息也就意味着减少参数,这也降低了overfit的风险;
- 获得空间变换不变性(translation rotation scale invarance,平移旋转缩放的不变性);
下面展示了不变性的例子,下面的例子摘抄于网上,不具有普适性,大家理解思想就好:
一些网络不用pooling的原因是想学习关于位置的信息.
3.具体操作
以上图为例子说一下 maxpooling 的输入:
Input: H1 x W1 x Depth_In x Batch_SIze(这里为224x224x64x2,batch size其实没体现出来)
stride(步长为1)
kernel size(核的尺寸为(2, 2),所以池化之后特征图长宽变为1/2)
4. 想法
池化层属于网络的静态属性,不需要学习任何参数,所以是神经网络中比较简单的层.