[注意力机制]--CV领域中的注意力机制

科研方向需要自己调研一些合适的注意力机制,所以自己总结如下:

一. channel attention:SEnet:Squeeze-and-Excitation Networks

在这里插入图片描述
首先是 Squeeze 操作,顺着空间维度来进行特征压缩,一般用GAP操作; 其次是 Excitation 操作,一般为卷积操作;最后是一个 Re-weight的操作,用来对输入数据通道进行权重赋值
在这里插入图片描述
实现代码:
在这里插入图片描述
二.GSOP-Net (Global Second-order Pooling Convolutional Networks)
在这里插入图片描述
给定一个输入,经过卷积降维,GSop块先进行协方差矩阵计算,然后进行线性卷积和非线性激活两个运算得到输出的权重再对输入进行通道赋值。属于一个二阶统计的通道注意力机制,与SEnet中的一阶注意力机制最大的区别为这里统计了协方差矩阵,再进行pooling。

实现代码:
在这里插入图片描述
三.CBAM (convolutional block attention module)
在这里插入图片描述
结合了特征通道和特征空间两个维度的注意力机制,通过学习自动获取每个特征通道的重要程度和每个特征空间的重要程度。
在这里插入图片描述
将输入的featuremap,分别经过基于width和height的global max pooling 和global average pooling,然后分别经过MLP。将MLP输出的特征进行基于elementwise的加和操作,再经过sigmoid激活操作,生成最终的channel attention featuremap。将该channel attention featuremap和input featuremap做elementwise乘法操作,生成Spatial attention模块需要的输入特征。
在这里插入图片描述
将Channel attention模块输出的特征图作为本模块的输入特征图。首先做一个基于channel的global max pooling 和global average pooling,然后将这2个结果基于channel 做concat操作。然后经过一个卷积操作,降维为1个channel。再经过sigmoid生成spatial attention feature。最后将该feature和该模块的输入feature做乘法,得到最终生成的特征。
实现代码:
在这里插入图片描述
四.Non-local Neural Networks
在这里插入图片描述
输入为T * H * W * 1024,先经过两个1 * 1卷积降维得到两个T * H * W * 512的特征图,经过reshape操作再进行点乘得到THW x THW的attention maps,经过softmax得到一个THW的权重,与原x经过1 * 1 * 1得到的value值点乘得到THW * 512,此时的特征值为加了自注意力机制的特征。作用是可以捕获全局的特征权重,长距离的特征联系。缺点是特征图尺寸过大时,计算量过大,O(HW * HW)。

实现代码:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值