2

Gated channel transformation for visual recognition

 3 years ago
source link: https://bbs.cvmart.net/articles/3136
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Gated channel transformation for visual recognition

4个月前 ⋅ 266 ⋅ 0 ⋅ 0

本文由百度AI和悉尼科技大学联合提出一种能够与深度卷积神经网络协同工作进行视觉识别的通用转换单元,这种转换单元可以使用可解释的控制变量对通道关系进行建模。并引入通道归一化层以减少参数数量和计算复杂度。

优势:这些变量确定了竞争及合作的神经元行为,通过卷积权重对其进行优化。轻量级的层合并了一个简单的ℓ2归一化,使换单元适用于算符级别,而无需过多增加其他参数。

代码&论文 https://github.com/z-x-yang/GCT.git

背景:卷积神经网络已经在诸如图像识别,检测,分割等领域取得了很多成果。

问题:单个卷积层仅在特征图的每个空间位置的相邻局部上下文上进行操作,这可能会导致局部歧义。

以往的解决方法:VGGNet使用一系列具有非线性激活函数的卷积层和下采样运算符以覆盖很大范围的上下文;引入了残差连接以帮助CNN进一步受益于更深的架构。另外一种方法是使用直接在大型感受野的上下文中运行的模块来增强卷积层。SENet利用全局嵌入的信息来建模通道关系并在通道层面上学习特征图。
缺陷:SE模块使用两个完全连接的(FC)层来处理通道方式的嵌入,这导致两个问题。 首先,要限制在CNN中应用的SE模块的数量。其次,由于FC中参数的复杂性,很难分析不同层通道之间的相互作用。减小FC层的尺寸以进一步节省计算成本。但是,设计的FC层仍然阻碍SE模块在所有层中的广泛部署。

因此,本文为解决以上问题而提出门控通道转换(GCT),以进行有效,准确的上下文信息建模。

基本思想:首先使用归一化组件而不是FC来建模通道关系。其次基于归一化组件设计了GCT的可训练架构,并引入了一些通道参数来控制特征通道门控自适应的行为。

优势:规范化方法可以在神经网络中的不同神经元(或通道)之间产生竞争。 批次归一化及其变体可以平滑梯度,并已广泛用于加速CNN训练过程。与FC中的大量参数相比,本文设计的参数更加轻巧。此外,逐通道选权重参数便于进行通道关系分析,有助于了解GCT在整个CNN网络上的效果。GCT借鉴了SE的思想,采用门控机制来适应通道关系。

图 1 GCT 的竞争与协作

2.门控通道变换

图 2  GCT 流程

目的:进行高效的,基于通道的上下文信息建模。

总览:设计了一个全局上下文嵌入运算符(为了使GCT具备可学习性),它可以嵌入全局上下文并控制归一化之前每个通道的权重,而门控自适应运算符则可以基于归一化的输出逐个通道地调整输入特征。基于对通道关系建模的归一化操作,设计了可解释的GCT体系结构。

具体操作:GCT结构如图2,令$x = [x_1,x_2,...,x_C],x_c =[x^{i,j}c]{H\times W}\in R^{H\times W},,c\in {1,2,...,C}其中其中x_c对应于x的每个通道。令对应于x的每个通道。令x∈R^{C×H×W}$是卷积网络中的激活特征,其中H和W是空间的高度和宽度,C是通道数。 通常,GCT执行以下转换:

α,γ和β是可训练的参数。 嵌入权重α负责调整嵌入输出。 门控权重γ和偏置β控制门的激活。 他们确定每个通道中GCT的行为。

2.1全局上下文嵌入

背景:感受野大的信息对于避免由感受野小的信息引起的局部歧义很有用

目的:汇总每个通道中的全局上下文信息。

方法:设计一个全局上下文嵌入模块,该模块可以在卷积层小的感受野之外利用全局上下文信息。

具体操作:给定嵌入权重α=[α1,...,αC]α=[α1,...,αC],模块定义为:

ϵϵ是一个小常数,以避免在零点求导的问题。

GCT不使用全局平均池化(GAP)来聚合通道上下文。因此在某些极端情况下,GAP可能会失败。 为了解决这个问题,选择ℓp范数。GCT在使用不同的ℓp范数时具有鲁棒性。

此外,使用可训练的参数αcαc来控制每个通道的权重,因为不同的通道应该具有不同的重要性。 特别是如果αcαc接近于0,则通道c将不参与归一化。

2.2通道归一化

目的:利用轻量级的计算资源和稳定的训练性在神经元(或通道)之间建立竞争关系。

具体操作:使用ℓ2归一化来跨通道操作,即通道归一化。 令s=[s1,...,sC]s=[s1,...,sC],通道归一化的公式为:

ϵϵ是一个小常数。 标量√CC用于标准化ˆscˆsc的比例,避免在C大时,scsc的比例过小。

2.3门控适应

目的:适应原始特征,训练过程中促进竞争和合作。

方法:采用门控机制

具体操作:设门控权重γ=[γ1,...,γC]γ=[γ1,...,γC]且门控偏差β=[β1,...,βC]β=[β1,...,βC],设计以下门控功能:

每个原始通道xcxc的比例将通过其相应的门进行调整。

由于通道归一化是无参数的,因此设计可训练的权重和偏差γ和β,用于学习如何控制门通道的激活。GCT可以通过结合归一化方法和门控机制来对不同通道之间的更多类型的关系进行建模。当正向激活一个通道的权重(γcγc)时,GCT会像LRN一样促进该通道与其他通道竞争。 当门控重量负向激活时,GCT会鼓励通道与其他通道协作。

图3 l2范数的 实现

此外,门功能可在门控权重和偏置为零时将原始特征传递到下一层,即

2.4学习

背景:在一个卷积层附近有许多不同的点要使用GCT。 在深度网络中,每个卷积层始终与归一化层和激活层一起工作。因此,在卷积层之前,归一化层之前和归一化层之后,存在三个可能的点来部署GCT层。所有这些方法都是有效的,但最好在卷积层之前使用GCT。因此,本文将GCT应用于深度网络中的所有卷积层。

参数设置:训练过程中使用1初始化α,使用0初始化所有γ和β。GCT将被初始化为实体映射模块,训练过程更加稳定。 为避免在初始训练步骤中GCT门上的不稳定梯度产生不良影响,使用预热方法(以较低的学习率开始训练)。使用ImageNet数据集,每个epoch学习率为0.01。

​ 图 4 训练曲线对比

ImageNet

COCO

图 5 GCT参数可视化

消融实验

本文提出了一种GCT,可通过利用通道之间的关系有效地改善深层CNN的可分辨性。受益于归一化和门控机制相结合的设计,GCT可以促进两种类型的神经元关系:竞争与协作。首先使用归一化组件而不是FC来建模通道关系。其次基于归一化组件精心设计了GCT的可训练架构,并引入了一些通道参数来控制特征通道门控自适应的行为。

本文亮点:归一化方法可以在神经网络中的不同神经元(或通道)之间产生竞争。 批次归一化及其变体可以平滑梯度,并已广泛用于加速CNN训练过程。与FC中的大量参数相比,本文设计的参数更加轻巧。此外,逐通道选权重参数便于进行通道关系分析,并有助于了解GCT在整个CNN网络上的模块效果。GCT借鉴了SE的思想,采用门控机制来适应通道关系。

微信公众号: 极市平台(ID: extrememart )
每天推送最新CV干货

版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK