SE-Net:Squeeze-and-Excitation Networks(CVPR2018)

news2024/12/23 0:36:33


文章目录

  • Abstract
  • Introduction
    • 表征的重要性
    • 以前的方向
    • 本文提出
  • Related Work
    • Deeper Architecture
    • Algorithmic Architecture Search
    • Attention and gating mechanisms
  • Squeeze-and-Excitation Blocks
    • Squeeze: Global Information Embedding
    • Excitation: Adaptive Recalibration
    • Instantiations
      • SE-Inception Model
      • SE-ResNet Model
    • summarize
  • Model and Computation Complexity
  • Experiments
    • Image Classification
    • Scene Classification
    • Object Detection on COCO
    • ILSVRC 2017 Classification Competition
  • Ablation Study
    • Reduction ratio
    • Squeeze Operator
    • Excitation Operator
    • Different stages
    • Integration strategy
  • Role of SE Blocks
    • Effect of Squeeze
    • Role of Excitation
  • Conclusion

原文链接
源代码

Abstract

卷积神经网络(cnn)的核心构建块是卷积算子,它使网络能够通过在每层的局部接受域中融合空间和通道信息来构建信息特征。之前的广泛研究已经调查了这种关系的空间成分,试图通过提高整个特征层次的空间编码质量来加强CNN的表征能力。
在本文中,我们将重点放在通道关系上,并提出了一种新的架构单元,我们称之为“挤压和激励”(SE)块,该单元通过明确建模通道之间的相互依赖性,自适应地重新校准通道特征响应。我们表明,这些块可以堆叠在一起形成SENet架构,在不同的数据集上非常有效地泛化
我们进一步证明,SE块在略微增加计算成本的情况下,为现有最先进的CNNs带来了显著的性能改进
挤压和激励网络构成了我们2017年ILSVRC分类提交的基础,该分类提交获得了第一名,并将前5名的错误率降低到2.251%,比2016年的获奖作品相对提高了25%

Introduction

表征的重要性

计算机视觉研究的一个中心主题是寻找更强大的表征,只捕获图像中对于给定任务最显著的那些属性,从而提高性能。作为一种广泛应用于视觉任务的模型家族,新的神经网络架构设计的发展现在代表了这一研究的关键前沿。

以前的方向

最近的研究表明,通过将学习机制集成到网络中,可以增强cnn产生的表征,从而帮助捕获特征之间的空间相关性。其中一种方法,由Inception系列架构[5],[6]推广,将多尺度进程合并到网络模块中以实现改进的性能。进一步的研究试图更好地模拟空间依赖性[7],[8],并将空间注意力纳入网络结构[9]。

本文提出

在本文中,我们研究了网络设计的另一个方面——通道之间的关系。我们引入了一个新的架构单元,我们称之为挤压和激励(SE)块,其目标是通过明确地建模其卷积特征通道之间的相互依赖性来提高网络产生的表征的质量。为此,我们提出了一种允许网络执行特征重新校准的机制,通过该机制,网络可以学习使用全局信息来选择性地强调有用的特征并抑制不太有用的特征。

SE构建块的结构如图1所示。(全部跳过直接见summarize)对于任意给定的变换Ftr,将输入X映射到U∈R H×W×C的特征映射,例如卷积,我们可以构造一个相应的SE块来执行特征重新校准特征U首先通过挤压操作传递,该操作通过聚合跨空间维度的特征映射(H ×W)生成通道描述符。这个描述符的功能是产生通道特征响应的全局分布的嵌入,允许来自网络的全局接受域的信息被其所有层使用。聚合之后是激励操作,该操作采用简单的自门机制的形式,将嵌入作为输入并产生每个信道调制权重的集合。这些权重被应用到特征映射U上,以生成SE块的输出,该块可以直接馈送到网络的后续层。

SE块的结构很简单,可以直接在现有的最先进的体系结构中使用,通过用SE对应的组件替换组件,可以有效地增强性能。SE块在计算上也是轻量级的,只会略微增加模型复杂性和计算负担。

为了使这些说法站得住脚,我们开发了几个SENets,并对ImageNet数据集进行了广泛的评估[10]。我们还展示了ImageNet之外的结果,表明我们的方法的好处并不局限于特定的数据集或任务。通过使用SENets,我们在2017年ILSVRC分类比赛中获得了第一名。我们的最佳模型集成在测试集1上实现了2.251%的前5误差。与前一年的优胜者相比,这大约代表了25%的相对改进(相对改进用的真棒)。

Related Work

Deeper Architecture

VGGNets和Inception模型表明,增加网络的深度可以显著提高其能够学习的表征的质量,此后的工作进行了进一步的改进
相比之下,我们表明,为单元提供一种机制,使用全局信息显式地模拟通道之间的动态、非线性依赖关系,可以简化学习过程,并显着增强网络的表征能力

Algorithmic Architecture Search

旨在放弃手工架构设计,而寻求自动学习网络的结构,此前提出了许多架构搜索算法,且强化学习技术取得了有力的结果
我们提出SE块可以用作这些搜索算法的原子构建块,并且在并发工作中被证明是非常有效的[45]。

Attention and gating mechanisms

注意力可以解释为一种将可用计算资源分配向信号中信息量最大的组成部分倾斜的手段(资源只给天才)[46]、[47]、[48]、[49]、[50]、[51]。一些研究对空间注意力和通道注意力的结合使用进行了有趣的研究[58],[59]。Wang等人[58]引入了一种基于沙漏模块[8]的强大的trunk-and-mask注意机制,该机制被插入到深度残差网络的中间阶段之间。相比之下,我们提出的SE块包含一个轻量级的门控机制,该机制侧重于通过以计算高效的方式对通道相关关系进行建模来增强网络的表示能力。

Squeeze-and-Excitation Blocks

SE块是一个计算单元,它可以建立在映射输入X∈R(H‘W’C’)的变换Ftr映射到U∈R(HWC),在下面的符号中,我们取F tr为一个常规算子,并使用V = [V 1, V 2,…,vc]表示学习到的滤波器核集合,其中vc表示第c个滤波器的参数。输出U = [u 1 ,u 2 ,…,u c ]
其中*表示卷积
v s c是一个二维空间核,表示作用于X的相应通道的v c的单个通道。为了简化符号,省略了偏置项。由于输出是通过所有通道的求和产生的,通道依赖关系隐式地嵌入在vc中,但与滤波器捕获的局部空间相关性纠缠在一起由卷积建模的通道关系本质上是隐式的和局部的(最顶层的通道关系除外)。我们期望通过显式建模通道相互依赖性来增强卷积特征的学习,以便网络能够提高其对信息特征的敏感性,这些信息特征可以被后续转换利用。因此,我们希望为其提供对全局信息的访问,并在将其馈送到下一个变换之前,分挤压和激励两步重新校准滤波器响应。图1显示了SE块的结构示意图。

Squeeze: Global Information Embedding

为了解决利用通道依赖性的问题,我们首先考虑输出特征中每个通道的信号。每个学习到的过滤器都与一个局部接受域一起操作,因此转换输出U的每个单元都无法利用该区域之外的上下文信息
为了缓解这个问题,我们建议将全局空间信息压缩到信道描述符中。这是通过使用全局平均池来生成通道统计信息来实现的。形式上,统计量z∈R C通过U的空间维度H ×W收缩生成,使得z的c-th元素计算为:
转换U的输出可以被解释为局部描述符的集合,这些局部描述符的统计量可以表达整个图像。利用这些信息在之前的特征工程工作中很普遍[60],[61],[62]。我们选择最简单的聚合技术,即全局平均池,并注意到这里也可以采用更复杂的策略

Excitation: Adaptive Recalibration

为了利用在挤压操作中聚合的信息,我们在它之后进行第二个操作,目的是完全捕获与通道相关的依赖关系。为了实现这一目标,函数必须满足两个标准:首先,它必须是灵活的(特别是,它必须能够学习通道之间的非线性相互作用),其次,它必须学习非互斥关系,因为我们希望确保允许多个通道被强调(而不是强制一个热激活)。为了满足这些标准,我们选择采用一种简单的s型激活门控机制:

δ表示Relu,W1∈R C/r×C,W2∈R C×C/r

为了限制模型复杂性和帮助一般化,我们通过在非线性周围形成两个完全连接(FC)层的瓶颈来参数化门控机制
一个降维比为r的降维层,一个ReLU,然后是返回到变换输出U的通道维数的增维层。块的最终输出是通过用激活s重新缩放U来获得的

F scale (u c,s c)是指标量s c与特征映射u c∈R H×W之间的逐通道乘法

激励算子将特定于输入的描述符z映射到一组信道权重。在这方面,SE块本质上引入了以输入为条件的动态,可以将其视为通道上的自注意函数,通道的关系不局限于卷积滤波器响应的局部接受野

Instantiations

SE块可以在每个卷积块之后插入分支聚合之前,此外,SE块的灵活性意味着它可以直接应用于标准卷积之外的转换。
每个SE块在挤压阶段使用一个全局平均池化操作,在激励阶段使用两个小FC层,然后是一个廉价的通道缩放操作

SE-Inception Model

SE-ResNet Model


括号内列出了剩余构建块的形状和具有特定参数设置的操作,外部显示了一个阶段中堆叠块的数量。fc后面的内括号表示SE模块中两个完全连接层的输出维度。

summarize

SE块首先通过Ftr将X映射到U,然后通过挤压将全局空间信息压缩到通道描述符中得到统计量Zc,接着通过激励算子完全捕获与通道相关的依赖关系,得到s,最后经过Fscale算子得到最终的输出X~

Model and Computation Complexity

每个SE块在挤压阶段使用一个全局平均池化操作,在激励阶段使用两个小FC层,然后是一个廉价的通道缩放操作。总的来说,当将缩减比r设置为16时,SE-ResNet-50需要~ 3.87 GFLOPs,相当于比原始ResNet-50相对增加0.26%。为了换取这一轻微的额外计算负担,SE-ResNet-50的精度超过了ResNet-50,实际上,接近更深的ResNet-101网络,需要~ 7.58 GFLOPs(表2)

SENet列指的是在其中添加了SE块的相应体系结构。括号中的数字表示相对于重新实现的基线的性能改进。†表示该模型已经在验证集的非黑名单子集上进行了评估,这可能会略微改善结果。VGG-16和SE-VGG-16采用批归一化训练

相对模型性能的贡献 ,SE块产生的少量额外计算成本是可接受的

接下来我们考虑由提议的SE块引入的附加参数。这些附加参数仅由门控机制的两个FC层产生,因此只占总网络容量的一小部分。具体而言,这些FC层的权重参数引入的总数为:

其中r表示缩放比,S表示阶段数,Cs表示输出通道的维度,Ns表示阶段S重复块的数量(当在FC层中使用偏置项时,引入的参数和计算成本通常可以忽略不计)。

Experiments

Image Classification

在ImageNet上训练基线架构和相应的SE Model。SENets表现出改进的优化特性,并在整个训练过程中产生持续的性能收益

在SE块在增加少量计算成本的情况下,大幅提高了准确性


表4和表5说明了SE块在其他数据集上仍旧表现优异

Scene Classification

SE块也可以提高场景分类的精度

Object Detection on COCO

SE块在COCO数据集上表现良好,证明了SE块的通用性

ILSVRC 2017 Classification Competition

在ILSVRC 2017比赛中取得了最佳结果

Ablation Study

Reduction ratio

性能在一定的减排量范围内是稳健的,复杂度的增加不会单调地提高性能,而较小的比例会显著增加模型的参数大小,在上表中r=16是速度和精度的最佳平衡

Squeeze Operator

显然平均池化的性能略好

Excitation Operator

通过比较发现sigmoid函数取得了最佳结果

Different stages

SE块在不同阶段产生的增益是互补的,它们可以有效地组合在一起,进一步增强网络性能

Integration strategy


该实验表面,SE块应放在分支聚合之前

将SE块之间放在3×3卷积层之后,使用更少的参数实现了相当的分类精度

Role of SE Blocks

Effect of Squeeze

上表中可以得到使用全局信息对模型性能有显著影响,强调了挤压操作的重要性

Role of Excitation

除了SE_5_2的异常行为外,随着深度的增加,激活变得越来越具有类特异性。较早的层特征通常更普遍(例如,在分类任务的背景下,类别不可知论),而较晚的层特征表现出更高水平的特异性。上图SE5-25-3出现了趋于饱和的状态,该结果表明,通过在最后阶段删除SE块,可以显著减少额外的参数计数,而性能损失很小。

显示了两个样本类(金鱼和飞机)在同一类中图像实例的激活的均值和标准差。我们观察到与类间可视化一致的趋势,表明SE块的动态行为在类和类内的实例中都是不同的。特别是在网络的后一层,在单个类中存在相当大的表示多样性,网络学习利用特征重新校准来提高其判别性能
总之,SE块生成特定于实例的响应,这些响应在体系结构的不同层支持模型日益增长的特定于类的需求

Conclusion

一系列的实验完全支持起了模型的有效性
在本文中,我们提出了SE块,这是一个架构单元,旨在通过使网络能够执行动态信道特征重新校准来提高网络的表示能力。广泛的实验表明了SENets的有效性,它在多个数据集和任务中实现了最先进的性能。
此外,SE块还揭示了以前的体系结构无法充分地对通道相关的特征依赖进行建模的问题。我们希望这一见解可以证明对其他需要强判别特征的任务有用。
最后,由SE块产生的特征重要性值可以用于其他任务,例如用于模型压缩的网络修剪

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1326754.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Temporary failure in name resolution

报错: 1.打开resolv.conf文件 sudo vim /etc/resolv.conf 2. 确保resolv.conf文件至少包含一个名称服务器。列出名称服务器的行应如下所示: 3. 保存文件并退出。 4. 接下来,重新启动DNS 解析器服务。运行以下命令: sudo syste…

androidStudio版本下载链接记录

androidStudio 最新官网版本: 下载 Android Studio 和应用工具 - Android 开发者 | Android DevelopersAndroid Studio 提供了一些应用构建器以及一个已针对 Android 应用进行优化的集成式开发环境 (IDE)。立即下载 Android Studio。https://developer.android.g…

创建型模式 | 原型模式

一、原型模式 1、原理 原型模式,用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。原型模式其实就是从一个对象再创建另外一个可定制的对象,而且不需要知道任何创建的细节。原型像是一个模板,可以基于它复制好多…

二叉树题目:输出二叉树

文章目录 题目标题和出处难度题目描述要求示例数据范围 前言解法一思路和算法代码复杂度分析 解法二思路和算法代码复杂度分析 题目 标题和出处 标题:输出二叉树 出处:655. 输出二叉树 难度 6 级 题目描述 要求 给定二叉树的根结点 root \textt…

探索未来交通!空客、宝马开启新一轮“量子计算挑战赛”

12月6日,空中客车公司和宝马集团共同发起了一项名为 “量子交通探索”的全球量子计算挑战赛,以应对航空和汽车领域最紧迫的挑战——这些挑战对于传统计算机而言仍然是难以克服的。 这项挑战是首创性的,它将两个全球行业领导者聚集在一起&…

堆的时间复杂度

1、堆排序的时间复杂度为O(nlogn) 2、对N个元素建堆的时间复杂度为O(N),删除堆顶元素的时间复杂度为O(logN),因此删除堆所有元素的时间复杂度为O(NlogN)。 3、不管数组初始时是有序的还是逆序的,堆排序都会先建堆,变成了堆序的性…

《每天一分钟学习C语言·五》

1、 给一个字符数组输入字符串 char arr[10]; gets[arr]; //gets函数接收回车符,如果直接按回车,gets函数会把回车符转变成空字符作为结束,即arr[0]’\0’;2、 文件结尾标志ctrlz表示返回NULL 自己定义的头文件里面一般有宏定义和声明&#…

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Button按钮组件

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Button按钮组件 一、操作环境 操作系统: Windows 10 专业版 IDE:DevEco Studio 3.1 SDK:HarmonyOS 3.1 二、Button按钮组件 Button 组件也是基础组件之一,和其它基础组件不…

QT打包exe文件,在其它电脑里双击exe就可以直接运行

想要不依赖QT环境,在其它电脑里直接双击exe文件就可以运行当前程序。具体打包过程如下: 使用QT编译出release版本的exe release版本运行无误后,需要找到当前构建生成的exe所在文件夹 可以看到具体目录在这里 我在该目录下的bin文件夹里找到…

ICC2:Less than minimum edge length和Concave convex edge enclosure

我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧? 拾陆楼知识星球入口 首先,要介绍一下这两种drc Less than minimum edge length对应的tf rule如下: 而Concave convex edge enclosure对应图示和tf 规则如下,可

linux中vim命令修改jar包中的文件内容

文章目录 概述vim命令修改配置文件 概述 首先问问为什么要直接修改jar包中的文件,而不是重新打包,在非必要的情况下,不要直接修改jar包,这样容易出事故; 当然也有一些场景不得不修改jar包,比如&#xff1a…

TrustZone之示例用例——空中固件更新

这第二个示例涉及更新引导固件。我们系统的要求如下: • 新的固件镜像通过网络提供。 • 只能安装经过身份验证的镜像。 • 固件版本不能回滚。 为了实现这些目标,OEM 使用其私钥对图像进行签名。下载设备配备了公钥,它可以用来验证签名。…

3D模型人物换装系统(三 优化合批处理,提取合批配置可,封装)

3D模型人物换装系统三(优化合批处理,提取合批配置可,封装) 介绍法线贴图问题规划以及封装缺陷修改整理 整合总结 介绍 本文使用2018.4.4和2020.3.26进行的测试 这里先说一下我上一篇没有解决的问题,法线贴图不正确&am…

24岁,拿到18K,我真的很卷?

前言 前段时间去面试了一个公司,成功拿到了offer,薪资也从12k涨到了18k,对于工作还没两年的我来说,还是比较满意的,毕竟一些工作3、4年的可能还没我高。 我可能就是大家说的卷王,感觉自己年轻&#xff0c…

MySQL,使用Union组合查询

1、基本使用 Union可将多条select语句组合成一个结果集&#xff0c;常见的使用场景有2种&#xff1a; 在单个查询中&#xff0c;从不同的表返回类似结构的数据&#xff1b;对单个表执行多个查询&#xff0c;按单个查询返回数据。 例&#xff1a;检索出所有价格<50的产品&…

java多线程创建的三种方式

第一种 第二种 第三种&#xff08;想获得线程的执行结果&#xff0c;建议使用这种&#xff09;

2023 英特尔On技术创新大会直播 |探索视觉AI的无限可能

2023 英特尔On技术创新大会直播 | 探索视觉AI的无限可能 前言一未来的 AI&#xff1a;释放视觉 AI 真正潜力二AI技术突破、视觉Al挑战及前沿研究创新三全尺度视觉学习全尺度视觉学习示例1.GridConv 实现三维人体姿态估计更高准确率2.KW 预训练及迁移模型性能3.无数据增强稠密对…

8.基于Cortex-M4内核的STM32F40x中断分析

通用中断知识铺垫1&#xff1a; 完整的CM4有256个可编程中断&#xff08;16个内核中断和240个外部中断&#xff09;&#xff0c;而stm32f40x共有92个中断&#xff08;10内82可编程&#xff09;&#xff0c;意思是说STM32F40X这个单片机没有完全释放CM4内核的资源。 CM4内核的中…

赴日IT培训课程 程序员新思路!

先说好&#xff0c;跟国内相比&#xff0c;日本IT并不发达。日本IT是依托着日本传统强势的制造业和政府机关发展的&#xff0c;所以开发的大多数软件也是面向这些的&#xff0c;由于日本人的严谨态度&#xff0c;各种文档的编写层出不穷&#xff0c;不像国内程序员每天没日没夜…

全方位的账号安全管理

如今&#xff0c;特权账户范围广、数量大且极不稳定是当前各行业面临黑客等攻击行为的最大安全隐患。而且&#xff0c;由于特权账户的权限极大&#xff0c;一旦其被攻击者破解&#xff0c;就能完全掌控组织的IT基础设施&#xff0c;从而引发防护控制失效、机密数据泄露、商业诈…