注意上的注意:用于视觉问答的框架《Attention on Attention: Architectures for VQA》

目录

一、文献摘要介绍

二、网络框架介绍

三、实验分析

四、结论


这是视觉问答论文阅读的系列笔记之一,本文有点长,请耐心阅读,定会有收货。如有不足,随时欢迎交流和探讨。

一、文献摘要介绍

Visual Question Answering (VQA) is an increasingly popular topic in deep learning research, requiring coordination of natural language processing and computer vision modules into a single architecture. We build upon the model which placed first in the VQA Challenge by developing thirteen new attention mechanisms and introducing a simplified classifier. We performed 300 GPU hours of extensive hyperparameter and architecture searches and were able to achieve an evaluation score of 64.78%, outperforming the existing state-of-the-art single model’s validation score of 63.15%.

作者认为视觉问答(VQA)是深度学习研究中越来越受欢迎的主题,它要求将自然语言处理和计算机视觉模块协调成一个单一的体系结构。 通过开发13种新的注意力机制并引入简化的分类器,我们基于在VQA挑战赛中首屈一指的模型。 我们执行了300个GPU小时的广泛超参数和架构搜索,能够获得64.78%的评估分数,超过了现有的最新单模型的验证分数63.15%。

二、网络框架介绍

作者提出的模型(图1)从Teney等人在2017年VQA挑战赛开发的获奖架构中获得的灵感。该模型分别实现了一个联合RNN/CNN的问题和图像嵌入。然后,在问题嵌入的指导下,对图像嵌入使用自上而下的注意力。模型输入是预处理的GloVe嵌入和Faster R-CNN特征向量,对问题输入进行标记,并使用GloVe词嵌入表示。然后将它们传递给GRU以创建最终的问题嵌入。然后,图像特征向量以及隐藏单元的大小为1280的问题嵌入被传递到双单向自上而下的注意模块(A3x2)中。

注意上的注意:用于视觉问答的框架《Attention on Attention: Architectures for VQA》

该模块使用以下等式计算36个图像向量(与由Faster R-CNN确定的36个不同对象相对应)中的每一个与当前问题嵌入的相关性。

注意上的注意:用于视觉问答的框架《Attention on Attention: Architectures for VQA》

其中注意上的注意:用于视觉问答的框架《Attention on Attention: Architectures for VQA》是具有非线性的全连接层,注意上的注意:用于视觉问答的框架《Attention on Attention: Architectures for VQA》是输出维数为1的线性层的权重矩阵,b是标量。

然后使用Softmax函数对注意权重进行归一化。

注意上的注意:用于视觉问答的框架《Attention on Attention: Architectures for VQA》

然后,通过使用注意力标量作为权重,获取原始36个图像向量的加权总和,创建最终的图像嵌入。

注意上的注意:用于视觉问答的框架《Attention on Attention: Architectures for VQA》

最后的图像向量和问题嵌入然后通过单独的一层转换模块,重新排列和转换输入向量到相同的维度。然后,从一层转换模块得到的向量按元素乘以一起创建最终的联合嵌入。然后,将这种联合嵌入提供给一个简单的2层分类模块,该模块通过sigmoid函数层为我们的答案词汇表中的每个可能答案输出概率。然后,将这些输出概率的最大值对应的单词作为预测答案,然后利用以下方程计算精度:

注意上的注意:用于视觉问答的框架《Attention on Attention: Architectures for VQA》

或者,这些输出概率也可以在训练期间传递给二进制交叉熵损失函数层。

注意上的注意:用于视觉问答的框架《Attention on Attention: Architectures for VQA》

三、实验分析

作者最初的实验是使用与Teney等人使用的超参数进行的。然而,我们没有使用Adadelta优化器,而是选择了Adamax,我们用一层网络取代了门控tanh层,因为我们发现这些修改能够在更大范围的超参数上产生更佳的模型。在对VQA模型的文献回顾中,发现提高模型精度的最大决定因素之一是新的和改进的注意机制。为了研究这种模式,作者实现了五个新的注意模型(A0、A1、A2、A3、APD),如图1所示。除了Teney等人提出的原始注意(AP)之外,我们还评估了这五个模型。并确定了AP、A2和A3模型是最有希望的。模型架构是根据它们在验证集上的性能进行评估的(方程5)。

注意上的注意:用于视觉问答的框架《Attention on Attention: Architectures for VQA》

超参数的微调过程,如下图3所示。在每一步,都确定了基于验证集精度的最优超参数。

注意上的注意:用于视觉问答的框架《Attention on Attention: Architectures for VQA》

在通过实验和调优确定了最优模型后,我们能够达到64.78%的评价分数,能够比现有的最先进的单一模型的验证分数63.15%高一点,如下表所示。

注意上的注意:用于视觉问答的框架《Attention on Attention: Architectures for VQA》

最后的模型使用了注意机制A3x2,它需要两个A3注意机制,并将它们与聚焦于图像的多个方面的能力并行叠加。图5包含三个热图,以显示添加第二注意机制如何使模型学习输入图像的不同方面。正如所见,对于简单的注意任务,我们的注意机制都能够在图像中找到适当的位置。然而,在图像2中,可以看到当任务需要高度集中在图像中的多个位置时,我们的模型比以前提出的模型具有优势,这在理论上导致提高了准确性。然而,对于更复杂的任务,如图像3,双重注意机制似乎变得混乱,没有提供明显的优势。注意上的注意:用于视觉问答的框架《Attention on Attention: Architectures for VQA》

四、结论

Visual Question Answering is a unique challenge in modern Artificial Intelligence research as it combines learnings from both Computer Vision and Natural Language Processing. This paper presented our fifindings on what can be done to improve performance in VQA tasks and further expands upon preexisting work by improving the model’s image features, creating new attention mechanisms, and adding a simple classifier. We were able to surpass existing state-of-the art results, and we hope the insights learned from the completion of this project will inform further progress in this task.

个人觉得,这篇文章虽然效果可能不是太好,但是里面的文章内容安排还是不错的,因为这篇论文的内容比其他论文的内容更加平易近人,写了一些实验的步骤和调试的内容,改进了一点注意力机制,并且写出了未来的想法,很不错,对于我读论文很有启发作用,值得一读。