34. 池化层 / 汇聚层

1. 池化层

34. 池化层 / 汇聚层_第1张图片

如果我们拍摄黑白之间轮廓清晰的图像X,并将整个图像向右移动一个像素,即Z[i, j] = X[i, j + 1],则新图像Z的输出可能大不相同。而在现实中,随着拍摄角度的移动,任何物体几乎不可能发生在同一像素上。即使用三脚架拍摄一个静止的物体,由于快门的移动而引起的相机振动,可能会使所有物体左右移动一个像素(除了高端相机配备了特殊功能来解决这个问题)。

因此,引入汇聚(pooling)层,它具有双重目的:降低卷积层对位置的敏感性,同时降低对空间降采样表示的敏感性。

2. 二维最大池化

池运算是确定性的,我们通常计算汇聚窗口中所有元素的最大值或平均值。这些操作分别称为最大汇聚层(maximum pooling)和平均汇聚层(average pooling)。

34. 池化层 / 汇聚层_第2张图片

回到本节开头提到的对象边缘检测示例,现在我们将使用卷积层的输出作为2 * 2最大汇聚的输入。 设置卷积层输入为X,汇聚层输出为Y。 无论X[i, j]和X[i, j + 1]的值相同与否,或X[i, j + 1]和X[i, j + 2]的值相同与否,汇聚层始终输出Y[i, j] = 1。

也就是说,使用2 * 2最大汇聚层,即使在高度或宽度上移动一个元素,卷积层仍然可以识别到模式。

3. 填充,步幅和多个通道

  • 池化层与卷积层类似,都具有填充和步幅
  • 没有可学习的参数
  • 在每个输入通道应用池化层以获得相应的输出通道
  • 输出通道数 = 输入通道数

4. 平均池化层

34. 池化层 / 汇聚层_第3张图片

5. 总结

  • 池化层返回窗口中最大或平均值
  • 缓解卷积层对位置的敏感性
  • 同样有窗口大小、填充和步幅作为超参数

6. 一些Q&A

Q1:池化层一般是放在卷积层后面吗?池化层能放在卷积层前面吗?
A1:通常语义上来说,池化层一般是放在卷积层后面

Q2:池化时,窗口有重叠和没有重叠影响如何?
A2:没什么影响,区别不大。

ps:池化层能减少运算量,但现在计算力越来越高,就越来越少的池化,例如Alphago就一个池化都没有

你可能感兴趣的:(深度学习,计算机视觉,深度学习,cnn)