论文浅尝 - ACL2020 | 利用知识库嵌入改进多跳 KGQA

论文笔记整理:吴畏,东南大学硕士研究生。


论文浅尝 - ACL2020 | 利用知识库嵌入改进多跳 KGQA_第1张图片

来源: ACL 2020

论文地址: https://www.aclweb.org/anthology/2020.acl-main.412.pdf

开源代码: https://github.com/malllabiisc/EmbedKGQA

动机

在多跳KGQA中,系统需要对KG的多个边缘执行推理以推断出正确的答案。 KG通常不完整,这给KGQA系统带来了额外的挑战,尤其是在多跳KGQA的情况下。最近的方法已使用外部文本语料库来处理KG稀疏性。而本文期望通过利用KG embedding的链接预测属性,不依赖外部数据解决KG不完整问题。

贡献

1.提出了EmbedKGQA,一种用于多跳KGQA任务的新方法。EmbedKGQA是第一个将KG嵌入用于此任务的方法。EmbedKGQA在执行稀疏KG上的多跳KGQA方面特别有效。

2. EmbedKGQA放宽了从预先指定的本地邻居选择答案的要求,这是先前方法中不受欢迎的一个约束。

3.通过在多个现实世界数据集上进行的广泛实验,证明了EmbedKGQA取得了STOA的效果。

方法

本工作首先学习KG的表示。然后给定一个问题,学习问题的Embedding, 最后,它将这些embedding结合起来以预测答案。

在以下各节中,我们介绍EmbedKGQA模型,它包含3个模块:

1) KG Embedding模块: 为KG中的所有实体创建Embedding

2) 问题Embedding模块: 得到问题的Embedding

3) 答案选择模块: 减少候选答案实体的集合并选择最终的答案

论文浅尝 - ACL2020 | 利用知识库嵌入改进多跳 KGQA_第2张图片

1. KG Embedding模块

为所以的实体和关系训练ComplEx Embedding,根据QA训练集中KG实体的覆盖范围,此处学习的实体Embedding将保持frozen状态或可以在后续步骤中进行fine-tune。

2. 问题Embedding模块

该模块使用RoBERTa将自然语言问题q嵌入到768维向量。

给定一个问题q,主题实体h∈E和答案实体A⊆E的集合,它以以下方式学习问题嵌入:

论文浅尝 - ACL2020 | 利用知识库嵌入改进多跳 KGQA_第3张图片  公式1

其中φ是ComplEx 的scoring function,是先前学习的实体Embedding。

对于每个问题,将使用所有候选答案实体计算分数φ(.)。通过最小化分数sigmoid与目标标签之间的二进制交叉熵loss来学习模型,其中正确答案标签为1,否则为0。

当实体总数很大时,将进行标签平滑。

3. 答案选择模块

如公式2所示:

       公式2

在推断阶段,本模型针对所有可能的答案上进行(head,question)对的评分。对于相对较小的KG(例如MetaQA),我们只需选择得分最高的实体。如果KG很大,则修剪候选实体可以显着改善EmbedKGQA的性能。

如何修剪候选实体的具体方法就是关系匹配。学习得分函数S(r,q),对给定问题q的每个关系r∈R进行排名,如公式3所示:

论文浅尝 - ACL2020 | 利用知识库嵌入改进多跳 KGQA_第4张图片                     公式3

其中是问题和关系的embedding,在所有关系中,选择得分大于0.5的那些关系。将其表示为集合。对于到目前为止我们已经获得的每个候选实体,我们在头实体h和之间的最短路径中找到关系。将每个候选答案实体的关系得分定义为它们的交集大小(公式4)。

论文浅尝 - ACL2020 | 利用知识库嵌入改进多跳 KGQA_第5张图片                     公式4

最终模型使用关系得分和ComplEx得分的线性组合来找到答案实体(公式5)。

       公式5

实验

本工作在两个数据集上面进行了实验,一个是电影领域中包含超过40万个问题的大规模多跳KGQA数据集MetaQA, 另一个是基于Freebase的多条问答数据集WebQuestionsSP。

下面两个表展示了本工作在这两个数据集上的效果,完整的KG是测试QA模型最简单的设置,因为创建数据集的方式是答案始终存在于KG中,并且路径中没有丢失的链接。但是,这不是一个现实的设置,因此QA模型应该也可以在不完整的KG上工作。因此,本工作通过随机删除KB中的三元组的一半来模拟不完整的KB,表中KG-50表示删除了一半三元组后的KG。

1.MetaQA

如表1所示,EmbedKGQA在多跳情况下以及在缺失KG的情况下可以超过STOA。

论文浅尝 - ACL2020 | 利用知识库嵌入改进多跳 KGQA_第6张图片

表1 . MetaQA上多条问答的hits@1结果

2.WebQuestionsSP

WebQuestionsSP使用了更少的训练样本和更大的KG,这使得多跳KGQA要困难得多。如表2所示,在50%KG的情况下,WebQSP可以超过STOA,包括使用了额外的文本信息的PullNet。这可以归因于这样的事实,即通过KG Embedding隐式捕获了相关且必要的信息。

论文浅尝 - ACL2020 | 利用知识库嵌入改进多跳 KGQA_第7张图片

表2. WebQuestionsSP上多条问答的hits@1结果

总结

本工作通过在KG Embedding的链接预测属性来缓解KG不完整性问题,可以在KG缺失的情况下很好的完成多跳的问答而无需使用任何其他数据。它训练KG实体embedding并使用它来学习问题embedding,并在评估过程中,对所有实体(head实体,问题)再次进行评分,并选择得分最高的实体作为答案。最终在MetaQA和WebQuestionsSP数据集上获得了优秀的表现,特别是的在KG缺失的时候可以非常好的回答问题。

 


 

OpenKG

开放知识图谱(简称 OpenKG)旨在促进中文知识图谱数据的开放与互联,促进知识图谱和语义技术的普及和广泛应用。

点击阅读原文,进入 OpenKG 博客。

你可能感兴趣的:(python,深度学习,人工智能,机器学习,java)