《TPT》-中科院提出用于VideoQA的跨模态交互时间金字塔Transformer

作者 | 小马

编辑 | CV君

报道 | 我爱计算机视觉(微信id:aicvml)

【写在前面】

视频问答(VideoQA)一个具有挑战性的任务,因为它需要进行视觉理解和自然语言理解的多模态结合。现有的方法很少在多个时间尺度上利用视频中的外观-运动信息,并且问题与文本语义提取的视觉信息之间的交互作用经常被忽略 。针对这些问题,本文提出了一种新的具有多模态视频QA交互作用的时间金字塔Transformer(TPT)模型。TPT模型包括两个模块,即特定于问题的Transformer(QT)和视觉推理(VI)。

给定由视频构建的时间金字塔,QT从每个单词和视觉内容之间的粗到细的多模态交互来构建问题语义 。在这种特定于问题的语义的指导下,VI从问题和视频之间的局部到全局的多层次交互中推断出视觉线索 。在每个模块中,作者引入了一种多模态注意机制来帮助提取问题-视频交互,并对不同层次的信息采用残差连接。通过在三个VideoQA数据集上的广泛实验,作者证明了本文的方法比现有的方法具有更好的性能。

1. 论文和代码地址

Temporal Pyramid Transformer with Multimodal Interaction for Video Question Answering

论文地址:arxiv.org/pdf/2109.0473

代码地址:GitHub – Trunpm/TPT-for-VideoQA

2. Motivation

随着计算机视觉和自然语言处理的进步,视频问答(VideoQA)在视频检索、智能QA系统和自动驾驶等方面的广泛应用受到越来越广泛的关注。与图像问题回答相比,VideoQA更具挑战性,因为它除了建模问题与每个图像之间的语义相关性外,还需要进一步准确地提取问题与视频之间的动态交互。

在现有的方法中,文本和视频的外观-运动信息之间的多层次交互作用在很大程度上被忽略了。从问题中看到的线索在视觉信息中具有清晰的层次结构,这表明需要从视频中提取不同时间尺度上的信息 。如上图所示,为了理解“pandas”和“bench”的语义,信息性的视觉内容可以在时间金字塔的一个较粗粒度的层次上找到,也就是说全局信息就足够了。随着金字塔沿时间尺度的增加,包含细粒度和连续信息的视觉内容被暴露出来,这有助于理解问题中“play”和“how many”的语义。这个例子揭示了在不同时间尺度上的视觉内容有助于问题与视频之间的交互作用,因此使用时间金字塔是一种实用的方法。

基于上述发现,作者提出了一种用于VideoQA多模态交互的时间金字塔Transformer(TPT)模型。该模型的结构如上图所示。 TPT模型由特定于问题的Transformer(QT)和视觉推理(VI)这两个模块组成。对于由视频构建的时间金字塔,QT基于不同层次的特征序列,提取每个单词与视频之间的粗到细的语义交互特征,以获得与视频相关的问题的语义理解 。VI提取问题与视频之间的局部到全局的组合语义,并逐渐获得回答所需的视觉线索 。在这两个模块中,Transformer结构将扩展为层内多模态Attention交互 ,并采用层间残差连接 进行信息传递。本文的模型整合了细粒度层次的局部信息和粗层次的全局信息,利用不同时间尺度的外观-运动信息来理解文本和视频的交互作用。

3. 方法

3.1. Overview

给定一个视频V和问题Q,VideoQA的目的是从答案空间A推断正确答案[公式]。通常,VideoQA可以建模如下:

其中f为具有可训练参数θ的模型的映射函数。

如上图所示,首先从输入视频中构建时间金字塔,提取不同层次的外观-运动特征。将输入的问题转换成问题embedding。然后,作者提出了一个QT模块,利用问题embedding作为查询,利用金字塔Transformer从不同层次的视觉特征中提取多模态交互,来获得理解相关视觉内容的问题embedding。然后,作者提出了一个VI模块,在问题语义的指导下完成视觉推理。最后,结合这两个模块的特征,以分类或回归的方式形成最终的答案输出。

3.2. Temporal Pyramid and Feature Extraction

以往的工作在很大程度上忽略了文本和视频在不同时间尺度上的互动。在这项工作中,对于每个输入视频,作者首先构建一个时间金字塔,其层次从1到N。在不同的层次上,视觉信息存储了不同的时间尺度。为了构建这样的时间金字塔,在第n层,作者将视频输入分割成[公式]个片段,其中每个片段包含按照原始时间顺序从视频中连续采样的T帧。在第n层,视频片段组[公式]可以表示为:

其中[公式]是n层第i段视频段的第一帧。

预训练的ResNet模型用于从时间金字塔中提取外观特征。对于时间金字塔第n层,提取的帧级外观特征[公式]可以表示为:

其中每个外观特征向量[公式]是从各自的帧[公式]中提取的。

类似地,使用预训练的3D ResNet模型提取一组分段的运动特征[公式]

其中,每个运动特征向量[公式]分别从各自的视频片段[公式]中提取。

然后,作者使用一个线性层,将在每个层次上提取的外观-运动特征,即[公式][公式],映射到一个d维特征空间。

在按照顺序将每层视频片段特征concat后,第n层的外观-运动特征[公式]可以表示为:

对于问题和候选答案,作者采用了Glove获取相应的特征embedding,然后通过一个线性层将特征映射到d维。然后采用一个Transformer模型来建模上下文信息,最后问题和候选答案特征可以表示为:

3.3. Question-specific Transformer

QT模块旨在建立一个与视觉内容相关的问题特征表示。如上图所示,QT模块包括一个金字塔Transformer结构,用于问题与不同层次的外观-运动特征之间的多模态相互作用。为了准确地理解问题,低层的输出通过外部残差连接与下一层连接,使得在高层中也能利用细粒度的视觉特征。在第n层中,用可学习的位置嵌入[公式]添加到外观-运动特征[公式]中,以保持视频特征序列的位置信息。

QT模块的计算表示如下:

其中,[公式]是多头多模态注意层:

给定外部残差连接,第n层的问题语义输出计算为:

(这个模块简单的说就是用问题作为query,用视觉信息去attend问题表示)

3.4. Visual Inference

VideoQA的一个重要步骤是通过给定问题的语义来推断外观-运动特征中的视觉线索。在VI模块的结构如上图所示。给定问题语义表示,我们需要在外观-运动特征[公式]的不同时间尺度上寻找回答的线索。对于金字塔,在较高层次上提取的表示具有更丰富的局部信息,而在较低层次上提取的表示具有更完整的全局信息。在这里,作者通过将从第N层到第1层进行残差连接,对视觉线索进行局部到全局的搜索。计算与QT相似:

(这个模块简单的说就是用视觉信息作为query,用问题去 attend 视觉信息)

此外,作者在这里还引入了多模态Transformer层(MTL),来聚合上一层的视觉信息和当前层的视觉信息,计算如下:

4.实验

4.1. Comparison with the State-of-the-arts

在TGIF-QA数据集上,上表显示了本文方法和SOTA方法的对比。

上表给出了一个定性的结果。

在MSVD-QA和MSRVTT-QA数据集上,上表显示了本文方法和SOTA方法的对比。

上表给出了一个定性的结果。

4.2. Ablation Study

Impact of the Temporal Pyramid

上表展示了时间金字塔在TPT结构中的作用。

Impact of the Number of Pyramid Levels

上表显示了时间金字塔的深度对实验结果的影响,可以看出深度为3的时候,能够达到比较好的实验结果。

Impact of the QT module

上表展示了QT模块的作用,可以看出QT对于最终模型的性能有促进作用。

5. 总结

在本文中,作者提出了一种具有多模态交互的时间金字塔Transformer(TPT)模型,该模型分别包含QT和VI模块,以更好地理解问题和视觉推理。在原始问题embedding的指导下,QT模块从外观-运动特征的时间金字塔中获取与视觉相关的问题语义。然后,VI模块进一步从特征金字塔中搜索视觉线索。对于这两个模块,作者提出了一种多模态Transformer架构来帮助提取多层次的交互信息,并使用残差连接在金字塔的不同层次上进行信息交互。

转载请注明:《《TPT》-中科院提出用于VideoQA的跨模态交互时间金字塔Transformer