2022-ACL
MMCoQA : Conversational Question Answering over Text, Tables, andImages
代码
一、摘要和结论
Abstract
领域:对话QA
本文解决了现存方法中,只利用 单一模态源信息 ,比如的段落或知识图谱,来回答用户的问题,而忽略了重要视觉信息,更不用说多种形式的不同知识来源的信息。
新的研究任务:多模态会话问答任务 ,通过多轮对话,用多模态知识回答用户问题。
构建新的数据集:MMCoQA ,问题被充分注解,不仅有自然语言的答案,也有相应的证据和有价值的反文本化自包含的问题 | valuable decontextualized self-contained questions。MMCoQA数据集包含多个监督标签。
提出模型:提出一个端到端的 baseline 模型,从而将复杂的研究任务划分为 问题理解、多模态证据检索和答案抽取 。
Conclusion
- 现有的开放式检索会话QA和多模态QA方法都是单模态或单转的,不能很好地处理MMCoQA问题。
- MAE变量的结果部分地评价了MMConvQA数据集的质量。当删除会话上下文时,性能下降,这将验证对会话上下文的依赖关系。附加以前的gold答案或直接使用gold问题可以提高性能,这与数据集构建策略是一致的。
- 使用额外的数据有利于模型,说明数据集的大小比较小,而预训练可以缓解这一问题。
- 人工将相关证据补充到检索列表中,其检索效果明显优于常规的MAE模型。由于多模态知识之间的关系复杂,证据检索似乎成为当前模型的瓶颈。
模态分析
-
从a中可以看出,在Image Q上的性能是最差的。可能是图像特征提取器有点粗糙,需要更多细粒度的交互。
-
我们选择了一些与相同实体相关联的项,并进行可视化。图像嵌入是孤立的,说明图像的视觉意义和语义意义没有很好地对齐。有些文本和表格的嵌入是部分融合的,但还c。对于多模态的文档检索,成功的密集检索方案似乎还需要进一步改进。
Guidline
问题分解
如表4所示,我们给出了一个复杂问题的题文,题型为Compose(TableQ,ImageQ)。我们已经确定这个复杂的问题可以分解成两个问题:第一个是ImageQ,它的答案是John Gilmour;第二个是“TableQ”,它的答案是“From New York Rangers”。
我们注意到,原始问题的题型非常重要,它表达了复杂问题的逻辑流程。题目类型及含义:
- Tabel Q:返回一个关于表格的问题
- Text Q:返回一个文本语料库问题
- Image Q:返回一个关于单个图像的问题
- 问题分解原则:
- 分解的问题尽量接近原问题
- 分解的问题应和给定的答案保持一致
- 分解的问题应该是独立的,可以在没有任何对话语境对情况下回答
- 将问题提炼成自然对话原则:
- 提炼的问题应尽可能依赖对话上下文,如果没有上下文将会很难回答
- 注释者可以使用一些代词替换前面的问题或者答案中出现的实体,也可以使用一些省略句,比如“什么时候?”“怎么做?”也鼓励使用一些同义词
- 尽量让整个对话顺利进行。可以重新排列问题,删除一些低质量的问题,也可以报告删除整个对话
二、文献综述
研究现状
使用外部知识来源获得正确答案的 QA 系统
- 基于知识的 QA
- 基于文档的 QA
- 基于社区的 QA
会话式 QA 系统
现有的工作通常依赖于单一的知识来源,例如段落或者知识图谱,假设其中包含足够的证据来提取用户问题的答案。
多模态对话问题回答图
用户在对话中提出问题,QA 系统从 多模态知识集合 中提取准确答案,以满足用户信息需求
局限性
- 在现有的对话QA系统中,忽略了一些重要的视觉线索。图像可以生动地表达很多信息,例如上图所示。
- 会话中的一系列问题可能动态地要求包含不同形式的多个知识来源,而非只有一个恒定的知识来源。例如上图所示,三个问题分别设计图像、段落和结构化图表,来提取正确答案。
所以本文在这些技术领域的基础上,提出了一种新的研究任务,即多模态会话问答(multimodal conversational question answer,简称 MMCoQA ),旨在通过多回合对话,利用多模态知识资源回答用户的问题。
MMCoQA的必要性与挑战
- 多模态知识的优先级。对于一个特定问题,一种模态可能比其他模态更适合找到正确答案。MMCoQA 中并没有给出最适合用于回答当前问题的模态。如何正确地确定当前问题的适当形式是一个挑战。
- 多模态知识的一致性。不同的模态可以提供一致的证据来提取问题的正确答案。然而如何利用不同模态之间的一致性来验证答案,也是一个挑战。
- 多模态知识的互补性。有些问题可能需要不同模态间的证据来共同推理最后的答案。因此,要回答这种问题系统需要具备跨多种模态的推理能力。
更重要的是,上述的三个问题并不是独立的,而是随着对话的进行而交织在一起的。因此,MMCoQA 并不是多模态 QA 和会话 QA 的简单组合,而是需要深入的多模态理解和跨多回合对话的推理能力。
研究贡献
- 第一个针对多模态会话的问答任务。明确了这项任务的研究范围,并确定了潜在的研究挑战
- 为多模态会话 QA 任务构建了第一个数据集 MMConvQA。其中包含多个监督标签,包括相关的证据、答案和非文本化的问题。这促进了该社区中的数据驱动方法
- 引入端到端的模型作为 baseline,并报告一组结果。实验结果表明该方法还有很大的改进空间。还发布了本工作的数据和代码。
Related Work
会话式 QA
基于文本的对话 QA
- 二元术语分类
- Query resolution for conversational search with limited supervision.
- 问题重写
- Can you unpack that? learning to rewrite questions-in-context
- Open-domain question answering goes conversational via question rewriting.
- Question rewriting for conversational question answering.
- Few-shot generative conversational query rewriting.
- 最近的一些工作,将对话 QA 扩展到开放域设置(open-domain setting ),其中相关段落必须检索,而不是直接给出。
- Open-retrieval conversational question answering.
- Dynamic graph reasoning for conversational open-domain question answering.
- Open-domain question answering goes conversational via question rewriting.
基于知识的会话 QA
- 回答基于知识库的对话问题
Look before you hop: Conversational question answering over knowledge graphs using judicious context expansion. - 创建了一个大规模数据集
Complex sequential question answering: Towards learning to converse over linked question answer pairs with a knowledge graph. - 多任务学习框架,以解决对话中的共参考和同时检测实体。
Multi-task learning for conversational question answering over a large-scale knowledge base.
然而,这些现有的方法只涉及一个知识来源,忽略了 重要的视觉线索 。
VQA
VQA 任务
- Overcoming language priors in VQA via decomposed linguistic representations.
- Kvqa: Knowledgeaware visual question answering.
我们在 VQA 任务中,更关注的是多模态知识来源的问答。
多种媒介的 QA
- 用图像和视频数据来丰富文本问答
Multimedia answering: enriching text qa with media information. - 在特定场景下进行探索
Are you smarter than a sixth grader? textbook question answering for multimodal machine comprehension. - 多模态 QA 挑战,其中问题是模糊的,而且只根据问题来确定模态不容易实现。
ManymodalQA: Modality disambiguation and qa over diverse inputs. - 将复杂问题场景引入到多模态 QA 中,其中一个复杂问题可以通过几种模态来回答。
我们认为,对话式 QA 是一种结合多种知识来源的自然场景,随着对话的进行,需要动态地使用不同的模式。
三、理论研究
数据集构建
基于 MMQA 数据集,包含许多复杂的问题,这些问题通过多种知识模式来回答。
开发对话式 QA 系统的一个重要意图是通过多轮对话 逐步满足用户复杂信息需求 。直观提出将复杂问题分解为对话式问题。
只分解复杂问题来获得对话问题,则对话问题数量相当有限,一个复杂问题只能分解为两到三个问题。因此,我们将自动生成潜在对话,作为注释器的参考,以便对其进行细化。
生成潜在对话
对话的后续问题通常与前面的问题或答案中出现的主题相关。因此我们将包含相同实体的问题添加到一个潜在的对话中。
- 识别所有实体
对于问题池中的所有问题( MMQA 数据集中),识别问题文本和回答文本的实体。 - 随机选择对话种子
从问题池中随机选择一个问题,作为对话的种子。 - 随机选择下一个兴趣点
在用户和系统交互的过程中(对话过程中),用户可能会产生新的兴趣实体。因此,我们从之前的问题和答案中随机选择一个已识别的实体作为用户的下一个兴趣点。 - 随机选择后续问题
从包含所选实体的问题池中随机选择一个问题作为对话中的后续问题。一旦选择了一个问题,它将从问题池中删除,来保持对话的多样性。 - 不断添加后续问题
不断添加后续问题,直到对话数量超过一定数量,或者问题池中没有相应的问题。
重复上述过程,最终获得了一些人工对话。
分解复杂问题
为了促进复杂问题的分解,还向注释器提供了对应复杂问题在 MMQA 数据集中的类型和中间答案。如下图,Potential Conversation 中的 Q1 是一个复杂问题,类型是 Compose(TableQ, ImageQ)。Compose(A,B)表示 A 的问题中包含的实体,在 B 的答案中出现。而 TabelQ 和 ImageQ 则表示 A 和 B 的问题可以分别用表格和图像来回答。
因此,注释器可以根据复杂问题的类型轻松地将这个复杂的问题分解为两个顺序的问题。
精炼对话问题
在分解之后,同一个注释器将会对对话问题进行细分,以便进行人工对话。在注释前,每个注释器都展示了现有对话数据集中的一些经典实例。注释器在充分了解对话 QA 中的语言现象,如参照、省略等,之后为人工对话编写对话问题。注释器可以删除和重新安排对话中的问题,以保证对话的顺利进行。也可以报告删除整个对话,如果被认为是低质量的。
数据集分析
MMConvQA 包含 1179 个对话和 5753 对 QA 。平均每段对话有 4.88 对 QA ,如哈下表所示。多模态知识集合包括 218285 个段落, 10042 个表格,和 57058 张图片
每个图片都用相关的证据(知识集合中的表格、图像或段落)和自然语言回答进行注解。此外,每个问题还伴随着一个相应的自包含的问题。
MAE 模型
引入一个带有自适应提取器的多模态对话质量保证系统 MAE 作为 baseline 。MAE 将 MMCoQA 任务分为三个步骤:
- 对话问题理解
- 多模态证据检索
- 自适应答案提取
四、实验
如何结合前人的方法提出的创新点并了解实验框架,创新点有什么优点又有什么缺陷
Baseline
在 MMCoQA 数据集上评估了开放检索对话 QA 系统 ORConvQA 和多模态 QA 模型 ManyModalQA。为了更好的说明数据集的特征,开发了 MAE 的几个变体,包括无对话上下文、黄金问题、黄金回答、黄金答案、证据给出、QR(问题重写 Question Rewritting)和预训练。
实验设置
数据集
见数据集构建
衡量指标
综合评估了 baseline 在证据检索和答案提取方面的性能。采用 Recall 和 NDCG 来评估检索表的覆盖和排列位置。
基于之前的对话 QA 任务:Coqa: A conversational question answering challenge.
我们在此基础上报告单词水平的宏观平均值 F1 和精确匹配 EM ,以估计答案抽取的性能。
实验细节
实验结果分析
- ER:需要被检索的相关证据
- EG:表示手工收录的相关证据
- 计算前 2000 名检索条目的 Recall 和 NDCG
根据结果的分析可以得出以下结论
- 现有的开放式检索对话 QA 和多模态 QA 方法都是单模态或者单转的,不能很好处理 MMCoQA 问题
- MAE 变量的结果部分评价了 MMConvQA 数据集的质量。删除对话上下文时,性能下降,验证了对话上下文的依赖关系。附加以前的黄金答案或直接使用黄金问题可以提高性能,这与数据集构建是一致的。
- 使用额外的数据有利于模型,说明数据集的规格比较小,而预训练可以缓解这一问题。
- 人工将相关证据补充到检索列表中,其检索效果明显优于常规的 MAE 模型。由于多模态知识之间的关系复杂,证据检索似乎成为当前模型的瓶颈。