AAAI 2020 | 视觉问答方法中引入再注意机制

简介: AAAI 2020 | 视觉问答方法中引入再注意机制

image.png

今天给大家介绍南开大学的Wenya Guo等人在AAAI 2020发表的文章“Re-Attention for Visual Question Answering”。作者在文章中提出了一种用于处理VQA任务的再注意模式,该模式充分利用答案中的信息使关键问题相关内容在视觉图像中得到准确的关注。此外,作者还提出了一个新的注意力模块,它将每对“对象—词”在细粒度场景中的关系联系起来,并在图像和问题的引导下生成注意力映射。

image.png

1


研究背景


最近几年,研究人员为解决VQA问题开展了大量的研究工作,他们试图理解细粒度场景中的图像和问题。一些现有的方法旨在获得与问题相关的关键视觉信息,并广泛应用了视觉注意力机制,根据统一的问题表示学习有意义的区域或对象以提高模型性能。还有一些方法指出重点关注问题中的关键词也是很重要的,图像中信息丰富的视觉内容和重要的词汇都可用于获得更好的模型性能。


实际上,VQA包括三个元素:图像,问题和答案,VQA的目标是预测有关图像问题的正确答案。现有方法将答案视为分类标签,但是答案中包含更丰富的信息,问题和答案都有助于描述视觉内容。


为了在VQA中充分利用答案中包含的信息,作者一种新的再注意框架,利用答案计算图像的注意力权重,定义一个注意力一致性损失函数,以测量通过问题和答案学习到的视觉注意力图之间的距离,基于答案学习的注意力映射可以通过最大程度地减少一致性损失来引导基于问题的视觉注意力学习。最后,作者通过实验证明该方法与最先进的视觉问答方法相比表现得更好。


2


模型


图1说明了文章中提出的方法的整体结构。它以“图像—问题”作为输入,并通过将问题与相关图像对象相关联来预测准确答案。该方法由三部分组成:特征表示层,注意层和损失层。在表示层提取问题和图像的特征,通过提出的注意力模块,将问题中文本内容和图像中的视觉内容融合为统一的答案表示。之后,将答案表示传递到两个分支中:(1)分类分支,其中答案表示用于预测有关给定问题的正确答案;(2)答案表示用于对图像执行再注意,通过最小化在交叉注意层中学习到的再注意力权重和视觉权重之间的差异,使用答案表示来指导模型加入图像中的对象。

image.png

图1 利用再注意机制处理VQA任务方法的整体结构

2.1特征表示层

表示层用于提取输入图像和问题的特征,从预训练的Faster RCNN中获得图像中每个候选对象的特征表示,被检测到的对象的数量被表示为n,最终图像的对象特征表示为

image.png

有l个单词的问题Q可以表示为一个单词序列

image.png

之后使用所有LSTM单元的输出序列作为问题表示,将问题表示为

image.png

2.2注意力层

基于特征表示层的表示,可以融合问题和图像的信息来获得答案表示。作者提出了一种交叉注意机制,考虑问题中每个单词与图像中每个对象之间的交互,文本和视觉内容的权重是根据每个单词-对象对的相似性来计算的。提出的交叉注意机制的结构如图2所示。

image.png

图2  交叉注意机制结构


先将问题和图像的特征转换到同一维度空间,然后定义了一个矩阵M来表示每一对对象和单词之间的相似性, 从矩阵中学习单词和对象的注意力权重,将图像和问题特征计算为输入图像和输入问题特征的加权求和,最后将图像和问题特征融合成一个统一的表示,这个表示就作为答案的表示。


2.3 损失层


该层的目标是定义一个目标函数来训练整个模型。损失层由两个分支组成,其中之一是分类分支,用于确定准确的答案,使用二进制交叉熵作为该分支的损失函数损失函数如公式(1)所示:

image.png

(1)

另一个分支是再注意过程,它利用答案表示来指导视觉重要性学习:

image.png

(2)

对该模型训练时,尽量减少在所提出的交叉注意模块中学习的视觉内容的重要性与在再注意分支中学习的内容之间的差异,在这个分支定义一个一致性损失函数,如公式(3)所示:

image.png

(3)


显式地训练了所提出的网络,以优化这两个分支的联合损失。


3


实验


3.1 实验数据和基准模型


为证明所提出的视觉问答方法的有效性,作者将该文章中的方法与最先进的方法进行比较,在对比实验中,使用VQA v2数据集评价已有的方法的表现。与所提出的方法进行对比的先进方法包括(1)基于融合的方法:MCB和 ResNet-3000;(2)基于注意力的方法:HAN、UpDn和DCN ;(3)视觉推理方法:rTV/rTV,、Counting、Dual-MFA和Graph;(4)其他VQA方法:BLOCK、 MuRel 、 VCTREE-HL和PMC。


3.2 实验结果


表1展示了文章所提出的方法和比较方法的性能。实验结果表明该文章中提出的方法优于所有比较的方法。例如经典的基于注意力的方法UpDn,该文章中的方法在test-dev数据上的总体准确性上获得了5.11%的显着提升。UpDn利用整个问题来学习不同对象的重要性,而本文的方法则可以模拟每对单词和对象之间的关系,使得问题和图像都可以得到更好的理解,这也证明了每个单词和对象之间相互作用的重要性。此外,我们的方法相对于最新方法VCTREE-HL表现出色,在在test-dev数据上的总体准确性高2.24分,这说明答案中的丰富信息已可用于帮助模型学习更准确的视觉注意图。


表1 VQA方法在VQA v2数据集上的性能

image.png

4


总结


作者提出了一种再注意模型来解决视觉问题回答的问题。作者任认为问题和答案都有助于描述视觉内容,所以可以利用答案表示法指导视觉注意力学习。在训练模型时,作者计算注意力一致性损失以评估仅通过问题获得的视觉注意力与通过重新注意获得的视觉注意力之间的差异。此外,与其他基于共同注意的方法相比,该文章提出了一种新的关注模块,以细粒度的角度关联每个对象-单词对的关系。最后,作者通过一系列实验证明了该方法优于常用基准数据集上的比较方法,消融实验结果证明了所提出的交叉注意和重新注意模块的有效性。


目录
打赏
0
0
0
0
15
分享
相关文章
【YOLOv8改进】CoordAttention: 用于移动端的高效坐标注意力机制 (论文笔记+引入代码)
该专栏聚焦YOLO目标检测的创新改进与实战,介绍了一种新的移动网络注意力机制——坐标注意力。它将位置信息融入通道注意力,通过1D特征编码处理,捕获长距离依赖并保持位置精度。生成的注意力图能增强目标表示,适用于MobileNetV2、MobileNeXt和EfficientNet等网络,提高性能,且几乎不增加计算成本。在ImageNet分类和下游任务(目标检测、语义分割)中表现出色。YOLOv8中引入了CoordAtt模块,实现位置敏感的注意力。更多详情及配置见相关链接。
聊一聊计算机视觉中常用的注意力机制以及Pytorch代码实现
本文介绍了几种常用的计算机视觉注意力机制及其PyTorch实现,包括SENet、CBAM、BAM、ECA-Net、SA-Net、Polarized Self-Attention、Spatial Group-wise Enhance和Coordinate Attention等,每种方法都附有详细的网络结构说明和实验结果分析。通过这些注意力机制的应用,可以有效提升模型在目标检测任务上的性能。此外,作者还提供了实验数据集的基本情况及baseline模型的选择与实验结果,方便读者理解和复现。
407 0
聊一聊计算机视觉中常用的注意力机制以及Pytorch代码实现
抛弃视觉编码器,这个原生版多模态大模型也能媲美主流方法
【8月更文挑战第4天】在AI领域,多模态大模型(VLMs)融合视觉与语言处理,但现有模型多依赖视觉编码器,限制了灵活性与效率。为解决此问题,研究者开发出不依赖编码器的VLMs,提出一种高效训练方案,通过统一解码器内部桥接视觉-语言表示,并引入额外监督增强视觉识别能力。基于此,开发出EVE模型,在多个基准测试中表现出色,仅用3500万公开数据即可媲美甚至超越传统模型。尽管如此,EVE仍面临计算资源需求高及数据质量等挑战。这一突破引发了对未来VLM发展方向的讨论。[论文链接: https://arxiv.org/abs/2406.11832]
102 1
ICML 2024:揭示非线形Transformer在上下文学习中学习和泛化的机制
【7月更文挑战第10天】Rensselaer Polytechnic Institute和IBM的研究者探讨了非线性Transformer在上下文学习的理论基础。他们展示了Transformer如何通过注意力层聚焦相关上下文,并利用MLP层进行预测,揭示了其在不需微调情况下的泛化能力。尽管研究局限于二进制分类和单层模型,它为理解复杂模型在不同任务和领域的潜在适应性提供了新视角。[论文链接:](https://arxiv.org/pdf/2402.15607)**
67 1
极智AI | 详解ViT算法实现
大家好,我是极智视界,本文详细介绍一下 ViT 算法的设计与实现,包括代码。
421 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等