知识图谱问答新方法突破

本文介绍两项基于可微分知识图谱的端到端问答技术创新:通过机器学习组件替代人工标注实现实体解析自动化,以及引入交集运算处理多实体查询,在实验中分别将多实体查询性能提升14%和19%。

新方法改进基于知识图谱的问答系统

问答是自然语言处理中的常见任务,模型接收诸如“《蒙娜丽莎》在哪个城市?”的问题,并训练预测正确答案“巴黎”。训练问答模型的一种方式是使用知识图谱,它以结构化格式存储世界事实。历史上,基于知识图谱的问答系统需要独立的语义解析和实体解析模型,训练和维护成本高昂。但自2020年起,该领域开始转向可微分知识图谱,允许单一端到端模型接收问题作为输入并直接输出答案。

在今年自然语言处理实证方法会议(EMNLP)上,我们提出了两项基于可微分知识图谱的端到端问答扩展研究。

在《使用可微分知识图谱的端到端实体解析与问答》中,我们阐述了如何将实体解析集成到基于知识图谱的问答模型中,实现自动化处理。这是一项潜在的节省劳动力的创新,因为现有方法需要人工标注实体。

在《通过交集扩展可微分知识图谱的端到端问答》中,我们解释了如何处理涉及多实体的查询。在两个不同数据集的实验中,我们的方法将多实体查询性能分别提升了14%和19%。

传统方法

典型知识图谱中,节点代表实体,节点间边代表实体间关系。例如,知识图谱可能包含事实“蒙娜丽莎|展出于|卢浮宫”,通过“展出于”关系连接“蒙娜丽莎”和“卢浮宫”实体。类似地,图谱可通过“位于”关系连接“卢浮宫”和“巴黎”实体。模型可学习使用知识图谱中的事实来回答问题。

传统基于知识图谱的问答采用模型流水线方法。首先,问题输入语义解析模型,该模型训练用于预测查询。查询可视为在知识图谱中执行操作的指令,例如“查找《蒙娜丽莎》展出地点,然后查询所在城市”。接着,问题输入实体解析模型,将句子部分(如“蒙娜丽莎”)链接到知识图谱中的ID(如Q12418)。

虽然流水线方法有效,但存在缺陷。每个模型独立训练,需分别评估和更新,且每个模型需要训练标注,收集过程耗时昂贵。

端到端问答

端到端问答是纠正这些缺陷的方法。训练期间,端到端问答模型接收问题和答案,但不提供知识图谱操作指令。相反,模型根据正确答案学习指令。2020年,Cohen等人提出使用可微分知识图谱执行端到端问答,将知识图谱表示为张量,查询表示为可微分数学运算。这使得完全可微分训练成为可能,仅凭答案即可为模型所有部分提供训练信号。

《使用可微分知识图谱的端到端实体解析与问答》

在第一篇论文中,我们将端到端模型扩展至包含实体解析组件的训练。先前工作将实体解析任务(将“蒙娜丽莎”链接至Q12418)排除在模型范围外,依赖独立实体解析模型或人工实体标注。

我们提出将实体解析作为问答模型的一部分进行训练。为此,我们从与Cohen等人实现相似的基线模型开始,该模型具有编码器-解码器结构和注意力机制,接收问题并返回带概率的预测答案。

我们通过引入跨度检测组件向基线模型添加实体解析。该组件识别句子中所有可能指代实体的部分(跨度)。例如,在问题“谁编写了汤姆·汉克斯主演的电影?”中,存在多个跨度,如“电影”或“汤姆”,我们希望模型学习给正确跨度“汤姆·汉克斯”更高分数。

然后对于每个识别出的跨度,我们的模型对跨度可能指代的知识图谱中所有可能实体进行排名。例如,“汤姆·汉克斯”也是一位地震学家和神学家的名字,但我们希望模型学习给演员更高分数。

跨度检测和实体解析在新的实体解析组件中联合进行,返回带分数的可能实体。在知识图谱中查找实体并从推理组件跟踪路径产生预测答案。我们相信这种联合建模是我们方法效率提升的原因。

在实验中,我们使用两个英文问答数据集。发现尽管我们的实体解析和端到端模型性能略低于基线,但非常接近,在两个数据集上差异约为7%和5%。这是令人印象深刻的结果,因为基线模型使用数据集中的手工标注实体,而我们的模型联合学习实体解析和问答。通过这些发现,我们证明了在单一端到端模型中学习执行实体解析和多跳推理的可行性。

《通过交集扩展可微分知识图谱的端到端问答》

在第二篇论文中,我们将端到端模型扩展至处理更复杂的多实体问题。以问题“娜塔莉·波特曼在《星球大战》中扮演谁?”为例,该问题有两个实体:娜塔莉·波特曼和《星球大战》。

先前的端到端模型训练从知识图谱中一个实体出发跟踪路径。但这不足以回答多实体问题。如果我们从“娜塔莉·波特曼”开始查找她扮演的所有角色,会得到不在《星球大战》中的角色。如果我们从《星球大战》开始查找所有角色,会得到娜塔莉·波特曼未扮演的角色。我们需要的是娜塔莉·波特曼扮演的角色与《星球大战》中角色的交集。

为处理多实体问题,我们使用新操作扩展端到端模型:交集。对于问题中的每个实体,模型独立跟踪从实体出发的路径,到达中间答案。然后模型执行交集(我们实现为两个向量的逐元素最小值),以识别中间答案共有的实体。仅出现在所有中间答案中的实体在最终答案中返回。

在实验中,我们使用两个英文问答数据集。结果表明,引入交集较基线性能在一个数据集上提升3.7%,另一个提升8.9%。更重要的是,我们发现性能提升来自更好处理多实体问题,其中交集模型在一个数据集上超越基线超过14%,另一个超过19%。

在未来工作中,我们计划通过改进实体解析继续开发端到端模型,使其与人工实体标注竞争;将实体解析与交集集成;并学习处理更复杂操作,如最大值/最小值和计数。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计