【第23篇】NAM:基于标准化的注意力模块

简介: 【第23篇】NAM:基于标准化的注意力模块

论文地址:https://arxiv.org/abs/2111.12419

Github:https://github.com/Christian-lyc/NAM
在这里插入图片描述

摘要

识别不太显着的特征是模型压缩的关键。 然而,它尚未在革命性的注意力机制中进行研究。 在这项工作中,我们提出了一种新颖的基于归一化的注意力模块(NAM),它抑制了不太显着的权重。 它将权重稀疏惩罚应用于注意力模块,从而使它们在保持相似性能的同时具有更高的计算效率。 与 Resnet 和 Mobilenet 上的其他三种注意力机制的比较表明,我们的方法具有更高的准确性。 本文的代码可以在 https://github.com/Christian-lyc/NAM 公开访问。

1 简介

注意力机制是近年来的热门研究兴趣之一(Wang et al.[2017], Hu et al. [2018], Park et al. [2018], Woo et al. [2018], Gao et al. [2018]。 [2019])。它帮助深度神经网络抑制不太显着的像素或通道。许多先前的研究侧重于通过注意力操作来捕捉显着特征(Zhang 等人 [2020]、Misra 等人 [2021])。这些方法成功地利用了来自不同维度特征的互信息。然而,他们没有考虑权重的影响因素,这能够进一步抑制不重要的通道或像素。受刘等人的启发。 [2017],我们的目标是利用权重的影响因素来改进注意力机制。我们使用批量归一化的比例因子,它使用标准偏差来表示权重的重要性。这样可以避免添加 SE、BAM 和 CBAM 中使用的全连接层和卷积层。因此,我们提出了一种有效的注意力机制——基于标准化的注意力模块(NAM)。

2 相关工作

许多先前的工作试图通过抑制无关紧要的权重来提高神经网络的性能。 Squeeze-and-Excitation Networks (SENet) (Hu et al. [2018]) 将空间信息整合到通道特征响应中,并用两个多层感知器 (MLP) 层计算相应的注意力。后来,瓶颈注意模块(BAM)(Park et al. [2018])构建
并行分离的空间和通道子模块,它们可以嵌入到每个瓶颈块中。卷积块注意模块 (CBAM) (Woo et al. [2018]) 提供了一种将通道和空间注意子模块顺序嵌入的解决方案。为了避免忽略跨维度交互,三元组注意力模块 (TAM)(Misra 等人 [2021])通过旋转特征图来考虑维度相关性。然而,这些工作忽略了来自训练调整权重的信息。因此,我们旨在通过利用训练模型权重的方差测量来突出显着特征。

3 方法

我们建议 NAM 作为一种高效且轻量级的注意力机制。 我们采用了 CBAM (Woo et al. [2018]) 的模块集成并重新设计了通道和空间注意子模块。 然后,在每个网络块的末尾嵌入一个 NAM 模块。 对于残差网络,它嵌入在残差结构的末尾。 对于通道注意力子模块,我们使用批量归一化 (BN)(Ioffe 和 Szegedy [2015])中的缩放因子,如等式 (1) 所示。 比例因子衡量通道的方差并表明它们的重要性。

$$ B_{\text {out }}=B N\left(B_{\text {in }}\right)=\gamma \frac{B_{\text {in }}-\mu_{B}}{\sqrt{\sigma_{B}^{2}+\epsilon}}+\beta $$

其中 $\mu_{B}$ 和 $\sigma_{B}$ 分别是小批量 $ {B}$ 的均值和标准差; $\gamma$ 和 $\beta$ 是可训练的仿射变换参数(尺度和位移)(Ioffe 和 Szegedy [2015])。通道注意力子模块如图1和等式(2)所示,其中Mc代表输出特征。$\gamma$ 是每个通道的缩放因子,权重为 $W_{\gamma}=\gamma_{i} / \sum_{j=0} \gamma_{j}$。我们还将 BN 的比例因子应用于空间维度来衡量像素的重要性。我们将其命名为像素归一化。相应的空间注意力子模块如图2和等式(3)所示,其中输出表示为$M_{s}$。λ是缩放因子,权重为$W_{\lambda}=\lambda_{i} / \sum_{j=0} \lambda_{j}$。
为了抑制不太显着的权重,我们在损失函数中添加了一个正则化项,如等式 (4) (Liu et al. [2017]) 所示,其中 x 表示输入; y 是输出; W 代表网络权重; l(·)是损失函数; g(·)是l1范数惩罚函数; p 是平衡 g(γ) 和 g(λ) 的惩罚

$$ \begin{gathered} \mathbf{M}_{c}=\operatorname{sigmoid}\left(W_{\gamma}\left(B N\left(\mathbf{F}_{1}\right)\right)\right) \\ \mathbf{M}_{s}=\operatorname{sigmoid}\left(W_{\lambda}\left(B N_{s}\left(\mathbf{F}_{2}\right)\right)\right) \\ \text { Loss }=\sum_{(x, y)} l(f(x, W), y)+p \sum g(\gamma)+p \sum g(\lambda) \end{gathered} $$

4 实验

在本节中,我们将 NAM 与 SE、BAM、CBAM 和 TAM 在 ResNet 和 MobileNet 上的性能进行比较。 我们使用集群上的四个 Nvidia Tesla V100 GPU 评估每种方法。 我们首先在 CIFAR-100(Krizhevsky 等人 [2009])上运行 ResNet50,并使用与 CBAM(Woo 等人 [2018])相同的预处理和训练配置,p 为 0.0001。 表 1 中的比较表明,仅具有通道或空间注意力的 NAM 优于其他四种注意力机制。 然后我们在 ImageNet 上运行 MobileNet (Deng et al. [2009]),因为它是图像分类基准的标准数据集之一。 我们将 p 设置为 0.001,其余配置与 CBAM 相同。 表 2 中的比较表明,结合了通道和空间注意力的 NAM 优于具有相似计算复杂度的其他三个。

image-20211222181735784

image-20211222181754530

5 结论

我们提出了一个 NAM 模块,它通过抑制不太显着的特征来提高效率。 我们的实验表明 NAM 在 ResNet 和 MobileNet 上都提供了效率增益。 我们正在对 NAM 的集成变化和超参数调整的性能进行详细分析。 我们还计划使用不同的模型压缩技术优化 NAM,以提高其效率。 未来,我们将研究其对其他深度学习架构和应用程序的影响。

目录
相关文章
|
6月前
|
机器学习/深度学习 存储 TensorFlow
【Python机器学习】卷积神经网络卷积层、池化层、Flatten层、批标准化层的讲解(图文解释)
【Python机器学习】卷积神经网络卷积层、池化层、Flatten层、批标准化层的讲解(图文解释)
210 0
|
3月前
|
自然语言处理
评估数据集CGoDial问题之UniMSE框架将MSA和ERC统一的问题如何解决
评估数据集CGoDial问题之UniMSE框架将MSA和ERC统一的问题如何解决
|
4月前
|
机器学习/深度学习 计算机视觉
【YOLOv8改进 - 注意力机制】SENetV2: 用于通道和全局表示的聚合稠密层,结合SE模块和密集层来增强特征表示
【YOLOv8改进 - 注意力机制】SENetV2: 用于通道和全局表示的聚合稠密层,结合SE模块和密集层来增强特征表示
|
4月前
|
机器学习/深度学习 编解码 算法
【YOLOv8改进 - 特征融合NECK】SDI:多层次特征融合模块,替换contact操作
YOLOv8专栏探讨了该目标检测算法的创新改进,包括新机制和实战案例。文章介绍了U-Net v2,一种用于医学图像分割的高效U-Net变体,它通过SDI模块融合语义和细节信息,提升分割准确性。SDI模块结合空间和通道注意力,经通道减缩、尺寸调整和平滑后,用哈达玛积融合特征。提供的核心代码展示了SDI模块的实现。更多详情和论文、代码链接见原文。
|
4月前
|
机器学习/深度学习 计算机视觉
【YOLOv8改进 - 注意力机制】ECA(Efficient Channel Attention):高效通道注意 模块,降低参数量
YOLO目标检测专栏聚焦模型创新与实战,介绍了一种高效通道注意力模块(ECA),用于提升CNN性能。ECA仅用少量参数实现显著性能增益,避免了维度缩减,通过1D卷积进行局部跨通道交互。代码实现展示了一个ECA层的结构,该层在多种任务中展现优秀泛化能力,同时保持低模型复杂性。论文和代码链接分别指向arXiv与GitHub。更多详情可查阅CSDN博主shangyanaf的相关文章。
|
5月前
|
机器学习/深度学习 算法 计算机视觉
【YOLOv8改进】CPCA(Channel prior convolutional attention)中的通道注意力,增强特征表征能力 (论文笔记+引入代码)
该专栏聚焦YOLO目标检测的创新改进与实战,介绍了一种针对医学图像分割的通道优先卷积注意力(CPCA)方法。CPCA结合通道和空间注意力,通过多尺度深度卷积提升性能。提出的CPCANet网络在有限计算资源下,于多个数据集上展现优越分割效果。代码已开源。了解更多详情,请访问提供的专栏链接。
|
6月前
|
数据可视化
FLatten Transformer:聚焦式线性注意力模块
FLatten Transformer:聚焦式线性注意力模块
FLatten Transformer:聚焦式线性注意力模块
|
6月前
|
机器学习/深度学习 算法 计算机视觉
YOLOv8改进 | 融合模块 | 用Resblock+CBAM卷积替换Conv【轻量化网络】
在这个教程中,介绍了如何将YOLOv8的目标检测模型改进,用Resblock+CBAM替换原有的卷积层。Resblock基于ResNet的残差学习思想,减少信息丢失,而CBAM是通道和空间注意力模块,增强网络对特征的感知。教程详细解释了ResNet和CBAM的原理,并提供了代码示例展示如何在YOLOv8中实现这一改进。此外,还给出了新增的yaml配置文件示例以及如何注册模块和执行程序。作者分享了完整的代码,并对比了改进前后的GFLOPs计算量,强调了这种改进在提升性能的同时可能增加计算需求。教程适合深度学习初学者实践和提升YOLO系列模型的性能。
|
SQL 存储 数据库
DBMS的功能和特征两
DBMS(数据库管理系统)是一种用于管理和操作数据库的软件系统。它提供了一系列功能和特征,使得用户可以方便地存储、检索、更新和删除数据,同时还提供了数据安全、数据完整性和数据一致性等保障。下面将详细介绍DBMS的功能和特征。 一、DBMS的功能 1. 数据定义功能:DBMS提供了定义数据库结构和数据模型的功能。用户可以使用DDL(数据定义语言)来创建表、定义字段、设置约束和索引等,从而实现数据库的结构定义。 2. 数据操作功能:DBMS提供了对数据库进行增、删、改、查等操作的功能。用户可以使用DML(数据操作语言)来插入、更新、删除和查询数据,从而实现对数据的操作。 3. 数据查询功能
212 0
|
6月前
|
机器学习/深度学习 计算机视觉
YOLOv8改进 | 细节涨点篇 | UNetv2提出的一种SDI多层次特征融合模块(分割高效涨点)
YOLOv8改进 | 细节涨点篇 | UNetv2提出的一种SDI多层次特征融合模块(分割高效涨点)
700 2
下一篇
无影云桌面