视觉 注意力机制——通道注意力、空间注意力、自注意力、交叉注意力

机器学习图像处理算法

picture.image

向AI转型的程序员都关注公众号 机器学习AI算法工程

在计算机视觉领域,注意力机制(Attention Mechanism)已成为提升模型性能的关键技术之一。注意力机制通过模拟人类视觉的选择性注意力,能够在海量数据中自动聚焦于最相关的信息,从而提高模型的效率和准确性。下面将介绍通道注意力、空间注意力、自注意力和交叉注意力四种类型。

通道注意力

通道注意力是一种专注于卷积神经网络(CNN)中特征图通道(feature map channels)的重要性分配的机制。其主要目的是通过为每个通道分配不同的权重,来强调对任务最有贡献的通道,抑制无关或冗余的通道,从而提升模型的表现。

以SE模块为例:

picture.image

Squeeze:通过全局平均池化(Global Average Pooling, GAP)将特征图HxWxC压缩成1x1xC,即得到每个通道的平均池化后的特征,该特征为一个值。

Excitation:全局特征向量通过几个全连接(FC)层进行非线性变换,通常包括一个ReLU激活函数和一个sigmoid激活函数。将输出值压缩到0和1之间,生成一个与输入通道数相同长度的权重向量1x1xC。

将通道权重乘以原本的特征图即可得到通道注意力特征图。

再如以下的结构图:通过CAP(全局平均池化),再通过sigmoid得到每个通道的权重图,与原来的特征相乘即可得到经过通道注意力之后的特征图。

picture.image

如下通道注意力:

全局池化:对输入特征图的每个通道进行全局平均池化,得到每个通道的全局空间特征。

特征重塑:将池化后的特征重塑为一维向量,为每个通道生成一个单一的数值。

1x1卷积:使用1x1卷积核对重塑后的特征向量进行卷积操作,生成每个通道的权重。

激活函数:可选地使用激活函数来引入非线性,增强模型的表达能力。

picture.image

通道注意力的实现方法有很多,总的来说就是获得通道权重,再与原本特征相乘。

空间注意力

空间注意力是一种专注于特征图的空间维度的重要性分配的机制。它通过对特征图中的特定空间位置进行加权,从而突出对任务最有贡献的区域,抑制无关或冗余的区域,以提高模型的性能。

首先,对一个尺寸为 H×W×C的输入特征图F进行通道维度的全局最大池化和全局平均池化,得到两个 H×W×1 的特征图;(在通道维度进行池化,压缩通道大小,便于后面学习空间的特征)

然后,将全局最大池化和全局平均池化的结果,按照通道拼接(concat),得到特征图尺寸为HxWx2,

最后,对拼接的结果进行7x7的卷积操作,得到特征图尺寸为 HxWx1,接着通过Sigmoid激活函数 ,得到空间注意力权重矩阵

权重矩阵再与原来的特征图相乘即可得到空间注意力特征图

picture.image

总得来说可看下图:

  • 通过局部网络从空间维度缩减特征为H×W×1
  • 通过激活函数得到权重矩阵
  • 权重矩阵与原来特征相乘

picture.image

混合注意力

在混合注意力机制中,通道注意力和空间注力可以通过串联、或者并联的方式进行组合。

以下为串联和并联的两种形式,一般来说,串联效果会好一点。

picture.image

picture.image

自注意力

自注意力是一种专注于输入数据的内部关系的重要性分配机制,广泛应用于自然语言处理和计算机视觉等领域。它通过计算输入数据中每个元素与其他所有元素之间的相似性,来动态地调整各元素的重要性,从而更好地捕捉全局依赖关系和上下文信息。

注意力的思想,类似于寻址。给定Query,去Source中计算Query和不同Key的相关性,即计算Source中不同Value值的权重系数;Value的加权平均结果可以作为注意力值。

以Transformer的自注意力为例:

picture.image

picture.image

交叉注意力

交叉注意力是一种专注于不同模态或不同序列之间关系的重要性分配机制,广泛应用于多模态任务和序列对序列的任务中。它通过计算一个模态(或序列)的查询(Query)向量与另一个模态(或序列)的键(Key)和值(Value)向量之间的相似性,来动态地调整每个模态(或序列)对其他模态(或序列)的关注,从而实现信息的综合利用。

即与自注意力不同的是Q来自一个模态(或序列),K和V来说另模态(或序列)。Q决定了哪个模态或序列将聚焦于哪个模态或序列的特征信息,从而实现信息的综合利用和融合。

picture.image

picture.image

再如下图:是Q来自文本模态,K和V来说视觉模态 。

picture.image

总结

注意力机制(通道注意力、空间注意力、自注意力和交叉注意力)是现代神经网络模型中至关重要的技术。它们通过动态调整输入特征的权重,增强模型对重要信息的关注,从而显著提升了各种复杂任务(如图像处理、自然语言处理和多模态任务)的性能。这些机制的广泛应用和不断发展,促进了深度学习技术的进步和创新。

机器学习算法AI大数据技术

搜索公众号添加: datanlp

picture.image

长按图片,识别二维码

阅读过本文的人还看了以下文章:

实时语义分割ENet算法,提取书本/票据边缘

整理开源的中文大语言模型,以规模较小、可私有化部署、训练成本较低的模型为主

《大语言模型》PDF下载

动手学深度学习-(李沐)PyTorch版本

YOLOv9电动车头盔佩戴检测,详细讲解模型训练

TensorFlow 2.0深度学习案例实战

基于40万表格数据集TableBank,用MaskRCNN做表格检测

《基于深度学习的自然语言处理》中/英PDF

Deep Learning 中文版初版-周志华团队

【全套视频课】最全的目标检测算法系列讲解,通俗易懂!

《美团机器学习实践》_美团算法团队.pdf

《深度学习入门:基于Python的理论与实现》高清中文PDF+源码

《深度学习:基于Keras的Python实践》PDF和代码

特征提取与图像处理(第二版).pdf

python就业班学习视频,从入门到实战项目

2019最新《PyTorch自然语言处理》英、中文版PDF+源码

《21个项目玩转深度学习:基于TensorFlow的实践详解》完整版PDF+附书代码

《深度学习之pytorch》pdf+附书源码

PyTorch深度学习快速实战入门《pytorch-handbook》

【下载】豆瓣评分8.1,《机器学习实战:基于Scikit-Learn和TensorFlow》

《Python数据分析与挖掘实战》PDF+完整源码

汽车行业完整知识图谱项目实战视频(全23课)

李沐大神开源《动手学深度学习》,加州伯克利深度学习(2019春)教材

笔记、代码清晰易懂!李航《统计学习方法》最新资源全套!

《神经网络与深度学习》最新2018版中英PDF+源码

将机器学习模型部署为REST API

FashionAI服装属性标签图像识别Top1-5方案分享

重要开源!CNN-RNN-CTC 实现手写汉字识别

yolo3 检测出图像中的不规则汉字

同样是机器学习算法工程师,你的面试为什么过不了?

前海征信大数据算法:风险概率预测

【Keras】完整实现‘交通标志’分类、‘票据’分类两个项目,让你掌握深度学习图像分类

VGG16迁移学习,实现医学图像识别分类工程项目

特征工程(一)

特征工程(二) :文本数据的展开、过滤和分块

特征工程(三):特征缩放,从词袋到 TF-IDF

特征工程(四): 类别特征

特征工程(五): PCA 降维

特征工程(六): 非线性特征提取和模型堆叠

特征工程(七):图像特征提取和深度学习

如何利用全新的决策树集成级联结构gcForest做特征工程并打分?

Machine Learning Yearning 中文翻译稿

蚂蚁金服2018秋招-算法工程师(共四面)通过

全球AI挑战-场景分类的比赛源码(多模型融合)

斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)

python+flask搭建CNN在线识别手写中文网站

中科院Kaggle全球文本匹配竞赛华人第1名团队-深度学习与特征工程

不断更新资源

深度学习、机器学习、数据分析、python

搜索公众号添加: datayx

picture.image

0
0
0
0
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论