通俗讲解关系抽取的常见方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通俗讲解关系抽取的常见方法相关的知识,希望对你有一定的参考价值。

参考技术A

关系提取是指从文本中提取语义关系,这种语义关系通常发生在两个或多个实体之间。这些关系可以是不同类型的。" Paris is in France "表示巴黎与法国之间的" is in "关系。这可以用三元组(Paris, is in, France)来表示。

信息抽取(Information Extraction, IE)是从自然语言文本中抽取结构化信息的领域。该领域用于各种NLP任务,如创建知识图、问答系统、文本摘要等。关系抽取本身就是IE的一个子域。

关系提取有五种不同的方法:

我们将在一个较高的层次上讨论所有这些问题,并讨论每个问题的优缺点。

许多实体的关系可以通过手工模式的方式来提取,寻找三元组(X,α,Y),X是实体,α是实体之间的单词。比如,“Paris is in France”的例子中,α=“is”。这可以用正则表达式来提取。

仅查看关键字匹配也会检索出许多假阳性。我们可以通过对命名实体进行过滤,只检索(CITY、is in、COUNTRY)来缓解这种情况。我们还可以考虑词性(POS)标记来删除额外的假阳性。

这些是使用 word sequence patterns 的例子,因为规则指定了一个遵循文本顺序的模式。不幸的是,这些类型的规则对于较长范围的模式和具有更大多样性的序列来说是不适用的。例如:“Fred and Mary got married”就不能用单词序列模式来成功地处理。

相反,我们可以利用句子中的从属路径,知道哪个词在语法上依赖于另一个词。这可以极大地增加规则的覆盖率,而不需要额外的努力。

我们也可以在应用规则之前对句子进行转换。例如:“The cake was baked by Harry”或者“The cake which Harry baked”可以转化成“Harry bake The cake”。然后我们改变顺序来使用我们的“线性规则”,同时去掉中间多余的修饰词。

优点

缺点

这里的思想是从一组手工编写的规则开始,通过迭代的方式从未标记的文本数据中自动找到新的规则。或者,你可以从一个种子元组开始,用特定的关系描述实体。例如,seed=(ORG:IBM, LOC:Armonk), (ORG:Microsoft, LOC:Redmond)表示具有“based in”关系的实体。

Snowball是一个相当古老的算法示例,它可以实现以下功能:

优点

缺点

进行监督关系提取的一种常见方法是训练一个层叠的二分类器(或常规的二分类器)来确定两个实体之间是否存在特定的关系。这些分类器将文本的相关特征作为输入,从而要求文本首先由其他NLP模型进行标注。典型的特征有:上下文单词、词性标注、实体间的依赖路径、NER标注、tokens、单词间的接近距离等。

我们可以通过下面的方式训练和提取:

有些人选择不训练“相关分类器”,而是让一个单一的二分类器一次性确定这两件事。

优点

缺点

我们可以将使用种子数据(比如弱监督的RE)和训练分类器(比如有监督的RE)的思想结合起来。但是,我们可以从现有的知识库(KB),比如Wikipedia、DBpedia、Wikidata、Freebase、Yago中得到种子,而不是自己提供一组种子元组。

模糊监督的关系抽取方法:

优点

缺点

在这里,我们从文本中提取关系,而不需要标注任何训练数据、提供一组种子元组或编写规则来捕获文本中不同类型的关系。相反,我们依赖于一组非常普遍的约束和启发。这算不算是无监督的,是有点争议的,因为我们使用的“规则”是在一个更普遍的层面上。此外,在某些情况下,甚至可以利用小的标注文本数据集来设计和调整系统。然而,这些系统一般需要较少的监督。开放信息提取(Open Information Extraction, Open IE)通常指的是这种范式。

TextRunner是属于这类关系提取方案的一种算法。其算法可以描述为:

1. 在一个小语料库上训练一个自监督分类器

2. 遍历整个语料库并提取可能的关系

3. 基于文本冗余度的关系排序评估

OpenIE 5.0和Stanford OpenIE是这样做的两个开源系统。它们比TextRunner更现代(这里只是用它来演示范例)。我们可以期望从这样的系统输出许多不同的关系类型(因为我们没有指定我们感兴趣的关系类型)。

优点

缺点

自然语言处理信息抽取:命名实体识别与关系抽取


Day1

信息抽取:命名实体识别与关系抽取

信息抽取(Inforamtion Extraction,IE),又称文本分析。信息抽取是形成数据库内容的有效手段,通过在杂乱无章的信息中抽取出实体及其实体关系。


PART

01   命名实体识别


1.命名实体识别(NER是识别给定文档中某一特定命名实体类型的所有实体指称,一般来说是信息抽取的第一个环节。

常见方法:

  • 采用基于规则的方法。

1️⃣通过规则从文本序列中识别专有名词;

2️⃣通过规则将这些专有名词分类为预定义的类别。

在这种方法中,任何系统和语言的规则都是由究人员手工编写的。


  • 第二类是基于机器学习的方法。

在基于机器学习的实体识别系统中,其目的是将识别问题转化为分类问题,并采用分类统计模型来解决。


在这种类型的方法中,系统通过机器学习算法来查找文本中的模式和关系,然后识别名词并将名词分类为特定的类,例如人、地点以及时间等。


基于机器学习算法的实体识别主要使用监督学习的方式从文本中进行实体抽取。


在统计模型中,通常将实体识别任务视为一个序列标注问题。


该过程需要标注好的训练数据来构建统计模型,在没有大量训练数据的情况下,无法取得良好的性能。


常用的基于监督训练的实体识别方法:

隐马尔科夫模型(HMM)、最大熵马尔科夫模型(MEMM)、条件随机场(CRF)以及支持向量机(SVM)。


2.常见问题:实体歧义。

实体歧义是指一个实体的名字对应到多个真实世界实体,比如“苹果”实体既可以表示水果种类的苹果也可以表示公司种类的苹果公司。根据该实体出现的上下文语境确定其唯一指代的真实世界实体就是实体歧义消除。


解决方法:

实体消歧的方法大致上包括基于聚类的实体消歧以及基于实体链接的实体消歧。

1️⃣基于聚类的实体消歧

基于聚类的实体消歧方法利用了同一指称项具有相似的上下文特性,然后利用聚类算法进行歧义消除。所以基于聚类的实体消歧核心问题就是如何为每个实体进行特征构造并根据不同的特征表示进行特征选择。


主要:基于词袋模型的方法、基于语义特征的方法、基于社交网络的方法以及基于维基百科的方法。


优缺点:基于聚类的消歧方法主要利用了语义信息,可以很好的达到消歧效果,但是其消歧目标却难以确定,同时实体没有一个显示的表示。


2️⃣基于链接的实体消歧主要是给定需要消歧的实体以及实体的上下文,将其链接到给定知识库中的相应实体上。


基于链接的实体消歧首先通过维基百科以及上下文信息发现候选实体,然后根据指称项和候选实体之间的相似性等特征确定最后的目标实体。




PART

02    关系抽取


关系抽取指的是给定句子中的一对实体,根据其上下文的特征判断这对实体之间是何种关系。在整个知识抽取过程中,关系抽取是实体识别以及实体消歧之后非常重要的操作。


1 方法分类

第一类为半监督的方法,  主要使用基于模板的bootstrapping 方法来抽取关系。


一般情况下该方法需要大量的没有标注的数据以及少量的对应关系的种子实例。


基本思路:

首先根据种子文件来学习模板,然后对学习出来的模板进行选择,最后再根据选择出来的模板去语料中进行实体对抽取,一直迭代此过程直到收敛。


比如,如果准备学习“首都”(CaptialOf)的模板时,对应的种子文件应该为<“北京”,“中国”><“伦敦”,“英国”>等。

给定这些种子之后,一个 bootstrapping 的算法就会自动地从语料中学到具有相同关系的实体对<“巴黎”,“法国”>。该方法的代表作之一就是 NELL


其他半监督的方法还有基于主动学习的方法以及基于标签传播的方法等


第二类关系抽取的方法为监督学习方法。


学习基本上有基于特征向量的方法、基于核函数方法以及基于神经网络的方法。基于特征向量的方法其主要步骤是特征向量的构建以及分类器的选择。特征向量基本上通过从句子和实体的语法以及语义层面抽取而来,分类器基本上主要以SVM 和最大熵模型为主。基于核函数的方法主要在于如何有效的挖掘和表示结构化信息以及如何度量结构化信息之间的相似度。近年来大部分监督训练的工作集中在基于神经网络的方法上,比如基于卷积神经网络的方法以及基于循环神经网络的方法等。

第三类方法为无监督学习方法。


目前基于无监督学习的关系抽取方法主要使用聚类方法来进行关系的抽取。该方法将实体之间的上下文特征抽取出来并计算上下文相似度,最后基于此对实体对进行聚类以及标记。



PART

03    最新研究


1 抽取形式的改变

上述这种管道式的知识抽取方法的好处是可以针对单独的部分进行优化,使得整个知识抽取任务变得简单可协作。但是每一部分的操作又是依靠上一步的结果,所以管道式的抽取方法带来的弊端便是容易将上游的误差传到下游的模型中。


为了避免这种错误的传播,最新的一些研究提出同时抽取实体和关系。


这样一来就变成了优化整体的目标。在关系抽取时,也可以对实体抽取进行优化。该抽取方法基本上分为基于整数线性规划的方法(Integer  Linear  Programming based  Approach)、基于图的方法(GraphicalModels based Approach)、基于 Card-Pyramid 解析的方法、基于结构预测的方法以及基于深度学习的方法。


2 抽取内容的改变


【自然语言处理】信息抽取:命名实体识别与关系抽取



本文内容只用于学术交流和观点传播,全文摘录自:

[1]王鹏伟. 基于模板学习和深度学习的知识抽取和表示学习的研究与应用[D]. [出版地不详]: 华南理工大学, 2018.

[2]书籍:《自然语言处理综论


·END·
 

有兴趣为自己发声请发到青年有话后台!

学习·共读·分享


以上是关于通俗讲解关系抽取的常见方法的主要内容,如果未能解决你的问题,请参考以下文章

自然语言处理信息抽取:命名实体识别与关系抽取

3种基于深度学习的有监督关系抽取方法

知识图谱关系抽取

第十七篇:信息抽取Information Extraction

第十七篇:信息抽取Information Extraction

[信息抽取]基于ERNIE3.0的多对多信息抽取算法:属性关系抽取