Large-Scale Relation Learning for Question Answering over Knowledge Bases with Pre-trained Langu论文笔记

本文主要是介绍Large-Scale Relation Learning for Question Answering over Knowledge Bases with Pre-trained Langu论文笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 一. 简介
      • 1.知识库问答(KBQA)介绍
      • 2.知识库问答(KBQA)的主要挑战
      • 3.以往方案
      • 4.本文方法
    • 二. 方法
      • 问题定义:
      • BERT for KBQA
      • 关系学习(Relation Learning)的辅助任务
    • 三. 实验
      • 1. 数据集
      • 2. Baselines
      • 3. Metrics
      • 4.Main Results

一. 简介

1.知识库问答(KBQA)介绍

知识库问答(KBQA)旨在从给定结构化知识库(KB)中找到自然语言问题的答案,广泛用于现代问答和信息检索系统。传统的基于检索的KBQA方法通常将其构建为管道系统(pipeline system),包括1)名称实体识别、2)实体链接、3)子图检索和4)实体评分。 近年来,在深度表示学习的帮助下,此类方法取得了令人瞩目的成绩。

2.知识库问答(KBQA)的主要挑战

KBQA任务仍然具有挑战性,特别是对于多跳问题,因为两个原因:
1)由于人类语言的复杂性,通常很难将自然语言问题与KB中的推理路径对齐。该模型倾向于通过表面匹配学习并轻松采用快捷特征进行预测;
2)在实践中,知识库往往是不完整的,这也需要模型对不完整图进行推理。 但因缺乏明确的推理训练,现有模型通常很难做到这一点。

3.以往方案

以前的工作如GraftNet和PullNet主要通过引入外部文本语料库(例如所有维基百科文档)并使用专门设计的网络架构来合并来自文档的信息来解决这些问题。然而,在实践中可能难以收集所需的外部资源。EmbedKGQA通过引入预训练的知识库嵌入解决知识库的不完整性问题,并训练问题嵌入以适应关系嵌入空间,以便他们可以直接使用评分函数对答案进行排序。 然而,上述方法主要掌握了图的拓扑结构,而忽略了实体和关系中的文本信息,这些信息也应该对候选实体进行评分。

4.本文方法

为了弥合自然语言和结构化KB之间的差距,本文重新制定了基于检索的KBQA任务,使其成为一个【问题-上下文】匹配形成并提出关系学习的三个辅助任务,即关系提取(RE)、关系匹配(RM)和关系推理(RR)。通过关系增强训练,该模型学习将自然语言表达式与知识库中的关系对齐,以及对知识库中缺失的连接进行推理。具体如下:
1)RE通过从句子中推断关系来训练模型;
2)RM通过确定两个句子是否表达相同的关系来训练模型;
3)RR以自监督的方式从知识库构建训练数据,并训练模型以在给定现有路径的情况下对缺失的知识库连接进行推理。

二. 方法

问题定义:

给定一个输入查询q,首先识别出q中的命名实体并将它们链接到KB的节点,然后通过一些启发式算法来检索查询指定的子图(包含q答案的所有候选实体的集合)。

BERT for KBQA

对于每个问题q,我们可以从实体链接系统中获取其主题实体e_topic。 然后,将候选实体评分问题转换为如下【问题-上下文】匹配任务:
在这里插入图片描述

1)首先找到实体链接系统中连接主题实体e_topic和候选实体ei的所有路径(设置最大路径数并在数量超过阈值时应用下采样);
2)然后通过在知识库KB中用实体名称替换节点和用关系名称替换边来构建每条路径的文本形式;
3)然后concatenate问题q和所有路径p1, …,pn生成输入样本xi =[CLS]q[SEP]p1[SEP]……pn[SEP];
4)将样本提供给BERT并采用与[CLS]token对应的表示进行二分类(将这些路径视为主题实体e_topic和候选实体ei之间的事实。目标是使用BERT来预测假设“ei is the answer of q”是否得到这些知识库KB事实的支持):
在这里插入图片描述

关系学习(Relation Learning)的辅助任务

KBQA 的性能很大程度上取决于从自然语言问题到关系的路径映射。为了进一步增强BERT的关系学习,本文提出了三个用于关系学习的辅助任务:
在这里插入图片描述

1)Relation Extraction (RE)
将句子和单跳路径连接起来为BERT构建一个RE示例:[CLS]s[SEP]h, r, t[SEP],其中 s, h,r 和 t 分别表示句子、头实体,关系和尾实体。
此外,为了模拟 KBQA 中的 2-hop 推理,还可以结合两个RE示例进行组合:[CLS]s1, s2[SEP]h1, r1, t1(h2), r2, t2[SEP],其中第一个示例的尾实体与第二个示例的头实体相同。

2)Relation Matching (RM)
在关系匹配任务中,假设具有相同关系的两个句子应该具有相似的表示。 因此可以连接两个句子并通过预测两个句子是否表达相同关系来训练BERT:[CLS]s1[SEP]s2[SEP],其中如果s1和s2表达相同关系,则标签为1,否则为0。

3)Relation Reasoning (RR)
BERTRL(Zha et al., 2021)提出了一种用于知识库完成任务的自我监督方法。他们从知识库中选择一个三元组 (h, r, t) 并假设它丢失了。然后他们找到其他从h到t的多跳路径,并用它们来预测(h, r, t)是否存在于KB 中:[CLS]h, r, t[SEP]p1[SEP]……pn[SEP] 通过在BERTRL上训练,模型学会了推理和补全缺失的连接,这对 KBQA在不完整的KB上非常有帮助。

4)Training
由于上述三个辅助任务都被制定为二分类任务,并且仅在数据构建阶段有所不同,因此我们可以使用它们在KBQA之前预训练BERT(记为预训练),或者以一种多任务范式通过KBQA联合训练它们(节点为联合)。

三. 实验

1. 数据集

1)KBQA数据集:WebQSP(training/validation/test 2848/250/1639)
2)Relation Learning数据集: WebRED

2. Baselines

  • KV-Mem
  • GraftNet
  • PullNet
  • EmbedKGQA
  • NSM

3. Metrics

  • Hits@1:如果排名最高的实体是答案实体,则hits@1为1,否则,hits@1为0。
  • F1 score:给定一个阈值(选择在验证集中表现最好的阈值),将所有得分大于阈值的候选实体视为模型预测的答案。然后计算真实答案实体和模型预测的答案实体之间的F1分数。

4.Main Results

在这里插入图片描述

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

这篇关于Large-Scale Relation Learning for Question Answering over Knowledge Bases with Pre-trained Langu论文笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

数学建模笔记—— 非线性规划

数学建模笔记—— 非线性规划 非线性规划1. 模型原理1.1 非线性规划的标准型1.2 非线性规划求解的Matlab函数 2. 典型例题3. matlab代码求解3.1 例1 一个简单示例3.2 例2 选址问题1. 第一问 线性规划2. 第二问 非线性规划 非线性规划 非线性规划是一种求解目标函数或约束条件中有一个或几个非线性函数的最优化问题的方法。运筹学的一个重要分支。2

【C++学习笔记 20】C++中的智能指针

智能指针的功能 在上一篇笔记提到了在栈和堆上创建变量的区别,使用new关键字创建变量时,需要搭配delete关键字销毁变量。而智能指针的作用就是调用new分配内存时,不必自己去调用delete,甚至不用调用new。 智能指针实际上就是对原始指针的包装。 unique_ptr 最简单的智能指针,是一种作用域指针,意思是当指针超出该作用域时,会自动调用delete。它名为unique的原因是这个

查看提交历史 —— Git 学习笔记 11

查看提交历史 查看提交历史 不带任何选项的git log-p选项--stat 选项--pretty=oneline选项--pretty=format选项git log常用选项列表参考资料 在提交了若干更新,又或者克隆了某个项目之后,你也许想回顾下提交历史。 完成这个任务最简单而又有效的 工具是 git log 命令。 接下来的例子会用一个用于演示的 simplegit

记录每次更新到仓库 —— Git 学习笔记 10

记录每次更新到仓库 文章目录 文件的状态三个区域检查当前文件状态跟踪新文件取消跟踪(un-tracking)文件重新跟踪(re-tracking)文件暂存已修改文件忽略某些文件查看已暂存和未暂存的修改提交更新跳过暂存区删除文件移动文件参考资料 咱们接着很多天以前的 取得Git仓库 这篇文章继续说。 文件的状态 不管是通过哪种方法,现在我们已经有了一个仓库,并从这个仓

忽略某些文件 —— Git 学习笔记 05

忽略某些文件 忽略某些文件 通过.gitignore文件其他规则源如何选择规则源参考资料 对于某些文件,我们不希望把它们纳入 Git 的管理,也不希望它们总出现在未跟踪文件列表。通常它们都是些自动生成的文件,比如日志文件、编译过程中创建的临时文件等。 通过.gitignore文件 假设我们要忽略 lib.a 文件,那我们可以在 lib.a 所在目录下创建一个名为 .gi