RSKT-2014
International conference on rough sets and knowledge technology
文章目录
1 Background and Motivation
池化层的作用(一文看尽深度学习中的9种池化方法!)
- 增大网络感受野
- 抑制噪声,降低信息冗余
- 降低模型计算量,降低网络优化难度,防止网络过拟合
- 使模型对输入图像中的特征位置变化更加鲁棒
作者针对 max 和 ave pooling 的缺点,
提出了 mix pooling——randomly employs the local max pooling and average pooling methods when training CNNs
2 Review of Convolutional Neural Networks
- Convolutional Layer,包括卷积操作和 activation function
- Non-linear Transformation Layer,也即 normalization 层,现在比较流行的是 BN 等,以前的是 LCN(local contrast normalization) 和 AlexNet 的 LRN(the local response normalization) 等,PS:论文中 LCN 的公式感觉有问题,LRN 细节也原版论文也有差距,形式基本一致
- Feature Pooling Layer
3 Advantages / Contributions
借鉴 dropout, 混合max 和 ave 池化,提出 mixed pooling
4 Method
1)mixed pooling 公式
λ \lambda λ is a random value being either 0 or 1
2)mixed pooling 反向传播
先看看 max 和 ave pooling 的反向传播
max pooling
(图片来源于网络,侵删!!!)
ave pooling
(图片来源于网络,侵删!!!)
mixed pooling
得记录下 λ \lambda λ 的取值,才能正确反向传播
the pooling history about the random value λ \lambda λ in Eq. must be recorded during forward propagation.
3)Pooling at Test Time
统计训练时某次 pooling 采用 max 和 ave 的频次 F m a x k F_{max}^{k} Fmaxk 和 F a v e k F_{ave}^{k} Favek,谁的频次高测试的时候该处的 pooling 就用谁,开始玄学了是吧,哈哈哈哈
5 Experiments
5.1 Datasets
- CIFAR-10
- CIFAR-100
- SVHN
5.2 Experimental Results
1)CIFAR-10
train error 高,acc 高
作者解释 This indicates that the proposed mixed pooling outperforms max pooling and average pooling to address the over-fitting problem
可视化结果
可以看出 mixed pooling 包含更多的信息
2)CIFAR-100
3)SVHN
4)Time Performance
6 Conclusion(own) / Future work
6.1 LRN
k
,
n
,
α
,
β
k, n, \alpha, \beta
k,n,α,β 都是超参数,
a
,
b
a,b
a,b 输入输出特征图,
x
,
y
x,y
x,y 空间位置,
i
i
i 通道位置
以下内容来自 深度学习的局部响应归一化LRN(Local Response Normalization)理解
import tensorflow as tf
import numpy as np
x = np.array([i for i in range(1,33)]).reshape([2,2,2,4])
y = tf.nn.lrn(input=x,depth_radius=2,bias=0,alpha=1,beta=1)
with tf.Session() as sess:
print(x)
print('#############')
print(y.eval())
6.2 LCN
《What is the best multi-stage architecture for object recognition?》
6.3 各种池化方法
池化层的作用:
- 增大网络感受野
- 抑制噪声,降低信息冗余
- 降低模型计算量,降低网络优化难度,防止网络过拟合
- 使模型对输入图像中的特征位置变化更加鲁棒
1)max pooling
k 是特征图数量
常常丢失了一些特征图中的细节信息,所以最大池化更多保留些图像的纹理信息。
最大池化作用:保留主要特征,突出前景,提取特征的纹理信息。
一般而言,前景的亮度会高于背景,因此,正如前面提到最大池化具有提取主要特征、突出前景的作用。但在个别场合,前景暗于背景时,最大池化就不具备突出前景的作用了。
因此,当特征中只有部分信息比较有用时,使用最大池化。如网络前面的层,图像存在噪声和很多无用的背景信息,常使用最大池化。
2)Average Pooling
更多保留些图像的背景信息
保留背景信息,突出背景。
因此当特征中所有信息都比较有用时,使用平均池化。如网络最后几层,最常见的是进入分类部分的全连接层前,常常都使用平均池化。这是因为最后几层都包含了比较丰富的语义信息,使用最大池化会丢失很多重要信息。
梯度回传
3)Global Average Pooling
提取全局上下文信息,全局信息作为指导进一步增强网络性能。
4)Mix Pooling
受Dropout(将一半激活函数随机设置为0)的启发
λ \lambda λ 是0或1的随机值
5)Stochastic Pooling
随机池化只需对特征图中的元素按照其概率值大小随机选择,即元素值大的被选中的概率也大,而不像max-pooling那样,永远只取那个最大值元素,这使得随机池化具有更强的泛化能力。
6)Power Average Pooling(幂平均池化)
7)Detail-Preserving Pooling(DPP池化)
DPP池化允许缩减规模以专注于重要的结构细节,可学习的参数控制着细节的保存量,此外,由于细节保存和规范化相互补充,DPP可以与随机合并方法结合使用,以进一步提高准确率。
8)Local Importance Pooling(局部重要性池化)
Local Importance Pooling可以学习自适应和可判别性的特征图以汇总下采样特征,同时丢弃无信息特征。这种池化机制能极大保留物体大部分细节,对于一些细节信息异常丰富的任务至关重要。
9)Soft Pooling(软池化)
Refining activation downsampling with SoftPool
ICCV-2021