Learning Visual Knowledge Memory Networks for Visual Question Answering论文解读

该论文提出了视觉知识记忆网络(VKMN)来将结构化知识与视觉特征融合进端对端的学习框架。
本文的主要贡献是:
(1)我们提出了VKMN,一个简单而有效的端到端可训练框架,它继承了基于注意力的方法和基于联合嵌入的方法的优点,同时避免了当前基于知识的解决方案的知识的不准确限制。
(2)我们建立了一个视觉问题特定的知识库,它不包含像Freebase这样的通用知识库的无关知识条目
(3)我们对VQA v1进行了大量的实验.0和v2.0基准数据集,并表明所提出的方法可以达到竞争准确性,同时在知识推理相关问题上优于最先进的方法。

为什么需要将视觉内容和事实知识结合?

在这里插入图片描述
(a)目标明显的:答案可以直接从图像识别结果(对象,属性,字幕等)中获得;
(b)目标难识别的:图像中的目标太小或不清楚使得难以分辨,需要支撑的事实来获得正确的答案; (c)目标不可见的:无形的目标,要求推论和图像内容相关的常识(主题特定甚至百科知识)

因此,外部知识信息至少对(b)©两个类别的VQA有用。例如,理解图像内容不足以回答图1(c)中的问题。 VQA系统必须首先认识到“水果”实体是“香蕉”,并且基于关于“动物爱香蕉”的知识进行推断以获得答案“猴子”。对于某些情况,如图1(b),即使目标内容是可见的,也可能太小和/或不清楚会产生错误的识别结果。然后,知识库将充当概率先验或调整候选列表上的决策分数并输出正确的结果。

下图说明了所提出的VKMN模型如何在视觉问答转换上工作:
在这里插入图片描述
VKMN从问题中提取多个相关知识事实,将知识事实与视觉知识注意力特征相结合,并将其存储在键值对中,以便从记忆中轻松有效地阅读。记忆阅读将使视觉问答加入高度相关的知识事实,从而提供更准确的问题回答

实现方法

1)方法概览

我们提出了视觉知识记忆网络(VKMN),旨在通过辅助视觉知识库更准确地回答视觉问题。VKMN提前构建了与视觉问题相关的知识库,这使得基于视觉特征和知识三元组设计键值对具有很大的灵活性。基本上,我们的VKMN模型包含四个模块:
(1)输入模块,用CNN模型编码输入图像,用RNN模型编码问题,并通过联合嵌入这两个模型的输出进一步获得查询表示

(2)知识定位模块,通过子图散列从预先建立的视觉知识库中检索基于查询问题或自动图像标题的相关知识条目;

(3)联合视觉和知识嵌入模块,它共同嵌入视觉特征和知识三元组(或三元组的一部分),以便于存储在key-value memory networks中;

(4)记忆模块,接收查询问题,读取存储的 key-value形成视觉知识特征,并预测答案。

下图是可视化的VKMN:
在这里插入图片描述

2)Encoding of Image/Question Inputs

使用ImageNet预训练的CNN模型处理输入图像,并使用LSTM模型处理问题。来自两种模式的特征向量联合嵌入到一个单一的视觉专注描述中,如公式1。
在这里插入图片描述
我们直接利用MLB进行视觉问题对编码。我们将带有空间注意力的MLB输出(也就是第一个MLB阶段输出)表示为u,并且将LSTM编码的问题向量表示为t,其中t经过一个内部全连接层被投射到与u相同的维度空间,t, u ∈ Rd。其中⊙表示两个载体之间的Hadamard积(element-wise product)。q是用于查询目的的视觉问题对的视觉注意描述。

3)Knowledge Spotting with Sub-graph Hashing

在阐述视觉知识表示的细节之前,先介绍如何发现与视觉问题相关的知识条目。首先,给出预先构建的视觉知识中的所有知识三元组<si,ri,ti>。生成实体集E = {si,ti}和关系集R = {ri}。将S = E∪R称为条目集,其中包含知识库中的所有不同条目。每当问题中的一个短语使用子图散列方法匹配到条目集S中的一项时,我们就会提取条目。为了减轻提取的视觉知识的不准确性,我们限制每个知识三元组应该包含从问题中提取至少两个条目。N个知识三元组的一个小子集{<s1,r1,t1>,…,<sN,rN,tN>}随后被创建。要处理视觉知识库中的长尾效应,我们在知识图上执行知识三元组扩展,以包括那些提取的N个知识三元组的直接邻域。下图展示了子图散列和知识三元组扩展的一个例子。最后,我们建立了一个记忆网络,可以存储M个知识条目(M> N)。

在这里插入图片描述
上图是子图散列和知识三元组扩展的一个例子。我们对句子进行疑问分析,得到目标“hat”和关系“wear”。我们使用知识库中的查询来扩展subject(结果用黄色表示),并根据主体加关系扩展目标(结果为灰色)。虚线表示扩展结果。

4)Joint Embedding of Visual and Knowledge

在VQA中,视觉内容对于回答视觉问题至关重要。将来自输入模块的空间注意视觉特征u∈Rd和来自知识定位模块的知识条目e ,联合嵌入组合在一起。因为e是文本表示,我们利用映射函数Φ(·)来得到实值特征向量Φ(e)∈Rde。这里Φ(·)可以是bag-of-words表示,word2vec转换,甚至如TransE[9]的知识嵌入。u和Φ(e)的特征维度通常是不同的,我们将它们投射到相同的空间。
在这里插入图片描述
其中σ(·)是双曲正切函数(在我们实验中比sigmoid函数表现更好),Wu和We是将u和Φ(e)投射到相同的维度空间中的矩阵。x被称为视觉知识注意描述,因为它将视觉特征u与知识输入e相结合。

5) Visual Knowledge Memory Network

由于VKMN将内存插槽定义为 key-value vector pairs,如(k1,v1),··,(kM,vM),在本小节中,我们首先讨论了键值对的设计,然后讨论记忆网络的推理过程。

Key-value design. 哪个部分作为key,哪个部分作为vlaue的设计是非常灵活的。对于VQA来说,因为我们不知道视觉问题中缺少知识三元组的哪一部分。**在将剩余项作为value时,有三种键组合:(1)(s,r)作为键; (2)(s,t)为键;(3)(r,t)为键。**分别为这三种情况构建了三个记忆块,如图2所示,并将其命名为三重复制。这有助于区分诸如“牙刷是用于做什么的?”和“什么可以用于刷牙?”这样的问题。
为简单起见,这仅详细描述(s,r)作为key,并将t作为后续研究中的值项。假设e=(e1,e2,e3),其中e1,e2和e3根据设计的key-value映射对应于s,r,t。确保key的表示ki和值的表示vi具有相同的维数,我们使加法假设类似于 continuous bag-of-words (CBOW),并获得ki和vi如下:
在这里插入图片描述
利用存储在VKMN中的设计键值对,推理包括三个步骤:寻址相关知识,读取相应值并回答问题。
下面是具体的解释:

key寻址:给定一个查询Q,我们对每个候选记忆插槽进行寻址,并通过将问题与每个键进行比较来分配相关概率:
在这里插入图片描述
其中·表示内积,A是记忆网络的参数矩阵,它将ki投影到与q相同的特征空间

读取value:在值读取步骤中,通过寻址概率权重平均读取记忆插槽的值,并将返回的向量o定义为:
在这里插入图片描述
在接收到o之后,使用q’=q+o对查询进行一步更新。

问题回答:将问题回答重新转换为分类问题。我们基于q’使用具有权重矩阵Wo的FC层来预测答案
在这里插入图片描述

Building Visual Knowledge Base

由于像Freebase这样的通用知识库包含数十亿的知识事实,而大多数知识条目与视觉问题无关,我们为VQA建立了自己的知识库,其中每个条目的结构都是<s,r, T>。知识库中的条目(命名为视觉知识库)来自两个来源:(i)从VQA v1.0 train+ val集中的问答对中提取的知识条目; (ii)直接从现有的Visual Genome Relationship(VGR)中获得知识三元组

首先,从问答对中将信息提取到VQA v1.0 train + val集中,以获得一堆结构化知识条目。我们提取的知识条目与其图像相关的问题更紧密地联系起来,并且表达比原始VQA数据集中的问答对更精确,更紧凑。
知识条目提取过程的工作原理如下:先用Stanford Parser解析每个问题的词性标签和依赖树。然后我们使用问题标签,依赖关系和答案从QA对中提取三元组。三元组中的所有单词都被词形化,以便相同单词的屈折变体明确地共享相同的表示。最后,我们构建了一个关系集R = {r},其中r是VGR数据集中所有可能的关系短语。对于来自VQA数据集的每个提取的三元组<s,r,t>,我们将r替换为集合R中最相似/接近的一个。线性化和关系替换可以帮助减少数据稀疏性,特别是用于捕获“长尾”条目。

其次,VGR数据集由描述对象关系的1,531,448个知识三元组组成,每个图像大约有14个三元组。我们通过去除出现频率(s,r或t)小于3的三元组来过滤VGR数据集,以获得40,480个独有的三元组。

将这两个部分组合在一起后,我们获得了大约159,970个独特三元组的视觉知识库。

实验

在这里插入图片描述在图6中显示了一些失败案例和它们的MLB注意图。这些例子与空间关系推理有关,其中MLB没有得到正确的注意区域。如果采用一些先进的注意机制如结构注意时,问题可能会得到缓解。

实验结果

在这里插入图片描述
在这里插入图片描述

发布了14 篇原创文章 · 获赞 9 · 访问量 1020

猜你喜欢

转载自blog.csdn.net/weixin_42305378/article/details/104193560