BAM: Bottleneck Attention Module__实现

BAM: Bottleneck Attention Module

引言

  在此论文中,我们把重心放在了Attention对于一般深度神经网络的影响上, 我们提出了一个简单但是有效的Attention 模型—BAM,它可以结合到任何前向传播卷积神经网络中,我们的模型通过两个分离的路径 channel和spatial, 得到一个Attention Map.
整体结构图如下:
在这里插入图片描述

这里作者将BAM放在了Resnet网络中每个stage之间。有趣的是,通过可视化我们可以看到多层BAMs形成了一个分层的注意力机制,这有点像人类的感知机制。BAM在每个stage之间消除了像背景语义特征这样的低层次特征,然后逐渐聚焦于高级的语义–明确的目标(比如图中的狗).

主要思想:

channel attention branch

对于给定的feature map F ∈ R C ∗ H ∗ W \mathrm{F} \in R^{C * H * W} FRCHW,BAM可以得到一个3D的Attention map M ( F ) ∈ R C ∗ H ∗ W M(F)∈R^{C*H*W} M(F)RCHW.加强的feature map F′;
F ′ = F + F ⊗ M ( F ) \mathrm{F}^{\prime}=\mathrm{F}+\mathrm{F} \otimes \mathrm{M}(\mathrm{F}) F=F+FM(F)

为了设计一个有效且强大的模型,我们首先计算channel attention,然后计算spatial attention.这时M(F)就变成:
M ( F ) = σ ( M c ( F ) + M s ( F ) ) \mathrm{M}(\mathrm{F})=\sigma\left(\mathrm{M}_{c}(\mathrm{F})+\mathrm{M}_{s}(\mathrm{F})\right) M(F)=σ(Mc(F)+Ms(F))

这里σ 代表sigmoid函数,为了聚合feature map在每个通道维度,我们采用全局平均池化得到 F C F_{C} FC这个向量然后对全局信息在每个通道进行软编码。为了评估Attention在每个通道的效果?我们使用了一个多层感知(MLP)用一层隐藏层。在MLP之后,我们增加了BN去调整规模和空间分支一样的输出,channel attention可以被计算为:

M c ( F ) = B N ( M L P ( AvgPool ( F ) ) ) \mathbf{M}_{\mathbf{c}}(\mathbf{F})=B N(M L P(\text {AvgPool}(\mathbf{F}))) Mc(F)=BN(MLP(AvgPool(F)))<

BAM attention是指瓶颈注意模块(Bottleneck Attention Module)。这是一种提高神经网络表示能力的新方法。BAM模块通过两种不同的途径有效地学习聚焦或抑制什么和哪里,并改进中间特征。灵感来源于人类视觉系统,在信息流动最关键的网络瓶颈处放置BAM注意模块。实验证实BAM在不同基准数据集上的性能优于所有基线,并且通过观察模块如何作用于中间特征图,我们可以更清晰地理解其类似于人类感知过程的层次推理过程,在瓶颈处的自适应特征细化的发现对其他视觉任务也有帮助。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [【CV中的Attention机制】CBAM的姊妹篇-BAM模块](https://blog.youkuaiyun.com/DD_PP_JJ/article/details/103826889)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [【注意力机制】BAM: Bottleneck Attention Module论文理解](https://blog.youkuaiyun.com/qq_36926037/article/details/117884889)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Cpp编程小茶馆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值