Sequence-to-Sequence Knowledge Graph Completion and QuestionAnswering(2022 ACL)

2024-02-21 01:10

本文主要是介绍Sequence-to-Sequence Knowledge Graph Completion and QuestionAnswering(2022 ACL),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

论文相关

论文: https://aclanthology.org/2022.acl-long.201.pdf
源码: GitHub - apoorvumang/kgt5: Sequence-to-Sequence Knowledge Graph Completion and Question Answering (KGT5)

摘要

KGE(knowledge graph embedding) 模型用低维的嵌入向量表示知识图谱中的每个实体和关系。这种方法经常用于知识图谱链接预测和基于不完整知识图谱的问答。

现存问题

KGEs通常会为图中的每个实体创建一个嵌入,由于现实中的图谱有数百万个实体,这就导致模型规模较大。对于下游任务,这些原子实体表示通常需要集成到一个多阶段管道中,这限制了它们的实用价值。

解决方法

本文提出了一个现成的transformer 编码器-解码器模型,作为一个可扩展和通用的KGE模型实现KG链路预测和不完全KG问答的最好结果。其主要将KG链路预测作为一个序列对序列的任务,并将先验KGE方法中的三重评分方法与自回归解码交换。与传统的KGE模型相比,这种简单却很有效的方法可以在保持推断时间可控的同时,将模型大小减少98%。

本文提出的方法称作KGT5。用序列到序列的方法实现了 (1) 可扩展性——通过使用组合实体表示和自回归解码(而不是对所有实体打分)进行推断。   (2) 质量——我们在两个任务上获得最先进的性能。 (3) 通用性——同一模型可用于多个数据集上的KGC和KGQA 。(4) 简单——我们使用现成的模型获得所有结果,没有任务或特定于数据集的超参数调优。

相关工作

链接预测(link prediction)是通过以(s, p, ?)和(?, p,o)形式回答queries,以预测知识图谱中丢失的三元组。这通常是使用知识图嵌入(KGE)模型来完成的。

当所使用的知识图谱不完整时,依然可以利用KGE实现KGQA。

KGT5 模型

将链接预测和问答都视为序列到序列的任务。然后,我们在这些任务上训练一个简单的编码器-解码器transformer, 它与T5-small有相同的架构,但没有预训练的权重。在进行问答训练时,我们利用链接预测目标进行正则化。

Textual Representations & Verbalization

Text mapping

对于链接预测,我们需要一个实体/关系与其文本表示之间的一对一映射。对于基于wikidata的KGs,我们使用规范的实体和关系作为其文本表示,然后使用消除歧义方案,将文本描述和唯一id附加到名称。对于仅用于QA的数据集,我们不强制一对一映射,因为在这种情况下,不必要的消除歧义甚至会损害模型的性能。

Verbalization
通过将查询(s, p, ?)表述为文本表示,我们可以将(s, p, ?)查询回答(query answering)转换为一个序列到序列任务。

比如:查询 (barack obama, born in, ?)  ---->>>>  模型输入"predict tail: barack obama | born in",输出"united states"

Training KGT5 for Link Prediction

为了训练KGT5,我们需要一组(输入,输出)序列。利用teacher forcing和交叉熵损失对KGT5进行训练。 与标准的KGE模型不同,我们并没有用显式的负采样训练。在解码的每一步,模型都会生成 可能成为下一个分词 的概率分布。在训练时,该分布由于与使用交叉熵损失的“真实”分布(即下一个真实token的概率为1,其他所有token的概率为0)不同而受到惩罚。

:teacher-forcing 在训练网络过程中,每次不使用上一个state的输出作为下一个state的输入,而是直接使用训练数据的标准答案(ground truth)的对应上一项作为下一个state的输入。

Link Prediction Inference

给定一个查询query (s,p,?), 传入KGt5模型之前将其转化为文本表示的形式。然后,从decoder 取样一些序列,并将其映射到它们的实体id。通过使用这样的生成模型,我们能够用高置信度估计t前m个模型预测,而不必像传统的KGE模型那样对KG中的所有实体打分。对于每个被解码的实体,我们为其分配一个分数,该分数等于解码其序列的(log)概率。这为我们提供了一组(实体,分数)对。为了计算与传统KGE模型相比较的最终排名指标,我们为抽样过程中没有遇到的所有实体分配了一个−∞的分数。

KGQA Training and Inference

对于KGQA,我们使用链路预测任务在背景KG上对模型进行预训练。然后对相同的模型进行微调,用于问答。我们将一个新的任务前缀(predict answer:)与输入的问题连接起来,并将答案实体的提及字符串定义为输出。这种统一的方法允许我们将KGT5应用于任何KGQA数据集,而不考虑问题的复杂性,并且不需要实体链接等子模块。

为了在QA微调期间(特别是在具有小KGs的任务上)防止过拟合,我们设计了一个正则化方案:我们从背景KG中随机采样链接预测序列到每个批次,这样一个批次包含相等数量的QA和链接预测序列。对于推断,我们使用束搜索和基于邻域(neighbourhood-based)的重新排序来获得模型的预测,这是一个单一的答案。

实验部分

 

 

 

 

 

 

这篇关于Sequence-to-Sequence Knowledge Graph Completion and QuestionAnswering(2022 ACL)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/730137

相关文章

网络学习-eNSP配置ACL

AR1路由器配置 <Huawei>system-viewEnter system view, return user view with Ctrl+Z.[Huawei]undo info-center enableInfo: Information center is disabled.[Huawei]interface gigabitethernet 0/0/0[Huawei-G

图神经网络框架DGL实现Graph Attention Network (GAT)笔记

参考列表: [1]深入理解图注意力机制 [2]DGL官方学习教程一 ——基础操作&消息传递 [3]Cora数据集介绍+python读取 一、DGL实现GAT分类机器学习论文 程序摘自[1],该程序实现了利用图神经网络框架——DGL,实现图注意网络(GAT)。应用demo为对机器学习论文数据集——Cora,对论文所属类别进行分类。(下图摘自[3]) 1. 程序 Ubuntu:18.04

综合DHCP、ACL、NAT、Telnet和PPPoE进行网络设计练习

描述:企业内网和运营商网络如上图所示。 公网IP段:12.1.1.0/24。 内网IP段:192.168.1.0/24。 公网口PPPOE 拨号采用CHAP认证,用户名:admin 密码:Admin@123 财务PC 配置静态IP:192.168.1.8 R1使用模拟器中的AR201型号,作为交换路由一体机,下图的WAN口为E0/0/8口,可以在该接口下配置IP地址。 可以通过

SIGMOD-24概览Part7: Industry Session (Graph Data Management)

👇BG3: A Cost Effective and I/O Efficient Graph Database in ByteDance 🏛机构:字节 ➡️领域: Information systems → Data management systemsStorage management 📚摘要:介绍了字节新提出的ByteGraph 3.0(BG3)模型,用来处理大规模图结构数据 背景

浙大数据结构:02-线性结构4 Pop Sequence

这道题我们采用数组来模拟堆栈和队列。 简单说一下大致思路,我们用栈来存1234.....,队列来存输入的一组数据,栈与队列进行匹配,相同就pop 机翻 1、条件准备 stk是栈,que是队列。 tt指向的是栈中下标,front指向队头,rear指向队尾。 初始化栈顶为0,队头为0,队尾为-1 #include<iostream>using namespace std;#defi

【UVA】1626-Brackets sequence(动态规划)

一道算是比较难理解的动规。 状态转移分2个: (用d[i][j]表示在i~j内最少需要添加几个括号,保持平衡) 1.如果s[i]和s[j]是一对括号,那么d[i][j] = d[i + 1][j - 1] 2.否则的话 d[i][j] = min(d[i][k],[k + 1][j]); 边界是d[i + 1][i] = 0; d[i][i] = 1; 13993644 162

【UVA】10534 - Wavio Sequence(LIS最长上升子序列)

这题一看10000的数据量就知道必须用nlog(n)的时间复杂度。 所以特意去看了最长上升子序列的nlog(n)的算法。 如果有2个位置,该位置上的元素为A[i]和A[j],并且他们满足以下条件: 1.dp[i] = dp[j]    (dp[x]代表以x结尾的最长上升子序列长度) 2.A[i] < A[j] 3.i < j 那么毫无疑问,选择dp[i] 一定优于选择dp[j] 那么

2015年多校联合训练第一场OO’s Sequence(hdu5288)

题意:给定一个长度为n的序列,规定f(l,r)是对于l,r范围内的某个数字a[i],都不能找到一个对应的j使得a[i]%a[j]=0,那么l,r内有多少个i,f(l,r)就是几。问所有f(l,r)的总和是多少。 公式中给出的区间,也就是所有存在的区间。 思路:直接枚举每一个数字,对于这个数字,如果这个数字是合法的i,那么向左能扩展的最大长度是多少,向右能扩展的最大长度是多少,那么i为合法的情况

A Comprehensive Survey on Graph Neural Networks笔记

一、摘要-Abstract 1、传统的深度学习模型主要处理欧几里得数据(如图像、文本),而图神经网络的出现和发展是为了有效处理和学习非欧几里得域(即图结构数据)的信息。 2、将GNN划分为四类:recurrent GNNs(RecGNN), convolutional GNNs,(GCN), graph autoencoders(GAE), and spatial–temporal GNNs(S

上海大学《2022年836+915自动控制原理真题及答案》 (完整版)

Part1:2022年上海大学真题题目 学硕836 专硕915 Part2:2022年上海大学真题答案 学硕836 专硕915