作者:言有三
链接:https://www.zhihu.com/question/36686900/answer/476117375
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
(1) 增大感受野
所谓感受野,即一个像素对应回原图的区域大小,假如没有pooling,一个3*3,步长为1的卷积,那么输出的一个像素的感受野就是3*3的区域,再加一个stride=1的3*3卷积,则感受野为5*5,我们看左上角像素的传播就明白了。
依次,再多一个卷积,则为7*7,如果想看到224*224的全图,大家可以算算需要多少卷积层。
假如我们在每一个卷积中间加上3*3的pooling呢?很明显感受野迅速增大,这就是pooling的一大用处。感受野的增加对于模型的能力的提升是必要的,正所谓“一叶障目则不见泰山也”。
(2) 增加平移不变性
我们希望目标的些许位置的移动,能得到相同的结果。因为pooling不断地抽象了区域的特征而不关心位置,所以pooling一定程度上增加了平移不变性。
(3) 使网络更容易优化,pooling是每个featuremap单独做降采样,与基于卷积的降采样相比,不需要参数,更容易优化。