1.池化层

Pooling层输出值的计算:
	Pooling层主要的作用是下采样,通过去掉Feature Map(卷积的结果)中不重要的样本,进一步减少参数数量。
注:下采样——定义:对于一个样值序列间隔几个样值取样一次,这样得到新序列就是原序列的下采样。

Pooling的方法很多,最常用的是Max Pooling。
(1)Max Pooling
Max Pooling实际上就是在n*n的样本中取最大值,作为采样后的样本值。
跳跃遍历某个张量,并从被卷积核覆盖的元素中找出最大的数值作为卷积结果。

最大池化(max-pooling)通常是利用2x2的接受域(高度和宽度均为2的卷积核)完成的,它通常被称为“2x2的最大池化运算”。
使用2x2的接收域的原因之一在于它是在单个通道上能够实施的最小数量的降采样。(如果采用1x1的接受域,则输出将与输入相同)

注:当输入数据的灰度与图像中的重要性相关时,这种池化方法很有用。

灰度——灰度使用黑色调表示物体,即用黑色为基准色,不同的饱和度的黑色来显示图像。 每个灰度对象都具有从 0%(白色)到100%(黑色)的亮度值。

(2)Mean Pooling
除了Max Pooing之外,常用的还有Mean Pooling——取各样本的平均值。
跳跃遍历一个张量,并将被卷积核覆盖的各深度值取平均。
注:当整个卷积核都非常重要时,若需要实现值的缩减,平均池化是非常有用的,例如输入张量宽度和高度都很大,但深度很小的情况。

**

对于深度为D的Feature Map,各层独立做Pooling,因此Pooling后的深度仍然为D。

**

2.池化层的好处

Pooling层主要的作用是下采样,通过去掉Feature Map(卷积的结果)中不重要的样本,进一步减少参数数量。

池化层能够减少过拟合,并通过减小输入的尺寸来提高性能。它们可用于对输入降采样,但会为后续层保留重要的信息。

注:只是用tf.nn.conv2d来减小输入的尺寸也是可以的,但池化层的效率更高。