`
目录
摘要
一、介绍
二、Related Work
三、Methodology
3.1、Multimodal Knowledge Triplet Extraction
3.2、Knowledge Triplet Representation Learning
3.3、Knowledge Accumulation and Prediction
四、Experiments
4.1、Comparison with State-of-the-Art Methods
4.2、Ablation Study
4.3、Knowledge Complementary Analysis
4.4、Long-Tail Analysis
4.5、Qualitative Analysis
4.6、Limitation Analysis
5、Conclusion
摘要
基于知识的视觉问答需要将外部知识关联起来,以实现开放式多模态场景理解。现有解决方案的一个局限性是,它们从纯文本知识库中获取相关知识,这些知识库仅包含由一阶谓词或语言描述表示的事实,而缺乏复杂但不可或缺的多模态视觉理解的知识,如何为VQA场景构建与视觉相关且可解释的多模态知识的研究较少。在本文中,我们提出了用一个显式三元组来表示多模态知识的MuKEA方法,将视觉对象和事实答案与隐式关系关联起来。为了弥补异质性鸿沟,我们提出了三个从互补角度学习三重态表示的目标损失:嵌入结构、拓扑关系和语义空间。通过采用预训练和微调学习策略,逐步积累基本和特定领域的多模态知识,以进行答案预测。在两个具有挑战性的知识要求数据集:OK-VQA和KRVQA上,我们的表现分别比最新方法高3.35%和6.08%。实验结果证明了多模态知识与现有知识库的互补优势,以及我们的端到端框架相对于现有pipeline方法的优势。
一、介绍基于外部知识库的可视化问答(KB-VQA)要求模型整合问题和图像所包含的知识之外的世界知识来回答问题。尽管在VQA任务中取得了巨大的成功,但KB-VQA对于模型来说更具挑战性,以实现与外部知识相关联的开放式多模态场景理解能力,因此,如何在这种多模态场景中恰当地表示和利用知识成为KB-VQA的核心问题。
最近的大多数工作侧重于从结构化知识图(如ConceptNet[23]和DBpedia[4])或非结构化/半结构化知识(如Wikipedia[1]和Visual Genome[20])中获取相关知识。尽管这些知识库通过大规模的人工标注提供了高质量的知识,但信息通常局限于可以用自然语言或一阶谓词的简单三元组显式表示的确定事实。因此,这些知识库很难表示高阶谓词和多模态知识,这对于人类处理复杂问题至关重要。考虑到图1(a)中的问题,模型需要每个品牌的摩托车外观的视觉知识来识别给定的摩托车,但知识图缺少此类实例化信息。图1(b)除了对物体的理解,当人们被要求进行简单的场景辨别时,比如“你能猜到那个地方是哪吗?”时,大脑中的隐性视觉知识就显得至关重要。因此,如何在VQA场景中表示和积累复杂的多模态知识,同时保持传统知识图在可解释推理中的优势,是一个重要但研究较少的问题。
新兴的多模态知识图的当前进展旨在将视觉内容与文本事实关联起来,形成增强知识图。典型的解决方案可分为两类:将图像和文本解析为结构化表示,并跨模态的将事件/实体标记出来,或者简单地将现有知识图中的实体与相关图像对齐。然而,这种多模态知识图本质上仍然通过一阶谓词表示知识,这无法模拟高阶复杂关系,例如图1(b)中“时钟”和“伦敦”之间的关系。
在本文中,我们提出了一种新的多模态知识提取和积累框架,用于KB-VQA任务。独立于现有的知识库,MuKEA背后的核心机制是通过观察VQA样本积累出具有复杂关系的多模态知识,并基于自积累的知识进行可解释的推理。为此,我们首先提出了一种新的模式,用一个显式三元组(头实体,关系,尾实体)来表示多模态知识单元,其中问题所指的视觉对象嵌入在头部实体中,事实答案的嵌入保持在尾部实体中,头部和尾部之间的隐式关系由该关系表示。我们提出了三个目标损失函数,通过对比正负三元组、对齐真值三元组和细化实体表示,从粗到细学习三元组的表示。然后提出了一种预训练和微调学习策略,从域外和域内VQA样本中逐步积累多模态知识,以进行可解释的推理。这项工作的主要贡献如下:
(1)我们提出了一个端到端的多模态知识表示学习框架,该框架首先通过显式三元组对不可表达的多模态事实进行建模,并利用现有的知识图和非结构化知识库提供补充知识。
(2)我们利用预训练和微调策略来积累域外和域内的知识,形成神经多模态知识库,它支持自动知识关联和答案预测,消除了现有“知识检索和读取”pipeline中的级联错误。
(3)在两个具有挑战性的KB-VQA数据集:OKVQA和KRVQA上,我们的模型具有很强的泛化能力,分别比最先进的模型高出3.35%和6.08%。通过显式地可视化相关的多模态知识三元组,可以很好地解释良好的性能。
二、Related WorkKnowledge-based Visual Question Answering. 最近的大多数工作都基于“知识检索和读取”pipeline,这需要高度相关的知识来支持知识推理。用自然语言描述的知识缺乏视觉信息来帮助跨模态理解。对于上述挑战,XXX使用相关图像增强知识图YAGO,以作为多模态知识。然而,这种图本质上仍然通过一阶谓词表示知识。更进一步,我们提取多模态信息来表示高阶复杂关系,并通过显式三元组来表示多模态知识以进行解释性推理。
从模型框架的角度来看,最近的大多数工作都基于“检索和读取”pipeline,该pipeline首先从知识库中检索相关事实,然后在知识图上进行显式推理,或者将隐含的知识嵌入到图像和问题中,进行答案分类。所有这些方法都依赖于对象标签来检索外部知识,这不可避免地会引入不相关的知识并导致级联错误。还有基于隐式知识的端到端方法,如预训练模型。然而,这种内隐知识主要捕捉图像-问题-答案三元组的共现性,而不是可解释和精炼的知识。在本文中,我们提出了一个端到端的多模态知识提取和积累框架,其中包含可解释的三元组知识。
Multimodal Knowledge Graph. 新兴的多模态知识图旨在将视觉内容与文本事实关联起来,形成增强知识图。一个典型的解决方案是首先将图像和文本解析为结构化表示,并跨模态的将事件/实体标记出来。关键问题在于模态内关系提取和跨模态实体连接过程,具体来说,XXX从结构化文本和视觉数据中学习知识,并维护实体对齐的三元组结构。XXX利用RDF知识图来表示基于图对齐的多模态信息,但缺乏多模态相关性。另一种解决方案直接将现有知识图中的实体与相关图像联系起来。XXX添加图像以扩展YAGO中的实体表示。然而,所有这些方法在本质上仍然是通过自然语言描述的一阶谓词来表示知识,无法对高阶复杂关系进行建模。
三、Methodology给定一张图片I和一个问题Q,KB-VQA任务的目的是预测一个答案a,该答案由给定视觉和文本内容之外的额外知识支持。我们积累三重态的多模态知识作为外部知识,以端到端的方式直接推断答案。图2给出了我们模型的详细说明,我们首先介绍了一种基于预训练的视觉语言模型从非结构化图像问答样本中提取多模态知识三元组的新模式。然后,我们提出了三个损失来学习三重嵌入,它们准确地描述了问题关注的视觉内容(头部嵌入)、问题期望的事实答案(尾部嵌入)以及二者之间的隐含关系(关系嵌入)。通过使用域外和域内数据进行训练,我们的模型积累了广泛的多模态知识,并将最优事实与答案预测相关联。
3.1、Multimodal Knowledge Triplet Extraction在VQA场景中,我们将复杂且无法表达的事实定义为三元组形式的多模态知识,即(h,r,t),其中h包含问题聚焦的图像中的视觉内容,t是给定问题图像对的答案的表示,r描述了包含多模态信息的h和t之间的隐式关系。三元组构建过程主要包括以下四个部分:
Image and Question Encoding. 由于预训练的视觉语言模型在建模模态内隐式关联和模态间隐式关联方面很强,我们首先利用预训练的模型LXMERT对问题和图像进行编码,以进一步提取多模态知识三元组。我们用Faster R-CNN来检测I中的一组对象,并用视觉特征向量表示每个对象和空间特征向量。我们使用WordPiece token化问题Q,并获得个token。我们将视觉特征和空间特征和问题特征输入到预训练好的LXMERT,获得图像的视觉嵌入和问题的文本嵌入。
Head Entity Extraction. 我们将头部实体定义为与问题最相关的视觉对象及其在图像中的上下文。为此,我们首先通过计算问题指导的对象-问题关联矩阵来评估图像中每个对象与问题中每个token的相关性,如下所示,其中W1和W2是可学习参数。:
在关联矩阵的指导下,我们选择O中的一个对象作为与问题最相关的视觉内容。由于LXMERT对所有对象之间的隐式关联进行建模,因此值得注意的是,所选以问题为中心的对象已经包含其上下文信息,这为回答涉及多个对象的问题提供了不可或缺的线索。具体而言,我们对矩阵A按行进行最大池化,以评估每个对象与问题的相关性,如下所示:
然后用hard attention代替soft attention,根据选择最相关的对象作为头部实体。与soft attention相比,hard attention为多模态知识表示提供了更稳定、更可解释的视觉内容,也更容易通过实体链接与已有的知识图相结合。在这里,我们进行Gumbel Softmax以获得近似的一个one-hot分类分布,对象oi的注意力权重计算如下:
where are i,i,d. samples drawn from Gunbel(0,1)(to do),是softmax temperature。最后,我们收集以问题为中心的对象信息,并获得头部实体表示,如下所示,其中,FFN表示前馈网络:
Relation Extraction. 与传统知识图中描述独立于特定视觉场景的一阶谓词的关系不同,我们将多模态知识中的关系定义为观察到的实例化对象与相应事实答案之间的复杂隐式关系。由于LXMERT通过层次变换器中的自注意机制捕捉图像和问题之间的隐式关联,我们从[CLS]标记中提取跨模态表示,并将其送到FFN层以获得关系嵌入,其表示为。
Tail Entity Extraction. 我们将尾部实体定义为图像问题答案样本中的答案,它揭示了与问题所指视觉对象有关的事实的特定方面。在训练阶段,我们将答案标签设置为尾部实体,从零开始学习其表示(详情见第3.2节)。在推理阶段,我们将KB-VQA任务定义为一个多模态知识图完成问题,并对我们的神经多模态知识库中的知识进行全局评估,以预测最佳尾部实体作为答案(详情见第3.3节)。
3.2、Knowledge Triplet Representation Learning由于一个三元组中的每个成分都包含不同模态和语义特定的信息,我们提出了三个损失函数来统一学习三元组的表示,以弥合异构鸿沟和语义鸿沟(因为是三个不同的模态信息)。这三个损失从互补的角度限制了三重态的表达:Triplet TransE Loss通过对比正三重态和负三重态来保留嵌入结构。Triplet Consistency Loss迫使三元组中的三个嵌入保持严格的拓扑关系,Semantic Consistency Loss将嵌入映射到一个公共语义空间,以便在多模态之间进行公平比较。
Triplet TransE Loss. 受传统知识图领域中的知识嵌入方法TransE的启发,我们在多模态场景中将类似TransE的目标损失作为结构保持约束。给定一对图像问题对,让和 分别表示其正确的和错误答案集,让和表示相应的提取头部和尾部实体表示,通过确定的间距,我们想要和每个正的尾实体之间的距离小于和每个负的尾实体之间的距离,注意这里正的尾实体指的就算正确的答案,负的尾实体指的就是错误的答案:
其中,表示余弦距离。
Triplet Consistency Loss. 上述TransE损失的问题是,在训练期间,一旦阳性对之间的距离小于阴性对之间的距离,因为损失变为0了,所以模型将停止从三元组学习。为了进一步推动嵌入满足严格的拓扑关系,我们应用均方误差(MSE)将每个正三元组顶部的表示约束为(to do):
Semantic Consistency Loss. 我们随机初始化尾部实体的查找表,并学习它们与头部和关系的表示。查找表T中的每个尾部实体对应于训练VQA样本中的唯一答案。为了在尾部表示中引入答案的语义,同时缩小文本形成的尾部实体与多模态头部实体和关系之间的异质性差距,我们将尾部词汇表上的三元组分类,并迫使模型通过负对数似然损失来选择真值尾部(正确的答案):
其中是真值的预测概率。我们的最终损失定义为:
3.3、Knowledge Accumulation and Prediction我们采用两阶段训练策略逐步积累多模态知识:(1)在VQA 2.0数据集上进行预训练,以积累基本的可视化知识。(2)对下游KB-VQA任务的训练数据进行微调,以积累更复杂的领域特定多模态知识。VQA 2.0中的所有问题分为三类:yes\no、number和others。由于前两个类别的答案不能作为事实知识,我们只保留其他类型的问题用于预训练。
在推理阶段,我们将答案预测视为一个多模态知识图完成问题。给定一个图像和一个问题,我们将它们输入到网络中,得到头实体和关系的嵌入。我们计算头实体+关系和查找表T中每个尾部实体之间的距离,并选择最小距离的尾部实体为预测的答案(举例说明一下:对于给定的图像i和问题q:杯子是什么颜色,其中“杯子”作为头部实体,“是什么”作为头部实体和尾部实体的关系,查找表T包含了所有的尾部实体,也就是所有可能的答案,计算头实体+关系和查找表T中每个尾部实体之间的距离,距离最小的就是答案):
四、ExperimentsDatasets and Evaluation Metrics. 我们在两个数据集上进行了广泛的实验:Outside Knowledge VQA(OK-VQA) 和Knowledge-Routed VQA (KRVQA)。OK-VQA包含14000多个问题,涵盖10个知识类别,由于所有问题都是人工注释的,没有固定的问题模板或知识库,这就需要探索广泛的开放式知识资源,因此这是一个多样化和具有挑战性的问题。我们通过标准VQA评估指标来评估性能。KRVQA是迄今为止最大的基于知识的VQA数据集,它基于外部知识评估模型的多步推理能力,我们使用top-1精度进行比较。
Implementation Details. 参数设置详见原文
4.1、Comparison with State-of-the-Art MethodsComparison on OK-VQA: 表1显示了与最先进模型的比较结果,包括基于知识图的方法[12,54,59,60]、基于非结构化知识的方法[29]、基于多源知识的混合方法[21,28]、基于隐性知识的预训练方法[25,44]和基于多模态知识的方法[58]。同时,我们还与传统的VQA方法进行了比较[6,18]。我们的模型MuKEA始终优于所有现有的方法,并显著优于现有的状态模型[59],高出3.35%。与大多数遵循“知识检索和读取”流程并参考固定知识库的模型相比,我们的端到端模型有效地避免了级联错误,同时受益于以人为中心的多模态知识。此外,由于我们的模型捕获了以问题为中心和信息抽象的多模态知识,而不是预训练框架中简单的视觉和语言共现的“知识”,因此我们的模型大大优于预训练模型10%。尽管KM模型通过将图像与现有知识图中的实体相关联来利用多模态知识,但它仍然缺乏具有高阶复杂关系的知识,比MuKEA低11.27%。
Comparison on KRVQA: 在表2中,我们将MuKEA与传统的VQA模型[2,38,55,56]和基于知识的模型[10]进行了比较知识库不相关的问题,只需要基本的视觉知识,而知识库相关的问题需要知识库中的事实知识。
我们的模型始终优于现有模型,与最佳模型相比,总体指标显著提高了6.08%[2]。值得注意的是,与[2]相比,MuKEA在“知识库无关”问题上的平均改善率为7.81%,这表明即使是仅涉及视觉的问题也需要多模态常识来连接低级视觉内容和高级语义。在两步推理类型3问题上,MuKEA不如某些模型,因为这些问题的答案大多是关系,而MuKEA累积和预测的尾部实体在大多数情况下是事实实体。
4.2、Ablation Study在表3中,我们在OK-VQA数据集上评估了MuKEA中知识学习损失、知识提取模式和知识积累策略的贡献。
4.3、Knowledge Complementary Analysis为了证明我们的多模态知识与现有知识库的互补优势,我们在OK-VQA数据集上进行了两个实验:(1)MuKEA和现有模型在相互错误样本下的性能,(2)MuKEA和现有模型的集成模型的性能。在这里,我们测试了三种典型的基于知识库的模型:非结构化维基百科上的MUTAN+AN[29],结构化概念网上的Mucko[60],以及多知识库上的KRISP[28]。我们重新实现了这些模型,以便在同一子集上进行公平比较。
4.4、Long-Tail Analysis为了证明该模型在罕见答案上的泛化能力,同时不过度拟合“头部”答案,我们提出了一种新的无偏度量平均精度(mAccuracy)来公平评估长尾分布答案的性能。mAccuracy受场景图生成[11,45]中无偏度量的启发,分别计算每个唯一答案的准确度,并对所有答案进行平均。我们将MuKEA与KRISP进行了比较,KRISP通过引用多个知识源展示了其强大的泛化能力。在表6中,我们的模型在mAccuracy上大大优于KRISP 8.51%,这证明了多模态知识对长尾知识的强大泛化能力,同时又不牺牲频繁引用知识的准确性。
4.5、Qualitative Analysis从图3中的案例研究中,我们得出结论,通过可视化预测的多模态知识三元组,我们的模型是可解释的:(1)MuKEA捕获有利于对象理解的实例化知识。第一行中的示例表明,MuKEA捕捉到了对象外观和以对象为中心的事实之间的复杂知识。积累的知识是以一个完整的三元组(左)或无法表达的关系(右)的形式存在的。(2) MuKEA包含多对象复杂知识,有利于场景理解。在第二排,MuKEA能够将建筑群的视觉内容与抽象的城市风格“哥特式”联系起来。(3) MuKEA通过直接对知识嵌入进行推理,避免了级联错误。现有的模型通常首先检测对象标签来检索相关知识,这会引入带有虚假标签的意外噪声。MuKEA的优点是采用语义丰富的嵌入,以端到端的方式表示关于答案的知识和原因。
4.6、Limitation AnalysisMuKEA主要在以下情况下失败(图4):(1)由于训练阶段的VQA场景有限,MuKEA缺乏足够的多模态知识,例如区分尼龙和帆布的知识。(2) MuKEA提取一些三元组失败。由于头部实体和关系是在无监督模式下提取的,视觉相似的内容会导致注意力偏离,例如背心作为徽章被错误地处理。以上问题需要进一步研究,以积累更全面的知识,评价三重态提取的质量。我们还在VQA 2.0上测试MuKEA,结果不太好,因为VQA 2.0中的问题主要依赖于视觉外观线索,而不是外部知识。
5、Conclusion在本文中,我们提出了一种新的基于知识的视觉问答框架,该框架侧重于多模态知识的提取和积累,而不是使用外部知识库。我们提出了一种新的模式,通过一个显式的三元组和三个损失函数来表示多模态知识,以从粗到细学习这些表示。我们采用预训练和微调策略,逐步积累多模态知识。我们的模型在KB-VQA数据集上的表现优于最新技术,并从多模态知识的角度推进了最近的研究。我们证明了现有知识图的互补性,如何将MuKEA与知识库有效结合将是未来的工作。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)