Abstract
现有的可解释的和显式的视觉推理方法只执行基于视觉证据的推理,而不考虑视觉场景之外的知识。为了解决视觉推理方法和真实世界图像的语义复杂性之间的知识差距,我们提出了第一个显式视觉推理方法,该方法结合了外部知识,并对高阶关系注意进行建模,以提高泛化能力和可解释性。具体来说,我们提出了一个知识合并网络,它为来自外部知识库的实体和谓词显式地创建和包含新的图节点,以丰富用于显式推理的场景图的语义。然后,我们创建一个新的图形关联模块,对丰富的场景图进行高阶关系关注。通过明确引入结构化的外部知识和高阶关系注意,我们的方法在GQA和VQAv2数据集上展示了显著的可推广性和可解释性。
Introduction
视觉问答旨在回答关于视觉场景的自然语言问题。这是一项漫长的任务,需要深入理解视觉和语言输入,以及回答开放式问题的知识。虽然深度神经网络(DNN)非常强大,但大多数基于DNN的VQA方法都是由问题和答案之间的表面相关性驱动的黑匣子[2]。因此,这些模型在作出推论或概括方面是有限的。他们也不能解释他们的决策过程,特别是复杂的问题,需要多个推理步骤才能回答。DNN模型缺乏通用性或可解释性,降低了其在医疗保健、安全和金融等多个领域的应用速度。
最近的研究旨在通过将视觉信息表示为结构化场景图[24]或将问题转换为可执行神经模块的程序[11,12]来解决这些问题。这些可解释的显式推理模型在合成场景和问题上取得了显著的性能[14]。然而,由于真实世界图像和问题的复杂性,当在更一般的VQA数据集上测试时,它们仍然远远不能令人满意[5,13]。这些数据驱动的方法依赖于检测对象及其关系的准确性和完整性,并且不了解常识或视觉观察之外的其他有用知识。例如,如图1所示,回答“锤子右边的那个人穿衬衫了吗?”视觉推理模型需要检测衬衫,并注意它是否存在。这个例子中的推理任务具有挑战性,因为衬衫在场景中是无法检测到的。另一方面,人类可以很容易地整合“男人穿西装”的观察和“西装通常穿在衬衫上”的常识知识,来推断男人和衬衫之间的高阶关系。为了实现视觉推理的可概括性和可解释性,我们提出了一种基于知识整合和高阶关系注意的可解释的显式视觉推理方法。它描述了与现有方法相比的两个主要优势:
首先,现有的视觉推理研究要么隐含地将外部知识作为语言特征嵌入[12,24],要么将信息从外部知识图传播到具有静态拓扑的场景图中[32],这不能解决视觉场景中未检测到的对象或缺失的概念。不同的是,在这项工作中,我们通过添加实体和谓词作为新节点,将外部知识图中的常识知识显式地合并到场景图中。如图1所示,使用我们提出的方法,可以将外部关系衬衫-西装下和西装-外衫添加到场景图中,以丰富场景图。这种丰富的场景图提供了更丰富的语义,支持可概括和可解释的推理。
第二,现有方法依赖于检测到的二元关系,但是缺乏推断场景图中远处节点之间的高阶关系的机制。例如,如图1所示,现有的神经模块网络不能用一阶关联模块进行正确推理,因为在人和衬衫之间没有检测到直接关系,或者问题没有指定两者(例如,穿着和过度)的关系。我们通过设计一个新颖的图形相关模块来解决这个挑战,该模块支持高阶关系