文章标题:《Do Pre-trained Models Benefit Knowledge Graph Completion?
A Reliable Evaluation and a Reasonable Approach》ACL 2022
文章地址:
文章介绍
最近,预训练语言模型被广泛用于知识图谱任务当中,但是这些模型却并没有取得SOTA的结果。这篇文章的作者发现导致上述情况的原因一共有两个,(1)错误发评估方式。目前关于知识图谱三元组完整性的判断大多集中于封闭世界假设(closed world assumption,CWA),从而低估了题PLM为代表的KGC模型,因为它们融合了更多的外部知识。(2)PLM的使用不当。现在基于PLM的模型只是简单将实体和关系拼接以后直接输入到模型当中,而这会导致句子不连贯,无法充分利用PLM中的隐含知识。为了解决上述问题,作者设计了开放世界假设(open-world assumption,OWA)下的更准确的评估方式,并通过人工的方式手动检查已有知识图以外的三元组的正确性,此外,在引入了提示学习(prompt learning)基础上提出了PKGC模型。其基本思想为见每个三元组及其支持信息转化为自然语言提示句,再输入到PLM模型中分类。实验证明PKGC在CWA和OWA上均有良好的表现。
现有局限
如上图所示,如果是在封闭世界的假设下,很多原本正确的三元组就会因为其未出现在原始的知识图谱当中而判断为负样本,极大地限制了预训练模型已经在大量外部知识训练过的优势。
其次,目前对于预训练语言模型的使用也不恰当,仅仅是单纯的输入若干个标签,而不是一个完整的句法结构。
文章方法
三元组提示
如上图所示,作者的输入一共有2个部分分别是PT和PS。
对于PT,作者会根据不同的关系设计不同的固定模板,如上图中的“plays for”从而构建出相应的句子。为了使其更具有表达性,作者也添加了一些软提示。
如上图所示,对于一个句子一共有6个部分可以插入,这里作者是对于每一个关系预定义了相应的若干软提示,然后再插入。具体方式由于作者的源码还未有公开,因此还不太了解。
支持提示
除了三元组自身的信息,还有很多外部知识信息可以用来辅助完成三元组完整性预测任务比如定义和属性,作者定义的模板如下所示:
具体的输入方式就如最上面的模型图所示直接拼接到三元组输入的后面。
一个新的评估标准 CR@1
由于在开放世界假设中,不存在与现有知识图谱中的三元组并不一定就是错误的,而人工标注所有预测出来的实体也较为困难,因此作者会在测试集中抽取三元组并用预测出来排名第一的实体填补缺失的实体,然后再手动判断这些三元组的正确率,该评价指标即为CR@1。