定义
池化(Pooling)是卷积神经网络中的一种非线性形式的降采样。
池化在卷积神经网络中,降低了每个特征图的维度,但是依旧保留了最重要的信息。
池化可以用多种方式进行降采样,例如平均值池化、最大池化(Max Pooling)、总和池化等。顾名思义,如下图所示,最大池化就是在原始图,即原始卷积层输出后的矩阵分块为若干个矩形分块,对每个分块取其最大值作为降采样后的数据;同理,平均值池化就是对每个分块取其平均值作为降采样后的数据。根据现卷积神经网络的研究,最大池化目前的效果更好,平均池化已经不太常用[1]。
图 1 最大池化示意图
当然,在池化的分块操作中各个分块之间亦可重叠,这就是重叠池化(Overlapping Pooling)[2];另外,由于池化必然会导致信息的丢失,为了防止信息丢失,又提出了将一个池化变成了多个尺度池化的空金字塔池化(Spatial Pyramid Pooling)[3]。
池化的优势在于,一个特征的精确位置远不如其和其他特征的相对位置重要,因此进行池化可以减少参数量,从而减少计算量;同时由于参数的减少,池化也可以一定程度上防止过拟合。但是,由于池化层过快地减少了数据的大小,目前的趋势是使用较小的池化滤镜,甚至不再使用池化层[4] 。
参考文献
[1] https://ujjwalkarn.me/2016/08/11/intuitive-explanation-convnets/
[2] Krizhevsky, I. Sutskever, andG. Hinton, “Imagenet classification with deep convolutional neural networks,”in NIPS,2012
[3] Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Su,Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition,LSVRC-2014 contest
[4] Graham, Benjamin. Fractional Max-Pooling. 2014-12-18. arXiv:1412.6071 [cs.CV].