Python旧版课程库
Python第11期 - 人工智能查看课程总览

333 池化层

主要内容

1、池化的概念
2、池化的操作

池化的概念

池化层(Pooling)的操作与卷积层的操作类似,但是比卷积操作简单很多。简单概括就是只取对应位置的最大值,或者平均值。取最大值的操作称为最大池化(max pooling),取平均值的操作称为平均池化(average pooling)。池化层的提出主要是为了缓解卷积层对位置的过度敏感性。

池化的操作

池化的操作就是一个采样的过程,所谓的采样,就是有选择性的保留某些数值,比如,最大池化,就是只取最大值,具体操作如下:

同理,平均池化就很好理解了,对应位置计算的是池化范围里所有数值的平均值,具体操作如下:

池化层主要有以下三点作用:

1、增加特征平移不变性,以提高网络对微小位移的容忍能力。

2、减小特征图大小,对空间局部区域进行下采样,以减少下一层需要的参数量和计算量,并降低过拟合的风险

3、最大池化可以使得结果为非线性,所以目前最常用的池化为最大池化。

池化层也需要填充。它的填充和步长机制与卷积层一样。

注意:

在处理多通道输入数据时,池化层对每个输入通道分别池化,所以池化层的输出通道数量和输入通道数量是相等的。不像卷积层那样将各通道的输入按通道进行相加。

比如:输入通道数为3,那么池化层的通道数也等于3。