Leveraging Knowledge Bases in LSTMs for Improving Machine Reading

2024-01-23 08:50

本文主要是介绍Leveraging Knowledge Bases in LSTMs for Improving Machine Reading,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《Leveraging Knowledge Bases in LSTMs for Improving Machine Reading》

这篇文章是发表在2017年ACL上的,主要是聚焦于外部知识改善LSTM,运用在实体抽取和事件抽取任务。在ACE2005的数据集上得到了SOTA效果。

首先介绍这篇文章的两个知识库,一个是WordNet一个是NELL。

  • Word net是人工创造的一个词典,里面含有大量的同义词,以及他们之间的概念关系(上位词hypernym,part_of关系)。

比如(location, hypernym of, city),(door, has part, lock)

头实体和尾实体都是Wordnet中的同义词

  • NELL,是自动构建的,基于网页的知识库,存储了实体之间的关系。

比如(New York, located in, United States) , (New York, is a, city)

头实体和尾实体都是一个真实世界的名词短语实体,尾实体也可以是一个概念分类。

接下来分以下四部分介绍:

  • Motivation
  • Model
  • Experiment
  • Discussion

1、Motivation

  • 传统的方法将知识表示成离散的特征,这些特征的泛化性能很差,而且为了获得好的效果还需要特定任务的特征工程。
  • 在不同的文本之间,知识的使用也是不同的,比如说一词多义, Clinton,既可以表示一个人,也可以表示一个城镇。如果加入无关上下文的知识,可能会误导模型。

针对这两个问题,该篇论文提出kblstm,首先利用这个连续的知识的表示去加强循环神经网络的学习能力。

而且为了去有效的整合背景知识和当前文本,还提出了使用一种带有sentinel(哨兵)的attention机制,可以动态的决定是否要引入背景知识并且哪一条背景知识是有效的

2、Model

2.1 overview

模型这一部分主要是把外部知识引入到双向循环神经网络当中(2.2)。主要是在隐藏状态,加入外部信息。外部信息是通过连续编码,使用konwledge embedding的方法(2.3)
在这里插入图片描述

2.2 Knowledge-aware Bidirectional LSTMs

首先学习到知识库里面的concepts的向量。然后去检索当前词的相关候选concepts V ( x t ) V(x_t) V(xt),并且把它们整合到状态向量,得到 m t m_t mt ,去做预测。

核心是Knowledge model,对每一个候选去计算一个双线性,反应了concept 和当前隐状态的关系。
在这里插入图片描述

有时候一些kb可能会误导模型,为了解决这个问题,引入一个知识哨兵。两个作用:

  • records the information of the current context
  • use a mixture model to allow for better tradeoff between the impact of background knowledge and information from the context.

St计算方式如下:

首先,用前一时刻的状态和当前输入,过一个门函数,可以把这个门看成输出门,决定我要输出多少的信息,然后和状态向量进行计算。
在这里插入图片描述

接着和神经网络当中的状态进行双向性计算得到打分belta。
在这里插入图片描述
最后使用混合模型得到表示:
在这里插入图片描述
注意这个限制条件:
在这里插入图片描述

之前这个地方其实不是很理解。文章说的是为了权衡背景知识和来自于上下文的信息。但是最后输出的时候,只是做了一个简单的向量加和。而且st和前一部分的vt是两部分独立的。St并没有对前面的这些知识起到一个过滤或者说是什么的作用。所以前面的motivation说,st这个哨兵向量是为了决定是否要引入外部知识。就很迷。

解答:就是为了权衡背景知识和来自于上下文的信息。mt的来源有两部分,一部分是融入了背景知识的隐向量,一部分是只有当前信息的哨兵向量。
st这个哨兵向量是为了决定是否要引入外部知识,因为有限制条件,加和为1。所以当belta很大的时候,也就是我更加关注于上下文信息,忽略掉知识信息,那么可以用来解答motivation。zhi’q

2.3 Embedding Knowledge Base Concepts

对于wordnet,把当前词的同义词作为候选concept。

对于Nell,我们搜索当前词的实体和相关的概念分类(concept categories)作为候选concept。

使用知识图谱embedding方法去学习候选的表示。我们把一个concept定义成一个三元组,用一个打分函数去衡量三元组的相关性。打分函数主要是使用双线性函数。头实体和尾实体表示他们的向量。Mr是一个关系确定的embedding矩阵。
在这里插入图片描述

using the max-margin ranking objective:
在这里插入图片描述
对于word net我们使用预处理的数据[1]去训练。包括15万的三元组,4万的同义词和18个关系。对于NELL,使用其子集去进行训练,过滤掉了一些置信度少于0.9的名词短语。最终有18万的名词短语和258个概念分类。

3、Experiment

做了两个实验,第1个实验是实体抽取。第2个实验是事件抽取。

3.1 实体抽取

1、实体抽取结果
在这里插入图片描述
BiLSTM-Fea:a BiLSTM network that combines its hidden state vector with discrete KB features

2、我们设置了不同的KB,去验证外部数据的有效性。
在这里插入图片描述

3.1 事件抽取

1、实验结果
在这里插入图片描述
The first block in Table 5 shows the results of the feature-based linear models;
The second block shows the previously reported results for the neural models;
The third block shows the results of our models

4、Discussion

文章提出了两点,第1点是在循环神经网络当中融入了外部知识表示,第2点是引入了一个哨兵向量,能够去决定是否需要使用外部知识,而且也能够在用外部知识和用上下信息做权衡。

[1]Antoine Bordes, Nicolas Usunier, Alberto GarciaDuran, Jason Weston, and Oksana Yakhnenko. 2013. Translating embeddings for modeling multirelational data. In Advances in Neural Information Processing Systems (NIPS)

这篇关于Leveraging Knowledge Bases in LSTMs for Improving Machine Reading的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

ZOJ 3324 Machine(线段树区间合并)

这道题网上很多代码是错误的,由于后台数据水,他们可以AC。 比如这组数据 10 3 p 0 9 r 0 5 r 6 9 输出应该是 0 1 1 所以有的人直接记录该区间是否被覆盖过的方法是错误的 正确方法应该是记录这段区间的最小高度(就是最接近初始位置的高度),和最小高度对应的最长左区间和右区间 开一个sum记录这段区间最小高度的块数,min_v 记录该区间最小高度 cover

【HDU】4990 Reading comprehension 等比数列:两层快速幂

传送门:【HDU】4990 Reading comprehension 题目分析:首先根据题目意思可以很容易找到一个等比数列: 当n%2==1时,f(n) = 1 + 2^2 + 2^4 + ... + 2^(n-1) 当n%2==0时,f(n) = 2*f(n-1)。 接下来可以构造矩阵用矩阵快速幂求,也可以像我一样用两层快速幂求。(比赛的时候没想到用矩阵快速幂= =) 当n%2

论文《Autoencoders for improving quality of process event logs》翻译

论文《Autoencoders for improving quality of process event logs》翻译 《Autoencoders for improving quality of process event logs》翻译

知识图谱(knowledge graph)——概述

知识图谱总结 概念技术链概括通用知识图谱和垂直领域知识图谱国内外开放知识图谱 技术链详解知识获取知识融合知识表示知识推理知识存储 知识图谱构建流程其他挑战跨语言知识抽取跨语言知识链接 思考参考 概念 知识图谱(Knowledge Graph)以结构化的形式描述客观世界中概念、实体及其关系。是融合了认知计算、知识表示与推理、信息检索与抽取、自然语言处理、Web技术、机器学习与大数据

知识图谱(knowledge graph)——RDF(Resource Description Framework)

RDF的基本单元是三元组(triple) 每个三元组是(主语 谓语 宾语) 这样的元组tuple。主谓宾的取值称为"资源"(Resource, 也就是RDF里的R) 资源可以是一个网址(URI),一个字符串或数 字(严格来讲都是带类型的字符串,称为 literal),或者一个“空节点”(blank node)。 有两种特殊类型的资源。rdfs:Class代表类。 rdf:Property代

HDU1150/POJ1325_Machine Schedule(二分图/最小点覆盖=最大匹配)

解题报告 http://blog.csdn.net/juncoder/article/details/38147135 题目传送门(POJ) 题目传送门(HDU) 题意: A机器有n个模式,B机器有m个模式,每个作业可以在任何机器的特定模式下工作,转换模式需要耗时,求最小耗时 思路: 把AB两机器的模式当成二分图顶点,模式之间的连线就是某个作业可以在该两个模式下工作,就转换成求最小

Machine Learning Week2

Matlab for MAC 下载 address:ClickHere Matlab for MAC 学习地址:ClickHere Multivariate Linear Regression 当有更多信息提供来预测时用multivariate linear regression : n: 有多少已知信息(feature) x^(i): 第i 个training example的已知信息

Machine Learning week1

Machine Learning definition: Machine learning is a type of artificial intelligence (AI) that provides computers with the ability to learn without being explicitly programmed. (Ref) Supervised:有

machine learning - 2

泛化误差 也可以认为是预测时的误差。 训练误差 并不是越小越好,太小会过拟合。 获得测试集合的方法: 1): 2):例如:k-折交叉验证法, 就的每k个数据取一个座位测试集 3):就像在一个抽奖盒里面摸,训练集摸n次,测试集摸m次,但是每摸一次会把小球放回盒子里 查准率:猜“Yes”猜对的概率 差全率:猜对答案是“Yes”的概率 我们注意到(分为ABCD4个区):当A减

综述翻译:Machine Learning-Based Cache Replacement Policies: A Survey 2021

摘要: 虽然在提高命中率方便有了广泛进展,设计一个模拟Belady‘s 算法的缓存替换策略依旧很有挑战。现存的标准静态替换策略并不适合动态的内存访问模式,而计算机程序的多样性加剧了这个问题。有几个因素影响缓存策略的设计,如硬件升级,内存开销,内存访问模式,模型延时等。 用机器学习的算法解决缓存替换的问题取得了令人惊讶的结果,并朝着具有成本效应的解决方案发展。在本文中,我们回顾了一些基于机器学习