【Structure Pretraining and Prompt Tuning for Knowledge Graph Transfer论文笔记】

《统一知识表示融合模块KRF:Structure Pretraining and Prompt Tuning for Knowledge Graph Transfer》阅读笔记

论文介绍

在这里插入图片描述

关键词(方法/相关描述):KGTransformer;

作者/团队

浙大;华为;阿里巴巴

发表期刊/会议

WWW

代码

代码链接:link

0摘要

1 背景

KRF知识表示与融合模块:该模块从KG中学习元素的表示,并与任务表示进行融合。由于跨任务融合时需要考虑的KGs和视角不用,任务之间进行了重复和临时的KRF模块设计。

2 解决的问题

设计统一的KRF模块,适用于多种KG任务

3 解决思路

KGTransformer,可以在不同KG相关任务中充当统一的KRF模块

4 解决方法

以采样子图作为输入,使用三个自监督任务预训练KGTransformer;提出通用的prompt tuning机制,将任务数据视作三元组prompt,允许任务KG和任务数据之间的灵活交互。

1 介绍

由于需要考虑的KG和角度的不同,KRF模块在KG相关的任务模型中存在差异,为ad hoc KRF模块设计留下重复工作。
在这里插入图片描述
直接将PLM中的嵌入表示进行应用存在问题

  1. 如果任务KG包含与用于预训练的KG不同的实体和关系,基于嵌入的方法不能向下游任务模型传递有价值的信息,因为嵌入是缺失的。---->预训练KG结构,将与特定实体和关系无关的参数转化成任务(通用知识,提高模型的泛化能力)
  2. KG和任务数据之间缺乏必要的交互和融合,因此设计一个融合模块作为下游任务模型设计工作的一部分。---->prompt微调机制,使KG和任务数据之间能够进行统一灵活的融合
    模型允许序列中元素之间根据元素之间的二元连续关系矩阵及逆行多样但有约束的交互。

三个自监督任务:Masked Entity Modeling;Masked Relation Modeling;Entity Pair Modeling捕捉结构信息和语义信息;

  • KGTransformer层中参数θM的设置有助于将与特定实体和关系无关的图结构知识从预训练KGs迁移到任务KGs。
  • 提出了一种通用的提示调节机制,将每个任务样本组成一个提示串联在任务KG序列的末尾,以操纵KGTransformer的性能。
  • 预训练时混合数据集,应用于三个不同模态的KG相关任务,①one in-KG task triple classification(KG内三元组分类),②two out-ofKG tasks, zero-shot image classification(零样本图像分类) and question answering(问答)

2 相关工作

2.1 KGR method

通过模型中的参数和函数编码信息,可以捕捉实体和关系之间的结构信息和语义信息。

  • 基于嵌入的方法:学习嵌入表示和评分函数,嵌入可以隐式地捕捉相似性、层次结构,关系和公理
  • 基于结构的方法:学习一个以节点特征为输入的子图的encoder,和用于特定任务的解码器decoder。基于graph的任务,与实体无关(不依赖于实体的特定嵌入),适用于归纳任务
  • 混合方法:学习encoder-decoder以及实体和关系的嵌入。GNN编码器使用实体的嵌入而不是预定于的节点特征。
    -基于 Transformer方法:通过注意力机制对KG
    中的结构或语义信息进行编码。

GraphWriter [23] 提出了一种图Transformer,以解决从KG生成文本时存在的非层次性、长距离依赖和结构变异的问题。HittER [5] 提出了一种分层Transformer,共同学习KG中的实体关系组合和关系上下文。kgTransformer [33] 通过将逻辑查询形式化为掩码预测,在KG上进行预训练,并应用于复杂查询任务。GHT [45] 用于处理时间性知识图谱推理,利用Transformer捕捉瞬时结构和演化信息。MKGformer [6] 设计了一种混合Transformer,将视觉和文本表示整合到多模态KG完成任务中。TET [19] 通过使用本地Transformer、全局Transformer和上下文Transformer对KG的图结构进行编码,执行实体类型任务。

本模型属于混合方法,与现存的不同是,KGTransformer包含单跳邻居实体,还聚合了连接关系和双跳实体(如何实现的???通过子图中包含的实体)

2.2 KGF method

out-of-the-box方法:调用形式,预先进行KGR,使用表示作为下游任务的输入,在下游任务中嵌入无法调整。
end-to-end方法:设计一个可学习得编码模块,并使用下游任务训练。

RippleNet [56] 对知识图谱中的子图偏好传播进行编码,并预测参与推荐系统的用户。 KGAT [58] 采用一种注意力机制来传播 KG 中节点的邻居表示,其中包含推荐的用户、项目和属性。 QA-GNN[67]使用GNN对QA对相关子图进行编码,以联合表示QA文本信息和KG信息。

KGTransformer属于端到端的KG融合方法。

2.3 预训练方法

将完全监督学习转换成预训练和finetune。带有多头注意力机制模块的自回归Transformer是PLM的关键部分。 KGTransformer 层允许在 KG 中不直接连接的元素部分之间进行约束连接。在finetune阶段,prompt tuning方法通过添加与任务相关的适当提示来操纵PLM。

3 方法

3.1KGTransfomer

多层KGTransformer,将Transformer层适应KG,将一组三元组作为输入,输出用于预测的每个元素的表示。
在这里插入图片描述
然后生成邻接矩阵在这里插入图片描述显式建模三元组之间的邻接关系。输入sin,使用M限制元素之间的交互。还包括自注意力模块和位置前馈网络。

在这里插入图片描述
在这里插入图片描述

模型使用sin作为输入序列的好处:(怎么实现的?–>输入序列的设计)

  1. 避免了不相关三元组元素之间的attention
  2. 每次更新从单挑到多跳的邻居实体的聚合。
  3. 使实体能够关注到三元组中不直接连接但具有相同关系的元素
    总之,允许多样化但受限的元素进行交互。

3.2 Sub-graph Pretraining

给定G,使用G中采样的子图通过自监督任务进行预训练。
在这里插入图片描述

3.2.1 子图采样

提出两种策略来从随机选择的e作为目标实体对进行子图采样

  1. 随机游走采样:随机选择三元组,将头实体或尾实体视作目标实体,重复k次,捕捉KG中三元组之间的全局和长序列相关性。
  2. 以实体为中心的采样:从单跳三元组集随机选择max(k,n),若k>n,则剩余采样两跳三元组。可以捕捉三元组之间的局部相关性。
    采样后将子图序列化

3.2.2 预训练任务

为了捕捉结构和语义信息,设计了三个自监督任务,使用sem代表模型最后一层的元素2
的隐藏状态。调整任务层参数。

  1. Masked Entity Modeling (MEM):使用[M]随机替换实体,CE表示交叉熵在这里插入图片描述

  2. Masked Relation Modeling (MRM):多分类问题在这里插入图片描述

  3. Entity Pair Modeling (EPM):给定两个实体的子图,序列化并聚合作为输入序列,l使两个实体的相似度(1是G中相同关系的头或尾实体,0则不是)在这里插入图片描述模型预训练loss:1,2为两种采样随机,3为以实体为中心的采样在这里插入图片描述

3.3 Task Prompt Tuning

在这里插入图片描述
微调prompt机制,使用预训练的KGTransformer。不断使用KG训练KGTransformer,冻结 θ M \theta M θM,因为任务中的实体和关系不同,得到适应 θ M \theta M θM的任务KG的元素嵌入。

prompt tuning期间,一个样本包括Dtask 和Gtask。构建任务提示在这里插入图片描述;序列化图谱与输入构建;隐藏状态提取与任务预测

4 实验

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值