SE-attention

转自:https://blog.csdn.net/gaotihong/article/details/82982766

SE-attention

一、SE-NET

在这里插入图片描述
图1.SE-block
图1.中的Ftr是传统的卷积结构,X和U是Ftr的输入(C’xH’xW’)和输出(CxHxW),这些都是以往结构中已存在的。SENet增加的部分是U后的结构:对U先做一个Global Average Pooling(图中的Fsq(.),作者称为Squeeze过程),输出的1x1xC数据再经过两级全连接(图中的Fex(.),作者称为Excitation过程),最后用sigmoid(论文中的self-gating mechanism)限制到[0,1]的范围,把这个值作为scale乘到U的C个通道上, 作为下一级的输入数据。这种结构的原理是想通过控制scale的大小,把重要的特征增强,不重要的特征减弱,从而让提取的特征指向性更强。下面来看下SENet的一些细节:
(1)squeeze :GAP有很多算法,作者用了最简单的求平均的方法(公式1),将空间上所有点的信息都平均成了一个值。
在这里插入图片描述
(2)Excitation部分是用2个全连接来实现 ,第一个全连接把C个通道压缩成了C/r个通道来降低计算量(后面跟了RELU),第二个全连接再恢复回C个通道(后面跟了Sigmoid),r是指压缩的比例。作者尝试了r在各种取值下的性能 ,最后得出结论r=16时整体性能和计算量最平衡。

全连接层是为了利用通道间的相关性来训练出真正的scale。一次mini-batch个样本的squeeze输出并不代表通道真实要调整的scale值,真实的scale要基于全部数据集来训练得出,而不是基于单个batch,所以后面要加个全连接层来进行训练。

二、三种错误的SE结构

在这里插入图片描述
图2最上方的结构,squeeze的输出直接scale到输入上,没有了全连接层,某个通道的调整值完全基于单个通道GAP的结果,事实上只有GAP的分支是完全没有反向计算、没有训练的过程的,就无法基于全部数据集来训练得出通道增强、减弱的规律。

图2中间是经典的卷积结构,有人会说卷积训练出的权值就含有了scale的成分在里面,也利用了通道间的相关性,为啥还要多个SE Block?那是因为这种卷积有空间的成分在里面,为了排除空间上的干扰就得先用GAP压缩成一个点后再作卷积,压缩后因为没有了Height、Width的成分,这种卷积就是全连接了。

图2最下面的结构,SE模块和传统的卷积间采用并联而不是串联的方式,这时SE利用的是Ftr输入X的相关性来计算scale,X和U的相关性是不同的,把根据X的相关性计算出的scale应用到U上明显不合适。

三、SE-Inception和SE-ResNet结构

在这里插入图片描述
图3:SE-Inception和SE-ResNet结构

图3是两个SENet实际应用的例子,左侧是SE-Inception的结构,即Inception模块和SENet组和在一起;右侧是SE-ResNet,ResNet和SENet的组合,这种结构scale放到了直连相加之前。

四、总结

SENet把重要通道的特征强化,非重要通道的特征弱化,得到了很好的效果,这是一种全新的思路,在这个方向上将来可能会有更多的成果

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MATLAB是一种常用的编程语言和开发环境,用于进行各种科学计算和数据分析。CNN-LSTM-SE Attention是一种结合了卷积神经网络(Convolutional Neural Network,CNN)、长短期记忆网络(Long Short-Term Memory Network,LSTM)和自注意力机制(Self-Attention)的深度学习模型。 CNN是一种常用于图像处理和计算机视觉任务的神经网络模型。它可以自动提取图像中的特征,从而实现图像分类、目标检测等功能。 LSTM是一类特殊的循环神经网络(Recurrent Neural Network,RNN),能够有效地处理序列数据。LSTM具有记忆单元和门控单元,使得它能够捕捉并利用序列数据中的长期依赖关系,适用于自然语言处理、语音识别等任务。 自注意力机制是深度学习中的一种重要技术,能够自动地给序列中的每个元素分配权重。这样,模型可以有选择地关注重要的元素,忽略无关的元素,从而提升模型的性能。 CNN-LSTM-SE Attention结合了CNN、LSTM和自注意力机制的优势,能够在处理图像、视频、文本等序列数据时取得良好的效果。模型首先通过CNN提取输入序列的空间特征,然后通过LSTM捕捉序列的时间动态特征,最后利用自注意力机制进一步提取关键信息。 MATLAB提供了强大的深度学习工具箱,能够方便地实现和训练CNN-LSTM-SE Attention模型。利用MATLAB的深度学习工具箱,可以加载预训练的CNN和LSTM模型,设计自定义的自注意力机制,并进行端到端的模型训练和评估。 总之,MATLAB的CNN-LSTM-SE Attention是一种用于序列数据处理的深度学习模型,能够从输入序列中提取重要信息,具有广泛的应用前景。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值