Squeeze-and-Excitation Networks

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012839256/article/details/89028865

SENet:挤压和激励网络(解读)(源论文


文章提出了一个新的单元——SE block ,通过明确地建模通道之间的相互依赖性来自适应地重新校准通道方面的特征响应。展示了这些块可以堆叠在一起形成SENet体系结构,可以跨不同数据集非常有效地进行泛化。


Squeeze: Global Information Embedding(全局信息嵌入)

为了解决利用通道依赖性的问题,首先考虑输出功能中每个通道的信号。 每个学习的过滤器利用本地接收字段操作,因此变换输出U的每个单元不能利用该区域之外的上下文信息。

为了缓解这个问题,将全局空间信息压缩到一个通道描述符中。 通过使用全局平均池化来生成通道统计数据来实现的。


Excitation: Adaptive Recalibration(自适应校正)

为了利用挤压操作中聚合的信息,我们遵循第二个操作,旨在完全捕获通道方面的依赖关系。 为了实现这一目标,该功能必须满足两个标准:

  • 它必须是灵活的(特别是,它必须能够学习通道之间的非线性相互作用),
  • 它必须学习一种非互斥关系,因为希望确保允许强调多个通道(而不是强制执行一次热激活)。

为了满足这些标准,我们选择采用带有S形激活的简单门控机制。

为了限制模型的复杂性和辅助概括性,通过在 δ 非线性函数(ReLU)周围形成两个完全连接(FC)层来参数化门控机制。在6.1节中,具有参数W1的维数减少层,一个ReLU,然后是一个带有参数W2的维数增加层。通过使用sigmoid激活,然后重新调整转换输出U来获得块的最终输出。

下图是在网络中嵌入SE block的例子。


SENet

将SE block嵌入到ResNet-50和ResNeXt-50中,形成SE-ResNet-50 and SE-ResNeXt-50,网络结构如下表:

表中fc后面的内括号表示SE模块中两个完全连接的层的输出尺寸。


实验

(1)ImageNet验证集和复杂性比较中的单裁剪错误率(%)。原始栏目是指原始论文中报告的结果。为了实现公平比较,重新训练基本模型并在重新实现列中报告结果。SENet列指的是添加了SE块的相应体系结构。括号中的数字表示重新实施的基本模型的性能改进。 †表示模型已经在验证集的非黑名单子集上进行了评估,这可能会略微改善结果。VGG-16和SE-VGG-16通过批量标准化进行训练。


(2)该实验表明,SE单元产生的性能改进对于它们的位置是相当稳健的,只要它们在分支聚合之前应用。


源码

源码:https://github.com/hujie-frank/SENet

猜你喜欢

转载自blog.csdn.net/u012839256/article/details/89028865