Deep Bidirectional Language-Knowledge Graph Pretraining
github代码
摘要
最近的工作表明,知识图(KG)可以补充文本数据,提供结构化的背景知识, 为推理提供有用的支架。然而,这些作品并没有经过预先的训练来学习大规模的两种模态的深度融合,这限制了获得文本和 KG 完全联合表征的潜力。在这里,我们提出 DRAGON(深度双向语言知识图预训练),一种自我监督的方法,用于从文本和KG在规模上预训练深度联合的语言知识基础模型。具体来说,我们的模型采用成对的文本段和相关的 KG子图作为输入, 并双向融合来自两种模态的信息。我们通过统一两个自监督推理任务,屏蔽语言建模和KG链接预测来预训练这个模型。DRAGON在各种下游任务上优于现有的LM和LM+KG模型,包括一般和生物医学领域的问题回答, 平均绝对增益+5%。特别是,DRAGON在关于语言和知识的复杂推理(在涉及长上下文或多步推理的问题上+10%)和低资源问答(在 OBQA 和谜语推理上+8%)方面取得了出色的性能,并在各种 BioNLP任务上取得了新的最先进的
结果。
挑战
有效地结合文本和知识进行预处理是一个未解决的问题
给定文本和 KG,我们需要:
-
两种模态交互的深度双向模型
-
在大规模上学习文本和 KG的联合推理的自监督目标。
现有方法:
- 以一种肤浅或单向的方式融合了文本和KG
- 关注于对标记的下游任务的微调,并且不执行自监督学习
这些方法可能限制了它们在文本和KG上建模和学习深度交互的潜 力。
提出
我们提出了DRAGON(深度双向语言 知识图预训练),这是一种从文本和 KG执行深度双向、自我监督的语言知识模型预训练的方法。
核心组件:
- 一个双向融合文本和KG的跨模态模型
- 一个学习文本和KG联合推理的双向我监督目标
具体地,采用文本语料库和KG作为原始数据,并通过从语料库中采样文本片段并通过实体链接从KG中提取相关子图来创建模型的输入,从而获得(文本,局部KG)对。
使用跨模态模型将该输入编码成融合的表示, 其中模型的每一层用LM编码文本,用图形神经网络(GNN)编码KG,并用双向模态交互模块。
通过统一两个自我监督的推理任务来预训练该模型:
(1)掩蔽语言建模 (MLM),其掩蔽并预测输入文本中的标记。
(2)链接预测,其丢弃并预测输入 KG 中的边缘。
深度双向语言知识图预训练(DRAGON)
我们采用文本语料库和大型知识图作为原始数据,并通过采样粗对齐(文本段,局部 KG)对.为了学习文本和 KG 之间的交互,DRAGON 包含一个跨模态编码器(GreaseLM ),它双向融合输入的文本-KG对,以及对文本KG输入执行双向自监督的预训练目标.我们的预训练目标是将掩蔽语言建模(MLM)和 KG 链接预测 (LinkPred)相结合,使文本和 KG相互通知并学习对它们的联合推理。最后,我们描述了如何为下游任务微调预训练的DRAGON模型。
输入表示
我们通过(text segment W, local KG G)对来构建输入。希望每一对的文本和KG在语义上(大致)一致,这样文本和KG就可以相互通知对方,并促进模型学习两种模态之间的交互推理。具体来说,对于 W中的每个文本片段W,我们通过下面的KG检索过程从G中提取相关的局部KG G。
-
KG retrieval(KG检索)
-
Modality interaction token/node(模态交互令牌/节点)
跨模态编码器
为了对文本和KG之间的相互作用进行建模,我们使用了一个双向序列图编码器,该编码器接收文本令牌和KG节点,并在多个层之间交换信息以产生每个令牌和节点的融合表示。
为了与现有作品进行可控比较,我们采用了现有的高性能序列图架构GreaseLM,它结合了transformer和图形神经网络(gnn)来融合文本- KG输入。
具体来说,GreaseLM首先使用N层Transformer语言模型(LM)层将输入文本映射为初始标记表示,并使用KG节点嵌入将输入KG节点映射为初始节点表示。
然后用M层的text-KG融合层来编码这些令牌/节点特征一起融入到最终的令牌/节点特征。
其中每个融合层执行以下操作:
在这里,GNN诱导KG节点的图结构感知表示,[ ; ]进行连接,MInt(模态交互模块)通过MLP在交互令牌(文本端)和交互节点(KG端)之间交换信息。
预训练目标
我们的目标是预训练DRAGON模型,使它能够学习文本和一公斤的联合推理。为了保证文本和 KG 相互通知,模型学习双向信息流,我们统一了两个自监督推理任务:屏蔽语言建模和KG链接预测。
**MLM:**MLM是用于语言模型的常见预训练任务,它屏蔽了输入文本中的一些token,并对它们进行预测。该任务使得模型使用非屏蔽上下文来推理屏蔽的标记,并且特别地,当我们的方法采用联合文本-KG 对作为输入时,我们期望MLM可以鼓励模型学习使用文本和KG中的结构化知识来推理文本中的屏蔽(例如,在图的例子中1除了文本语境之外,识别来自 KG的“圆刷”——“艺术供给”路径可以一起帮助预测被掩蔽的表征“艺术供给”)。
具体地说,为了执行MLM任务,我们用一个特殊的标记[mask]掩码输入文本中的标记子集M⊆W,并让任务head fhead是一个线性层,它从编码器中获取上下文化的标记向量{H:}来预测原始标记。目标是交叉熵损失:
链接预测(LinkPred):当MLM任务预测文本端时,链接预测会保留一些边并预测输入KG。链接预测是KGs中的一项基本任务,它使模型使用KGs的结构进行推理(例如,使用组合路径“X的母亲的丈夫是Y”来推断缺失的链接“X的父亲是Y”)。特别是,由于我们的方法采用联合文本-KG对作为输入,我们期望链接预测可以鼓励模型学习将KG结构与文本上下文联合使用,以推断KG中缺失的链接(例如,在图1中,除了KG结构之外,认识到文本中的“圆刷可以用于头发”可以帮助一起预测伸出的边(round_brush, at, hair))。
具体来说,为了执行链接预测任务,我们从输入KG中取出一个边三元组的子集,S={(h, r, t)} ⊆E。对于任务head fhead,我们采用KG表示学习框架,该框架将KG中的每个实体节点(h或t)和关系®映射到一个向量h, t, r,并定义一个评分函数f(h, t)来建模正/负三元组。具体地说,我们令h= Vh, t=Vt r= Rr,,其中{Vj}是来自编码器的上下文化节点向量,r= {r1,。, rIRI}是可学习的关系嵌入。我们考虑一个KG三元组评分函数φr(h, t),如:
其中,< , , >表示三线性点积,⭕表示哈达玛积(实际上就是两个矩阵对应位置相乘),φ越高,表示(h,r,t)成为正三元组(有边)的几率越高,而不是负三元组(无边)。
优化目标:
式中(h’,r, t’)为正三元组,(h, r, t)对应的n个负样本,γ是边界(???)。这个目标函数是使模型预测伸出边S的三元组为正,而其他随机三元组为负。
联合训练:联合训练。为了对DRAGON进行预训练,我们联合优化了MLM和LinkPred目标:
这个联合目标统一了MLM和LinkPred的效果,鼓励模型同时以KG结构为基础文本,并将KG与文本语境化,促进文本和KG之间的双向信息流进行推理。后续实验表明,联合目标比单独使用一个目标产生更高性能的模型。
实验结果
表1显示了9个下游常识推理任务的性能。在所有任务中,DRAGON始终优于现有的LM(RoBERTa)和KG-augmented QA模型(QAGNN, GreaseLM),例如,在RoBERTa上,绝对精度提高了7%,在OBQA上,比GreaseLM提高了5%。这些准确性的提高表明DRAGON相对于RoBERTa(KG推理)和GreaseLM(预训练)的优势。对于具有少量训练数据的数据集(如ARC、Riddle和OBQA),以及需要复杂推理的数据集(如CosmosQA和HellaSwag),这种增益尤其显著。
分析
知识图谱的作用
DRAGON的第一个关键贡献是利用了KG,作者发现这显著提高了模型在鲁棒和复杂推理方面的性能。
**定量分析。**在表2中,作者研究了DRAGON在涉及复杂推理的问题上的下游任务表现。作者考虑了几个代理来对复杂问题进行分类:
(i)是否存在否定(例如no, never),(ii)是否存在连词(例如and, but),
(iii)是否存在套语(例如sometimes, maybe),(iv)介词短语的数量,
(v)实体提到的数量。
否定或连接表示逻辑上的多步骤推理,更多的介词短语或实体提及表示涉及更多的推理步骤或约束,套语表示涉及复杂的文本细微差别。
DRAGON在所有这些类别上的表现都明显优于基线LM(RoBERTa)(例如,否定的准确率为+14%),这证实了合语言知识预训练提高了推理能力。DRAGON也始终优于现有的KG-augmented QA模型(QAGNN,GreaseLM)。作者发现QAGNN和GreaseLM只在某些类别如连词或许多介词短语(= 2,3)上在RoBERTa上有适度的提高,但DRAGON提供了实质性的提高。这表明,通过使用更大、更多样化的数据进行自监督的预训练,DRAGON比只进行微调的模型(如GreaseLM)学习了更多通用推理能力。
定性分析。使用CSQA数据集,作者进一步对DRAGON的KG推理组件的行为进行了案例研究,其中作者可视化了在不同问题变化下图注意权重的变化(下图2)。发现DRAGON展示了推断和执行鲁棒推理的能力。由于这些问题比通常在CSQA训练集中看到的问题更复杂,作者的见解是,当普通LM(RoBERTa)和微调(GreaseLM)在学习复杂推理方面有局限性时,kg增强的预训练(DRAGON)有助于获得可推广的推理能力,从而推断到更难的测试示例。
预训练的作用
数据有限的下游任务。在表1中,我们发现DRAGON在可用微调数据有限的下游任务上比GreaseLM提供了显著的提升,例如ARC (3K训练实例;+4%的精度增益),谜语(3K实例;+4%的准确率)和OBQA (5K个实例;+ 5%的准确率)。对于其他任务,我们还尝试了低资源设置,其中使用了10%的调优数据(表3)。在这里,我们还看到DRAGON比GreaseLM获得了显着的收益(PIQA上的准确率+5%),这表明DRAGON的数据效率得到了提高。
复杂的下游任务。在表1中,我们发现DRAGON在涉及更复杂推理的下游任务上提供了比GreaseLM更大的收益,例如CosmosQA和HellaSwag,其中输入具有更长的上下文和更多的实体(因此更大的本地KGs)。对于这些任务,GreaesLM相对于RoBERTa的改进很小(与CosmosQA相比+0.1%),但DRAGON提供了可观的提升(+1.8%)。我们的观点是通过更大、更多样化的数据的自我监督的预训练,DRAGON比GreaseLM学会了更丰富的文本- kg交互,能够解决更复杂的下游任务。DRaGON在包含否定、连词和介词短语的复杂问题上也比GreaseLM获得了很大的收益(表2),并推断出比训练集更复杂的问题(图2)。
提升模型能力。在表4中,我们研究了GreaseLM和DRAGON模型容量增加时的下游性能——文本- kg融合层的数量从5个增加到7个。我们发现,正如最初的GreaseLM论文所报道的那样,增加的容量对仅微调的模型(GreaseLM)没有帮助,但它对预训练(DRAGON)有帮助。这一结果表明,当与预训练相结合时,增加的模型容量实际上是有益的,并表明DRAGON的前景将进一步扩大。
DRAGON的设计选择
预训练目标(表5)。DRAGON的第一个重要设计选择是联合预训练目标:MLM + LinkPred($2.3)。使用联合目标优于单独使用MLM或LinkPred(+5%的OBQA准确率)。这表明,在文本和KG上设置双向自监督任务有助于模型融合两种模式进行推理。
链接预测头选择(表5中间1)。KG表示学习是一个活跃的研究领域,提出了各种KG三元组评分模型(公式9)。因此,作者对DRAGON的链接预测头使用不同的评分模型进行了实验。发现,虽然DistMult有轻微的优势,但作者尝试的所有变体(DistMult,TransE,RotatE)都是有效的,优于没有LinkPred的基线(“仅MLM” )。这一结果表明DRAGON的普遍性以及它与各种KG表示学习技术相结合的前景。
跨模态编码器(表5中间2).DRAGON的另一个核心组件是具有双向text-KG融合层的跨模态编码器。作者发现,如果消除它们,并在最后简单地连接文本和KG表示,性能将大幅下降。这一结果表明,深度双向融合对于模拟文本和KG之间的交互是至关重要的。
KG结构(表5底部)。DRAGON的最终关键设计是通过序列图编码器和链接预测目标利用KGs的图结构。在这里,作者尝试了一种替代的预训练方法,它去掉了图结构︰我们使用模板将本地KG中的三连词转换为句子,将它们附加到主要文本输入中,并执行普通的MLM预训练。作者发现DRAGON的表现远远优于这个变体(OBQA上+2%的准确性),这表明KG的图结构有助于模型进行推理。