Pooling layers
整理并翻译自吴恩达深度学习系列视频:卷积神经网络1.9
Pooling layers
Other than convolutional layers, ConvNets often use pooling layers to reduce the size of their representation to speed up computation, as well as to make some of the features it detects a bot more robust.
与卷积层不同,卷积网络通常使用池化层去减小其(图像)表示以加速计算,同时使其检测出的特征更加健壮。
这是一个最大池化的例子,使用2X2的filter在4X4block上做最大池化(即取最大值)。注意我们不仅选取 f = 2 f=2 f=2,也取了stride s = 2 s=2 s=2,因此我们最后得到了一个2X2的block,按颜色对应如上图。
计算output维度变为:
⌊
n
+
2
p
−
f
s
+
1
⌋
\lfloor \frac{n+2p-f}{s}+1\rfloor
⌊sn+2p−f+1⌋
Average Pooling
平均池化很少使用,是在filter框起来的部分里取均值。一般用来坍缩你的图像表示。
Parameters
池化层使用的hyperparameter
f
f
f和
s
s
s,都不需要通过反向传播来学习,你或许是自己手动设置的,或许是通过cross-validation来设置的。它是一个固定的函数(it’s just a fixed function)。