Advertisement

Multi-Task Learning for Knowledge Graph Completion with Pre-trained Language Models

阅读量:

研究问题

以多任务形式训练KGBERT

背景动机

KGBERT在MRR和Hit@k上效果不好,论文认为是由以下两个因素导致的:

KGBERT基于triplet-based classification任务进行预训练模型的微调,并受限于这种特定的分类任务,在某种程度上限制了其对关系信息的充分利用

模型方法

引入关系预测和相关性排序这两个新任务

在这里插入图片描述

链路预测(三元组分类)

针对三元组(h,r,t)的操作方法是整合其名称与描述信息的具体实施方式,请看下述实例:以(plant tissue, hypernym, plant structure)为例,则整合为特定格式的具体步骤如下

在这里插入图片描述

我们定义了变量C为通过[CLS]标记对应的隐层向量表达;其中矩阵W_{L P} \in \mathbb{R}^{2 \times H}被设定为分类权重矩阵;同时设训练集为集合S和其负样本采样集合S';则整个系统的损失函数的具体表达式如下

在这里插入图片描述

关系预测

实际上,在此之前就已经可以看出,这篇文章并非仅限于多任务预测的应用。由于各个任务的输入形式存在差异,这里的输入即为。

在这里插入图片描述

W_{R P} \in \mathbb{R}^{R \times H}为分类权重,损失函数如下

在这里插入图片描述

相关度排序

其实就是拉开正样本和负样本的分差,增强模型的判别能力

W_{R R} \in \mathbb{R}^{1 \times H}为打分权重,损失函数如下

在这里插入图片描述

实验细节

BERT-base+3 epoch fine-tune

做链路预测时还是要把h+r+t作为输入并打分

在这里插入图片描述

全部评论 (0)

还没有任何评论哟~