spatial attention

channel attention是对通道加权,spatial attention是对spatial加权

Parameter-Free Spatial Attention Network for Person Re-Identification

在这里插入图片描述
feature map 对通道求和获得H*W矩阵,然后reshape, softmax, reshape获得注意力矩阵。

CBAM: Convolutional Block Attention Module

既有channel attention又有spatial attention

在这里插入图片描述
channel attention
在这里插入图片描述
spatial attention
在这里插入图片描述

class SpatialAttentionModule(nn.Module):
    def __init__(self):
        super(SpatialAttentionModule, self).__init__()
        self.conv2d = nn.Conv2d(in_channels=2, out_channels=1, kernel_size=7, stride=1, padding=3)
        self.sigmoid = nn.Sigmoid()

    def forward(self, x):
        avgout = torch.mean(x, dim=1, keepdim=True)
        maxout, _ = torch.max(x, dim=1, keepdim=True)
        out = torch.cat([avgout, maxout], dim=1)
        out = self.sigmoid(self.conv2d(out))
        return out
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐