论文解读:Multi-Modal Explicit Sparse Attention Networks for Visual Question Answering

Multi-Modal Explicit Sparse Attention Networks for Visual Question Answering

1.abstract

视觉问答是一个多任务涉及到自然语言处理(NLP)和计算机视觉(CV),这需要模型来理解视觉信息和文本信息的同时预测输入视觉图像和文本的正确答案的问题,已广泛应用于智能和智能交通系统、智能城市和其他领域。今天,先进的VQA方法通过设计共同注意机制来模拟图像区域和问题单词之间的密集交互,以实现更好的准确性。但是,建模每个图像区域和每个疑问词之间的交互会迫使模型计算不相关的信息,从而分散模型的注意力。为了解决这一问题,提出了一种新的多模态显式稀疏注意网络(MESAN)模型,该模型通过显式选择与回答输入问题最相关的输入特征部分来集中模型的注意力。作者认为这种基于top-k选择的方法可以减少不相关信息造成的干扰,最终帮助模型获得更好的性能。在基准数据集VQA v2上的实验结果验证了该模型的有效性。我们最好的单一模型在test-dev和test-std集上分别提供了70.71%和71.08%的总体精度。此外,作者还证明了我们的模型可以通过注意可视化获得比其他高级模型更好的参与特征。他们的工作证明了具有稀疏注意机制的模型也能在VQA数据集上取得竞争结果。希望它能够促进VQA模型的发展以及与VQA相关的人工智能(AI)技术在各个方面的应用。

2.introduction

近年来,涉及自然语言处理和计算机视觉的图像字幕、图像-文本匹配、视觉问答(visual question answer, VQA)等多模态学习任务引起了这两个领域研究人员的广泛关注。与其他多模态学习任务相比,VQA难度更大,因为它需要模型同时理解视觉信息、文本信息以及它们之间的关系,可能还需要复杂的推理和常识知识才能正确回答问题。因此,VQA被视为通用人工智能(AI)的基准。人工智能技术的蓬勃发展给传感器相关领域带来了巨大的变化。传感器与深度学习的完美结合,使机器拥有视觉、听觉、嗅觉等感官,使高价值的传感器数据分析和低成本、实时的智能传感器系统成为可能。VQA数据集的一个简单实例包含一个视觉图像和一个与图像内容相关的文本问题,这需要模型预测输入图像的正确答案和问题。在实践中,VQA也有很多应用,如帮助研究人员进行图像检索,为盲人提供辅助导航,帮助人类实现智能、智能交通系统和智慧城市,应用于传感器网络领域等。例如,当用于构建智能、智能的交通系统时,VQA可以帮助研究人员处理和分析传感器等信息收集设备收集的大量信息。具体来说,在VQA模型将图像信息收集的监控为主要输入和相应的问题,并采取其他信息,如汽车每小时的速度和流量传感器收集的信息预测答案将帮助交通管理,提供交通信息服务等。随着特征提取器、注意机制、特征融合方法等VQA模型各组成部分的发展,VQA模型的性能及其在各种智能任务中的性能也在不断提高。

注意机制是深度神经网络中的一项先进技术,被广泛应用于机器翻译、语音识别、图像字幕等领域。注意机制帮助模型对不同重要性的特征赋予不同的权重,使神经网络的学习更加灵活。提出了第一种将视觉注意引入VQA的方法。此后,注意机制成为VQA模型固有的一部分。视觉注意力对图像的不同区域赋予不同的权重,使模型聚焦在有助于正确回答问题的图像区域上。同样,学习文本注意,使模型能够关注问题关键字,这对需要理解文本信息的VQA模型也非常重要。最近,结合视觉注意和文本注意的共同注意证明了能够同时关注重要图像区域和问题关键词的VQA模型具有更好的性能,并成为VQA模型中使用的主要注意机制。

早期的共同注意模型大多只学习图像区域和疑问词之间的粗糙交互作用,而忽略了它们之间的密集交互作用。随后提出的DCN (dense co-attention network)和BAN (bilinear attention network)两种密集注意模型通过对每个图像区域和每个疑问词之间的密集交互进行建模,提高了VQA模型的性能。然而,由于在每种模式中缺乏对自我注意的建模(即,图像的区域对区域交互和问题的单词对单词交互),这些共同注意模型的深层叠层版本相比其相应的浅层模型没有什么改进。灵感来自于transformer模型,一些最近提议的模型如MCAN(模块化co-attention网络)和MEDAN(综合encoder-decoder关注网络)可以密集intra-model交互模型(图像区域之间或一个词到一个词)和跨模型的交互(word-to-region)同时,从而达到最好的水平精度。实验结果表明,这些模型可以通过深度叠加基本模块共同注意层实现深度推理。

而模块化的共同注意模型,如MCAN和MEDAN,对每个图像区域和每个疑问词之间的交互进行建模,会迫使模型计算不相关的信息,从而导致模型的注意力分散。如果不相关信息对阅读理解产生负面影响,就可能出现检索问题。这种干扰会阻碍理解过程,因此VQA模型需要有效的注意机制。受the Explicit Sparse Transformer的启发,我们提出了一种名为多模态显式稀疏注意网络(MESAN)的新模型,该模型采用基于top-k选择的显式选择,只关注与回答问题最相关的特定数量的疑问词。我们认为该方法可以减少不相关信息造成的干扰,最终帮助模型获得更好的性能。在基准数据集VQA v2[26]上的大量实验结果证明了我们的模型的有效性,表明我们的模型可以达到最先进的VQA性能。我们最好的单一模型在test-dev和test-std集上分别提供了70.71%和71.08%的总体精度。我们还探讨了我们模型的有效性通过消融实验表明,与其他高级VQA模型相比,我们的模型可以通过注意可视化获得更好的参与特征。

3.Materials and Methods

VQA是一个被广泛研究的视觉和语言问题,需要模型同时理解图像内容和自然语言问题及其关系,可能还需要复杂的推理和常识知识。在大多数的VQA模型中,第一步是使用特征提取器从输入图像和问题中提取特征。然后,该模型采用融合方法将提取的图像特征与问题特征进行融合。最后,分类器以联合嵌入作为输入来预测正确答案。

但是,上述方法是基于全局特征的。使用输入图像和问题的全局特征将使模型难以集中在与回答问题最相关的图像区域和问题关键字上,并可能引入噪声。因此,一些研究将视觉注意机制引入VQA,假设人类可以通过关注图像的局部区域而不是一次处理整个场景来快速理解视觉场景。Yang等人提出了一种堆叠注意网络,利用输入问题的语义表示,搜索与回答问题相关的局部图像区域,对输入图像进行多步推理,预测正确答案。Anderson等人设计了自底向上的图像区域检测机制和自顶向下的注意,对与区域相关的特征向量分配不同的权重。Schwartz等人为VQA提出了一种学习各种数据模态之间高阶相关性的注意机制,可以有效地引导模型关注解决多模态任务所需的不同数据模态中的元素。

Co-Attention Models

除了视觉注意之外,能够引导模型将注意力集中在问题关键词上的文本注意也非常重要,因为VQA要求模型同时理解视觉信息和文本信息。因此,结合视觉注意和文本注意的共同注意机制已成为高级VQA模型的重要组成部分。之前的工作中提出的双注意网络(Dual Attention Network, DAN)通过关注图像中的特定区域和问题中的关键词,通过多个步骤来收集必要信息。Lu等人设计了层次共注意模型(HieCoAtt)来交替学习视觉注意和文本注意。然而,上述早期的共同注意模型只学习了图像区域和疑问词之间的粗糙交互作用,而忽略了它们之间的密集交互作用。随后提出的两个密集共注意模型DCN[21]和BAN[5]通过建模每个图像区域和每个疑问词之间的密集交互来改进这一缺陷。虽然这些密集的共同注意模型可以深度级联,但它们的深度堆叠版本几乎没有性能优势。最近提出的模型如MCAN和MEDAN,通过建模密集的模型内交互(区域-区域或词-词)和模型间交互(词-区域)来实现深度推理,从而将VQA模型的精度提高到一个新的水平。

 

4.Multi-Modal Explicit Sparse Attention Networks

首先介绍如何提取图像特征和问题特征。然后我们描述了显式稀疏注意和编码器-解码器策略在我们的模型中使用。最后,利用融合机制将参与的图像特征和参与的问题特征联合嵌入到分类器中,预测最可能的答案。MESAN的总体架构如图1所示。

4.1 Image and Question Embeddings

采用自底向上和自顶向下的视觉注意机制来提取图像特征。使用更快的R-CNN模型来提出一组由池卷积特征向量表示的图像区域。提取的图像特征表示为X∈Rm×2048,其中m∈[10,100]为检测到的目标数量。作者使用X的线性变换使其维数与问题特征一致。因此图像特征的尺寸为m× 512,如图1所示。

对于输入问题,我们首先将其标记为单词,并将其缩减为最多14个单词,使用在大规模语料库上预先训练的300- d GloVe词嵌入,将疑问词转换成大小为n× 300的嵌入词序列,其中n∈[1,14]为疑问词的个数。最后,我们使用单层512维长短期记忆(LSTM)将单词嵌入到问题特征Y∈Rn×512中。

 4.2 Explicit Sparse Attention

本文模型由一个编码器和一个解码器组成。编码器的核心是堆叠的SA(自我注意)单元,它可以学习疑问词的自我注意;解码器的核心是堆叠的SGA(自我引导注意)单元,它可以学习输入图像的自我注意和问题引导注意。SA和SGA单元的灵感来自Transformer中提出的点积注意力的缩放,不同之处是我们实现了基于top-k选择的显式选择,以获得更集中的注意力。

4.3 Sparse Scaled Dot-Product Attention

给定一个查询和一组键值对,注意机制可以将它们映射到一个输出。查询、键、值和输出都是向量,输出是值的加权和,其中权重由查询的兼容函数与相应的键计算。稀疏缩放点积注意的输入包括查询Q[lQ,d]、键K[lK,d]和值V[lV,d],它们是图像特征和问题特征的线性变换。我们先计算Q与K的点积,除以√d得到注意分数P=QK^T\√d。我们评估分数P是基于一个假设,即分数越大,相关性越高。然后在P上实现稀疏注意掩蔽函数M(·),显式选择最上面的k个贡献元素。函数M(·)选择P中每一行最大的k个元素,并记录它们在位置矩阵中的位置。具体来说,首先选择第i行第k大的值,将其标记为ai*。如果第j个元素的值大于aj*,则记录位置(i, j)。稀疏注意掩蔽函数M(·)为:,通过top-k选项明确选择高关注度分数。函数M(·)将小于前k个最大分数的分数赋值为负无穷,因此,相应的概率近似为0。k是一个超参数,通常是一个很小的数。然后我们应用softmax函数来获得值的权重:,注意力特征为:

通过使用稀疏尺度的点积注意力,我们不仅可以获得更集中的注意力,还可以消除不相关片段带来的负面影响。图2a展示了稀疏缩放点积注意与普通缩放点积注意的区别,图2b描述了稀疏缩放点积注意的核心计算步骤。

 

4.4 Multi-Head Sparse Attention

多头注意允许模型在不同位置共同注意来自不同表示子空间的信息,提高参与特征的表示能力。用同样的方法,我们的多头稀疏注意有h个平行的注意头,每个都有head对应一个独立的稀疏尺度点积注意函数。多头稀疏注意表示为:,

4.5 Encoder and Decode

编码器:我们使用编码器实现自我注意,学习细粒度的问题特征。编码器由N个堆叠的相同的SA(自注意)单元组成,每个SA单元有两个子层。第一个子层是一个多头稀疏注意层,第二个子层是一个点全连接前馈层。第一个SA单元以问题征:Y[y1;…;yn]∈Rn×512作为输入,其多头稀疏注意层学习每个词对< yi,yj>之间的相关性。第一个SA单元的前馈层通过两个完全连接的层通过ReLu[38]和Dropout将前一个子层的输出进行进一步转换,输出参与问题的特征。每个其他的SA单元将其上一个SA单元的输出作为输入,我们将编码器的输出标记为

译码器:译码器由N个堆叠的相同的SGA (self&guided-attention)单元组成,每个单元有三个子层,输出所关注的图像特征。第一子层和第二子层均为以稀疏尺度点积注意为核心的多头稀疏注意层。第一个SGA单元的第一个子层以图像特征X[x1;…;xm]∈Rm×2048为输入,其他每个SGA单元以其上一个SGA单元的输出出席的图像特征为第一个子层的输入。本文使用X的线性变换使其维数与问题特征一致。第2个子层取其上一个子层获得的出席图像特征和编码器的输出,即问题注意特征Y(N)[Y(N) 1;…;Y(N) N]∈Rn×512作为输入,学习对输入图像特征的问题引导注意。最后一个子层是前馈层,与编码器中的前馈层相同,也将前一个子层的输出作为输入。我们将解码器的输出标记为X(N)[X(N) 1;....;x(N) m]∈Rm×512。

4.6 Feature Fusion and Classifier

通过编码-解码阶段的学习,可以获得问题注意力特征Y(n*512)和图片注意力特征X(m*512),我们为Y(N)和X(N)设计了一个双层MLP (FC(512)-ReLu-Dropout(0.1)-FC(1))来计算它们最终的注意力特性如下:,,这里的ai是注意力权重,分别和问题特征和图像特征的乘积别累加,然后在把两个特征融合:这一部分操作和MCAN类似的。

实验和模型对比:略

 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值