Squeeze-and-Excitation Networks

SENet

文章目录

  • Squeeze-and-Excitation Networks
  • SENet
    • 论文结构
    • 一、摘要核心
    • 二、Squeeze and Excitation
      • ① Squeeze:Global Information Embedding
      • ② Excitation:Adaptive Recalibration
      • ③ SE Block流程图
      • ④ SE Block嵌入方法
    • 三、SE-ResNet-50
    • 四、实验结果及分析
      • Single-Crop下ImageNet-1K分类
    • 五、Ablation Study 控制变量法进行实验
      • ① 实验一:Reduction Ratio的选择
      • ② 实验二:Squeeze中池化中池化选max还是average
      • ③ 实验三:Excitation中,第二个FC层激活函数用sigmoid?ReLU?Tanh?
      • ④ 实验四:SE Block嵌入网络的哪个阶段最合适
      • ⑤ 实验五:SE Block嵌入Building Block什么位置最合适?
    • 六、Role of SE Block
      • ① 实验六:探究squeeze中的全局池化是否重要(squeeze的作用)
      • ② 实验七:探究excitation输出的权重是否有意义?是否有强调有忽略?(Excitation的作用)
    • 七、论文总结
      • ① 关键点、创新点
      • ② 备用参考文献知识点
    • 八、研究的部分参考文献

论文结构

摘要: CNN空间维度上的特征分析有广泛研究;本文提出SE block调整通道特征;SE block获得的成绩
1. Introduction: 近期CN的研究是为了获得更好的特征表示;本文从通道维度研究更好的特征表示方法;提出SE block;SE block优点
2. Related Work: CNN经典模型罗列;网络搜索相关工作;注意力机制与门控机制相关工作
3. Squeeze-and-Excitation Blocks: SE block的内部操作
4. Model and computational Complexity: 模型复杂度计算
5. Experiments: 多个数据集上实验结果分析探讨
6. Ablation Study: 控制变量法进行一系列实验,验证最优SE block方式
7. Role of SE blocks: SE block的作用探讨
8. Conclusion

一、摘要核心

  1. 背景介绍:卷积神经网络的核心是卷积操作,其通过局部感受野的方式融合空间和通道维度的特征;针对空间维度的特征提取方法已被广泛研究
  2. 本文内容:本文针对通道维度进行研究,探索通道之间的关系,并提出SE block,它可自适应的调整通道维度上的特征
  3. 研究成果:SE block 课堆叠构成SENet,SENet在多个数据集上表现良好;SENet不仅可大幅度提升精度,同时仅需要增加少量的参数
  4. 比赛成绩
  5. 代码开源

二、Squeeze and Excitation

① Squeeze:Global Information Embedding

全局信息降维嵌入

squeeze操作:采用全局池化,将空间维度H和W压缩到1×1,利用1个像素来表示一个通道,实现低维嵌入

② Excitation:Adaptive Recalibration

自适应重构

公示(3)中,第一个全连接层的激活函数是ReLU,第二个全连接层激活函数为Sigmoid

超参数reduction ratio r控制第一个全连接层神经元个数,C/r 个,进而影响SE Block的参数量。减少计算量

关于r的有对比实验,经验值为16

③ SE Block流程图

  1. Squeeze:压缩特征图至向量形式
  2. Excitation: 两个全连接层对特征向量进行映射变换
  3. Scale:将得到的权重向量进行逐通道乘法

C个神经元–>C/r 个神经元(第一个FC层)–>C个神经元(第二个FC层)

④ SE Block嵌入方法

基本原则:
SE Block只“重构”特征图,不改变原来结构

三、SE-ResNet-50


文中公式(5)描述了ResNet中嵌入SE Block所增加的参数量

r:reduction ratio r ,控制第一个全连接层神经元个数,通常为16

S:表示stage,不同stage分开计算,因为不同stage特征图通道数不一样

N_s:第S个stage有多少个building block堆叠。例如ResNet-50,N1到N4等于3,4,6,3

C_s:第S个stage的building block中特征图有多少个通道,C1到C4等于256,512,1024,2048

ResNet-50:代入这个公式大概算出2.5million个参数

四、实验结果及分析

Single-Crop下ImageNet-1K分类

(1)在非残差连接模型上进行实验
超参设置:

实验结果:

  1. SE-Module均带来了性能提升
  2. SE-ResNet-50精度与ResNet-101差不多,但是GFLOPs少一半
  3. SE-Module与网络深度带来的提升是互补的
  4. 非残差结构的模型上,同样有提升

(2)轻量化模型上嵌入 SE Block,同样获得性能提升。
超参设置与以前不同


(3)更多数据集上实验
在CIFAR-10、100,places365和COCO数据集上进行实验,加入SE Module后,性能均获得提升

五、Ablation Study 控制变量法进行实验

① 实验一:Reduction Ratio的选择


r 直接影响到SE Block的参数量和计算量。

r越大、参数越少,入6时,在精度和参数上得到比较好的平滑

② 实验二:Squeeze中池化中池化选max还是average


Avg比max效果更好,因此Squeeze中采用平均池化

③ 实验三:Excitation中,第二个FC层激活函数用sigmoid?ReLU?Tanh?


用Tanh替换Sigmoid时,性能下降,
用ReLU替换Sigmoid时,性能显著下降

在涉及尺度变换时,尝试Sigmoid激活函数

④ 实验四:SE Block嵌入网络的哪个阶段最合适


各个stage单独加入SE Block均能提升精度,
所有stage都加入SE Block,也能提升精度,

所以SE Block是普适性的模块,可嵌入网络任意位置

⑤ 实验五:SE Block嵌入Building Block什么位置最合适?


实验表明,在四个箭头嵌入,精度差别不大

结论:SE Block很鲁棒

六、Role of SE Block

① 实验六:探究squeeze中的全局池化是否重要(squeeze的作用)

对比实验:
移除池化层,并将Excitation的FC层替换成1×1卷积来实现特征变换

1×1卷积缺乏对空间维度信息的处理(融合整合)

结论:缺乏squeeze,精度下降

② 实验七:探究excitation输出的权重是否有意义?是否有强调有忽略?(Excitation的作用)

研究方法:通过观察Excitation最终输出权重向量的分布,方差是否大,方差越大表面网络越有选择性。

实验方法:观察各个stage最后一个block的excitation的权重分布,看看是否有高有低(有无注意力机制)

结论:在前三个stage中均表现出较大的方差,Excitation的输出的确具有特征的选择性


结论:最后一个stage的后两个block的方差较小,因此可以不加SE Block,以节省参数

探究类内的分布:
可以发现在最后一个stage,类内的防擦哈较大,表明网络是有选择性的

七、论文总结

① 关键点、创新点

  1. 提出SE模块生成通道维度的权重向量,用于特征“重构”,实现强调重要特征,忽略不重要特征,增强模型表征能力,提高模型性能。
  2. 设计一系列实验验证SE Block的有效性,特别是Ablation Study方法十分值得学习

② 备用参考文献知识点

  1. 实验结果表明,加入SE Blocks可作为模型增加深度的互补,即同时增加SE Block和网络深度,均可带来性能提升。
    suggesting that the improvements induced by SE blocks may be complementary to those obtained by simply increasing the depth of the base architecture. (论文5.1的network depth)

  2. SE Block嵌入ResNet时,FC层不要加偏置。
    We found empirically that on ResNet architectures, removing the biases of the FC layers in the excitation operation facilitates the modelling of channel dependencies(论文6的第一段)

  3. 多个对比实验的精度没有明显差异时,可以说有很好的鲁棒性
    This experiment suggests that the performance improvements
    produced by SE units are fairly robust to their location, provided that they are applied prior to branch aggregation.(论文6.5的第一段)

八、研究的部分参考文献

(1)STNet 空间变换网络:(参考文献9)
提出spatial transformer,将变形的、位置偏离的图像变换到图像中间,使CNN对空间变换更鲁棒。

(2)Attention ResNet 注意力机制:(参考文献58)
特征图引出的分支 经过一系列的网络层运算,输出权重值,利用权重值与特征图进行计算,去修改原来的特征图,使模型加强关注的区域的特征值。(参考文献58)

提出一种前向Attention机制,利用Attention的网络,在原有网络的基础上新增一个分支来提取Attention,并进行单独的训练,而本文提出的模型能够就在一个前向过程中提取模型的Attention,是模型训练更简单

(3)CBAM:convolution block attention module(参考文献59)
提出两阶段的注意力机制,一个针对通道维度,一个针对空间维度。可以看出注意力机制可分不同维度进行

论文笔记:主干网络——SENet相关推荐

  1. (未完)论文笔记——深层网络的公理化属性(Axiomatic Attribution for Deep Networks)

    论文--Axiomatic Attribution for Deep Networks 1. 介绍 2. 基本公理 2.1 公理:敏感性(a) 2.2 公理:实现不变性 Axiomatic Attri ...

  2. 论文笔记系列:经典主干网络(一)-- VGG

    ✨写在前面:强烈推荐给大家一个优秀的人工智能学习网站,内容包括人工智能基础.机器学习.深度学习神经网络等,详细介绍各部分概念及实战教程,通俗易懂,非常适合人工智能领域初学者及研究者学习.➡️点击跳转到 ...

  3. GaitPart学习笔记(主干网络论文介绍+代码讲解)

    论文 1 Introduction ​ 先前的研究都是将人体的整个步态作为网络输入进行特征提取,而本文最大的亮点在于发现人体步态的不同部分在形状以及行走时的移动模式上具有显著的区别,并且这些信息将为网 ...

  4. SENET论文笔记注意力机制

    SENet论文笔记 注意力机制 Squeeze-and-Excitation Networks 2019 Abstract 传统卷积都是在特征层级上通过提高空间编码质量提高表示能力 SENet注重通道 ...

  5. Deep Learning论文笔记之(七)深度网络高层特征可视化

    Deep Learning论文笔记之(七)深度网络高层特征可视化 zouxy09@qq.com http://blog.csdn.net/zouxy09          自己平时看了一些论文,但老感 ...

  6. [深度学习论文笔记]医学图像分割U型网络大合集

    [深度学习论文笔记]医学图像分割U型网络大合集 2015 U-Net: Convolutional Networks for Biomedical Image Segmentation (MICCAI ...

  7. 【论文笔记】—低照度图像增强—ZeroShot—RUAS网络—2021-CVPR

    论文介绍 ​题目:Retinex-Inspired Unrolling With Cooperative Prior Architecture Search for Low-Light Image E ...

  8. 论文笔记(FCN网络,语义分割):Fully Convolutional Networks for Semantic Segmentation

    FCN论文笔记:Fully Convolutional Networks for Semantic Segmentation 语义分割模型结构时序: FCN SegNet Dilated Convol ...

  9. GaitGLN学习笔记(主干网络+代码复现)

    论文 1 Introduction ​ Gait Lateral Network:步态横向网络 ​ 创新之处: ​ ① Lateral Connection:横向连接.利用深度CNN网络中的固有的特征 ...

最新文章

  1. 怎么样尽可能多的学习
  2. ReentrantLock重入锁
  3. 基于netty的微服务架构
  4. Java的值传递解析
  5. linux 远程赋值,linux 简单远程复制命令scp参数
  6. 测试次数----2018年第九届蓝桥杯C/C++省赛B组 第四题
  7. shelve模块使用说明
  8. 地质图例符号大全_不得不知的搜索引擎技巧大全
  9. ATX电源接口定义及颜色定义 (转载)
  10. 学校计算机室如何连接热点,电脑连热点怎么操作
  11. Anaconda Prompt :python.exe - 无法找到入口,无法定位程序输入点
  12. 666: 神奇的 SQL 之别样的写法 → 行行比较
  13. 2022计算机系统大作业——程序人生-Hello’s P2P
  14. Java并发编程之CyclicBarrier和CountDownLatch
  15. 扫描仪产品国家抽检实施细则及信息技术类产品检测设备
  16. mac下keytool 错误: java.lang.Exception: 密钥库文件不存在
  17. ipc4 - A 转换AV号(avtobv)
  18. Spring Boot 接口数据加解密就该这样设计~
  19. 使用java -jar 修改SpringBoot项目中application.properties的配置项
  20. MAHNOB-HCI-TAGGING DATABASE中BDF文件的Python读取

热门文章

  1. ui设计现状与意义_对于ui设计行业来说,用户界面设计的发展现状是什么?
  2. songtest 歌曲下载 器
  3. DCOS搭建zookeeper集群搭建
  4. 计算机桌面变蓝屏,电脑进入桌面蓝屏解决方法
  5. 自学Java day24 一篇文章弄懂mySQL基础命令 从jvav到架构师
  6. 再探阿里的“数据+业务”双中台架构
  7. scp 传输文件到另一台服务器
  8. 计算机硬盘从桌面消失了,如何解决win10硬盘分区不见了_win10机械硬盘突然消失解决方法...
  9. Docker最最最最基本的相关操作(不全,还会补充)
  10. linux中ess33没有IP地址问题