【Mixed Pooling】《Mixed Pooling for Convolutional Neural Networks》

在这里插入图片描述
在这里插入图片描述
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 各种池化方法

一文看尽深度学习中的9种池化方法!

池化层的作用:

  • 增大网络感受野
  • 抑制噪声,降低信息冗余
  • 降低模型计算量,降低网络优化难度,防止网络过拟合
  • 使模型对输入图像中的特征位置变化更加鲁棒

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

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 卷积神经网络 (Convolutional Neural Network, CNN) 是一种深度学习网络架构, 它通过在网络中使用卷积层来提取图像的特征, 常用于图像分类, 对象检测, 图像生成和自然语言处理等应用中. 卷积层通过使用不同大小的滤波器 (Filter) 在图像上做卷积运算, 从而能够提取出图像中不同维度的特征. 卷积神经网络通常由多个卷积层和池化层 (Pooling Layer) 组成, 并在最后几层使用全连接层 (Fully Connected Layer) 来进行分类或回归. ### 回答2: 卷积神经网络(Convolutional Neural Network,简称CNN)是一类专门用于图像处理和模式识别的深度学习模型。它模拟人脑视觉处理方式,通过层层的卷积操作和池化操作来提取图像的特征。 CNN的主要特点是具有共享权重和局部感知野。共享权重指的是网络中权重参数在卷积过程中是共享的,这使得CNN对于图像的位置变化具备一定的鲁棒性。局部感知野指的是网络仅对局部区域进行感知和处理,而不是整张图像,以此降低网络的复杂度。 CNN由多个卷积层、池化层和全连接层组成。卷积层通过卷积操作将输入图像与一系列卷积核(权重矩阵)进行卷积操作,得到不同的特征图。池化层则通过对特征图进行下采样,减少特征图的维度,同时保留重要的特征。全连接层则将池化后的特征图与分类器相连,完成最终的分类任务。 CNN训练过程中通常使用反向传播算法和梯度下降方法来更新网络参数。在大规模神经网络训练中,还可以使用随机梯度下降法或者自适应学习率的方法以提高训练速度和收敛性。 CNN在计算机视觉领域取得了许多重要的突破,例如图像分类、物体检测、人脸识别等任务上的优良表现。它的成功主要归功于其对于图像特征的自动学习能力以及对于局部结构和空间关系的有效建模能力。通过深度学习的训练和迁移学习,CNN在不同领域中都有着广泛的应用和研究价值。 ### 回答3: 卷积神经网络(Convolutional Neural Network,简称CNN)是一种深度学习模型,以其在图像分类、目标检测和语义分割等任务上的出色表现而备受瞩目。CNN的核心思想是通过多个卷积层、池化层和全连接层构建网络,以学习从原始输入数据中提取有用特征,并输出对输入的分类或回归结果。 CNN的主要特点有以下几个方面。首先,它采用卷积层与池化层的交替组合,使网络具备对输入数据的位置信息具有不变性。卷积层通过滑动不同大小的卷积核在输入数据上提取特征,而池化层则通过降低特征图的尺寸以减少计算量,并保留关键特征。其次,CNN通过权值共享使得网络在处理不同位置的输入时具有参数数量共享,从而减少了模型的复杂性,提高了计算效率。此外,通过使用非线性激活函数(例如ReLU)和批量归一化等技术,CNN可以克服非线性问题,提高网络的非线性拟合能力。最后,CNN具有自学习的能力,通过反向传播算法可以有效地调整网络参数,使得模型能够从数据中学习到更具有判别性的特征表示。 CNN在计算机视觉领域的广泛应用表明了其强大的特征提取和模式识别能力。通过利用卷积层的滤波器,CNN可以学习到不同大小的特征,从而在图像分类和目标检测等任务中取得出色的性能。此外,CNN还可以用于语义分割,即将图像中的每个像素分类到不同的语义类别中,从而实现更细粒度的图像分析。由于CNN在特征学习和模式识别方面的卓越能力,它已成为许多计算机视觉任务的首选模型,并在自然语言处理和推荐系统等领域也有应用潜力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值