池化层(Pooling layer)同样是收到了视觉神经科学的启发。在初级视觉皮层V1(Primary visual cortex)中,包含了许多复杂细胞(Complex cells),这些细胞对于图像中物体微小的变化具有不变性(invariance to small shifts and distortions). 这种不变性也是Pooling layer的核心,我们首先来看Pooling layer如何工作,然后具体分析这种不变性。
我们举例说明Pooling layer的工作过程,在下图中的Max pooling操作中,其filter大小是2x2,stride是2,padding是0
根据CNN(4)中的公式:
我们可以得出pooling后的feature map是2x2的。
在开头提到的不变性(invariance),包含三个方面,即位移(translation),旋转(rotation)及缩放(scale)。首先来看位移:
再看旋转(rotation):
再来看缩放(Scale):
我们可以得出结论如下:
首先,pooling layer使得CNN拥有了一定的识别失真后的pattern的功能,增加了神经网络的generalization,降低了overfitting。
第二,很明显的,因为池化后的feature map变小,数据在保留主要特征的情况下,降维了。
附注:我从下面这篇知乎文章获得的启发很大,表示感谢。
https://www.zhihu.com/question/36686900