池化层基础
池化层:一种形式的降采样。
池化:是将输入的图像划分为若干个矩形区域,对每个子区域输出最大值。
池化层会不断地减小数据的空间大小,因此参数的数量和计算量也会下降,也在一定程度 上控制了过拟合。面池化层的引入是依照人的视觉系统对视觉输入对象进行降维和抽象。
例如一个4x4的矩形区域压缩成2x2的区域
4x4区域:
1 | 5 | 8 | 3 |
---|---|---|---|
5 | 8 | 1 | 6 |
5 | 3 | 1 | 2 |
1 | 2 | 0 | 3 |
2x2区域:
8 | 8 |
---|---|
5 | 3 |
以坐标说明4X4区域:
X:0-1; Y:0-1,为2X2左下角的值
X:0-1; Y:2-3,为2X2左上角的值
X:2-3; Y:0-1,为2X2右下角的值
X:2-3; Y:2-3,为2X2右上角的值
池化的作用(部分):
- 特征不变性:平移不变性、旋转不变性、尺度不变性
- 特征降维(下采样):相当于在空间范围内维度约减,一方面使模型可以抽取拿回广范围的特征,另一方面减小了下一层的输入大小,进而减少计算量和参数个数
- 防止过拟合
常见池化层:
- 最大池化:选择图像区域的最大值作为该区域池化后的值,能减小卷积层参数误差造成估计均值的偏移
- 平均池化:计算图像区域的平均值作为该区域池化后听值,能减小领域大小受限造成的估计值方差增大的误差
- 全局平均池化
- 全局最大池化
- 重叠池化:相邻池化窗口之间有重叠区域
- 空金字塔池化:将一个pooling变成了多个scale的pooling,结果输出给全连接层,可以说是每一个pool操作为其中的一层。可以将任意尺度的图像的卷积特征转化成相同维度的。
池化层的反向传播:
- 平均池化:反向传播是把某个元素的梯度等分成n份分配给前一层,前向传播则是取平均值
- 最大池化:反向传播是把当前参数传给上一层,其余用0补齐