趋近智
标准卷积神经网络(CNN)主要通过卷积层和池化层构建视觉数据的层次化表示。虽然在学习局部模式和纹理方面表现出色,但卷积操作固定的局部感受野天生限制了网络直接模拟长距离依赖和获取全局信息的能力。例如,对于标准CNN来说,理解场景中远距离对象的关系,或将微小细节与整体图像结构联系起来,如果不使用非常深的网络或激进的池化(这可能会丢失细致信息),将面临困难。
自注意力机制提供了一种有效方法来解决此局限,它让网络能够根据输入本身,动态地衡量不同空间位置或通道中特征的重要性。注意力机制不依赖固定的感受野,而是使模型能够根据当前任务选择性地关注特征图中信息量最多的部分,从而有效建立动态的、内容相关的连接。
CNN中自注意力机制的一个突出应用是通道注意力,其目的是模拟特征通道间的相互依赖。其核心思想是,特征图中的不同通道通常对应不同的语义属性或对象检测器,并且并非所有通道对于后续层都同等重要。通道注意力机制学习为每个通道明确分配权重,增强有益特征并抑制相关性较低的特征。
挤压-激励(SE)块是一种计算开销小且有效的通道注意力实现。它可以方便地集成到现有CNN架构中。SE块分三个步骤运行:
挤压:这个步骤将全局空间信息汇集到通道描述符中。对于输入特征图 U∈RH×W×C(高、宽、通道),通常使用全局平均池化(GAP)来生成一个向量 z∈R1×1×C。z 的第 c 个元素计算方式如下:
zc=Fsq(uc)=H×W1i=1∑Hj=1∑Wuc(i,j)这里,uc 表示输入特征图 U 的第 c 个通道。这种挤压后的表示 z 包含通道维度的统计信息,有效概括了每个通道的全局信息。
激励:这个步骤利用挤压后的信息学习一个非线性、通道特定的激活函数。它的目标是获取通道间的复杂依赖。一种常见方法是使用两个带瓶颈结构的全连接(FC)层:
s=Fex(z,W)=σ(W2δ(W1z))这里,δ 是ReLU激活函数,σ 是Sigmoid激活函数。W1∈RrC×C 和 W2∈RC×rC 是两个FC层的权重。第一个FC层将通道维度缩小 r 倍(r 为缩减比,一个超参数),形成一个瓶颈,这会限制模型复杂度并辅助泛化。第二个FC层将通道维度恢复到 C。最终的Sigmoid激活函数确保输出权重 s∈R1×1×C 被归一化到0和1之间。这些权重表示每个通道的学习到的重要性或“激励”程度。
缩放(重新缩放):最后一步是将学习到的通道注意力权重 s 应用到原始输入特征图 U 上。输出特征图 X~∈RH×W×C 通过通道维度乘法获得:
x~c=Fscale(uc,sc)=sc⋅uc输入特征图的每个通道 uc 都由其对应的注意力权重 sc 进行缩放。这会自适应地逐通道重新校准特征响应,强化有益通道并减弱不太有用的通道。
挤压-激励(SE)块内的数据流。输入特征图通过注意力路径(挤压和激励)处理以计算通道权重,然后这些权重用于重新缩放原始输入图。
SE块显著提升了CNN的表示能力,而计算开销和参数增加微小。它们可以轻松插入到各种现有架构中,通常放置在残差块内的卷积层之后(例如,构建SE-ResNet)。
通道注意力侧重于哪些特征重要,而空间注意力旨在判断特征图中何处包含最相关信息。一些机制基于通道间关系计算空间注意力图。然而,一种更直接获取长距离空间依赖的方法,其灵感源于自然语言处理中的自注意力,可以在非局部网络中看到。
非局部网络引入的模块,将某个位置的响应计算为输入特征图中所有位置特征的加权和。这使得网络能够直接获取远距离空间位置间的依赖,从而克服局部感受野的局限。
通用的非局部操作可定义为:
yi=C(x)1∀j∑f(xi,xj)g(xj)我们来分析这个公式:
成对函数 f 的不同选择会产生非局部块的不同变体。一个常见且有效的选择是嵌入式高斯函数:
f(xi,xj)=eθ(xi)Tϕ(xj)这里,θ(xi)=Wθxi 和 ϕ(xj)=Wϕxj 分别是位置 i 和 j 处输入特征的线性嵌入(学习到的变换)。这个公式与Transformer中使用的点积注意力很相似。指数函数根据嵌入表示之间的点积计算亲和度。整个操作有效计算了变换后的输入特征 g(xj) 的加权平均值,其中权重由目标位置 i 与所有其他位置 j 之间的相似度确定。
非局部块可以插入到CNN的多种深度位置。当放置在更深层时,它们可以在语义更丰富的特征上运行,并获取复杂的空间关系。然而,计算所有空间位置(H×W 个位置)的成对交互可能会耗费大量计算资源,其计算复杂度与空间位置的数量呈平方关系。这种开销通常限制了它们在已进行空间下采样的特征图上的应用。
SE块和非局部块都作为标准卷积层的补充增强。
通过引入自注意力机制,CNN能够根据输入图像的全局信息动态调整其特征表示。通道注意力帮助网络关注最相关的特征类型,而空间注意力和非局部操作使其能够明确模拟图像远距离部分之间的关系。这些技术使CNN能够构建更强大的、具备情境感知的表示,从而在各种计算机视觉任务上取得性能提升,特别是那些需要理解更广阔场景结构或对象之间关系的任务。
这部分内容有帮助吗?
© 2026 ApX Machine Learning用心打造