[论文阅读笔记33]CASREL:基于标注与bert的实体与关系抽取

题目

A Novel Cascade Binary Tagging Framework for Relational Triple Extraction
一个关系三元组抽取的新型级联二元标记框架
Jilin University
Shenzhen Zhuiyi Technology
University of North Carolina at Chapel Hill 北卡罗来纳大学教堂山分校

摘要

解决问题: solving the overlapping triple problem.(解决重叠三元组问题,即同一句子中多个三元组共享相同实体)
提出框架: 提出CASREL框架—cascade binary tagging framework
新思路:把关系视为离散的标签,而是把关系建模看成在一个句中subjects到objects的映射;
结果:CAS-REL框架超过了state-ofthe-art methods. datasets NYT: 17.5; WebNLG:30.2

问题理解

[论文阅读笔记33]CASREL:基于标注与bert的实体与关系抽取_第1张图片

overlapping问题带来的挑战:

  1. overlapping triple problem directly challenges conventional sequence tagging schemes
  2. brings signifificant diffificulty to relation classifification approaches(一个实体是一个关系分类);

之前一直觉得ENR的overlapp是一个需要好好研究的问题,看到这里关系的overlapping可更是一个问题。EPO就是两个实体可以有两种关系;SEO,单个实体可以是多个关系的实体。

对于这个问题的解决方法:

方法1: a sequence-to-sequence (Seq2Seq) model with copy mechanism to extracttriples.

方法2:基于GCNs

Seq2Seq extraction order,reinforcement learning Learning the extraction order of multiple relational facts in a sentence with reinforcement learning 2019
GCNs modeling text as relational graphs with a graph convolutional networks (GCNs) Graphrel: Modeling text as relational graphs for joint entity and relation extraction 2019

提出的模型

之前的方法都是一些离散方法,它们都将关系视为要分配给实体对的离散标签,这种模式是把关系分类看成了一个硬机器学习问题。

首先,类分布是不平衡的;

然后,分类器可能会被混淆(当某对实体有两个关系时);

目标: 识别出所有可能的三元组。这种方法可谓是一步到位了,直接三元组(s,r,o)。

x_i表示训练集D中的标注的句子,x_i上的三元组集T_j = {(s, r, o)},T_j里面可能存在overlapping三元组:

[论文阅读笔记33]CASREL:基于标注与bert的实体与关系抽取_第2张图片

好处:

  1. 由于数据似然是在三元组层进行计算的,所以优化这个似然相当于直接优化三元组的最终目标了。即是这样优化一点到位了,就是对三元组层抽取的优化;
  2. 可以不对重重叠性进行假设,只是通过设计去处理overlapping的问题;
  3. 先学习subject实体,然后,对于每种的关系,学习object的标注p_r(o|s,x_i);

关键点: 对the subject tagger 与 relation-specifific object taggers的实例化,论文在深度双向bert的top上采用了binary taggers.

整个思路为:

把关系建模为subjects到objects的映射函数;不是关系分类f(s,o) -> r, 而是特定关系的标记器f_r(s) -> o; 也就是识别出subject某种指定关系的所有可能object,当然有可能找不到这样的object.

步骤:

步骤01: 确定句子中所有的subject;

步骤02: 对于每个subject, 使用特定关系的标签器一并标识所有可能的关系与相关的objects.

【we fifirst run the subject tagger to find all possible subjects in the sentence, and then for each subject found, apply relation-specifific object taggers to find all relevant relations and the corresponding objects.】

[论文阅读笔记33]CASREL:基于标注与bert的实体与关系抽取_第3张图片

BERT-based encoder module ---- 编码

由BERT进行编码。

Cascade Decoder – 级联解码器

解码器1:Subject Tagger

采用两个相同的二元分类器分别检测subject的开始与结束位置,进而表示一个subject的的始末位置。

image-20210430155156401

p_start_s_i表示将输入序列中的第i个token标识为主体的开始位置的概率; 同理,p_start_s_i表示结束位置的概率;

目标函数为:

[论文阅读笔记33]CASREL:基于标注与bert的实体与关系抽取_第4张图片
这里有一个原则性的细节:在确定subject时,采取了最近开始-结束对匹配原则去找subject(nearest start-end pair match principle)。

解码器2:Relation-specifific Object Taggers

标注:

[论文阅读笔记33]CASREL:基于标注与bert的实体与关系抽取_第5张图片
形式上关系与subject基本上一样的,在输入特征方面,它考虑了subject的相关信息,即是v, 上式中每个位置的xi都加上了这个subject向量;这个subject向量是怎么求出来的呢? 答案是对subject中的所字符向量求平均值。

似然函数:

[论文阅读笔记33]CASREL:基于标注与bert的实体与关系抽取_第6张图片

总的损失函数:

[论文阅读笔记33]CASREL:基于标注与bert的实体与关系抽取_第7张图片

实验

数据集: NYT, WebNLG

[论文阅读笔记33]CASREL:基于标注与bert的实体与关系抽取_第8张图片

指标:只有当subject、object、关系都正确时,提取的关系三元组*(subject, relation, object)*才被认为是正确的。 Standard micro Precision (Prec.), Recall (Rec.) and F1-score

结果:

[论文阅读笔记33]CASREL:基于标注与bert的实体与关系抽取_第9张图片

提出的CasREL都超过了历史上最好的结果,F1值在两个数据集中分别有 17.5% ,30.2%的提升。

后面三个对比做了消融分析,random表示Bert中的所有参数是随机生成;lstm表示采用了LSTM来编码的,这里的嵌入采用了Glove;最后一个是本论文的模型;

从这个结果来看:预测训练的BERT比LSTM是有很大的提升的。

另外,对于不同数据库之间,之前的效果不佳,论文中推测出来的原因是因为后面那个数据库的不规则三元组造成的。

进一步分析不同类型句子之间的关系:

[论文阅读笔记33]CASREL:基于标注与bert的实体与关系抽取_第10张图片

从上面的把特殊句子拆出来分析时,CasRel表现出来的结果也是太优秀了。

选择来对比的Method–baselines:

method 论文
NovelTagging 2017 - Joint extraction of entities and relations based on a novel tagging scheme
CopyR 2018 - Extracting relational facts by an end-to-end neural model with copy mechanism
GraphRel 2019 - Graphrel: Modeling text as relational graphs for joint entity and relation extraction
CopyR_RL 2019 - Learning the extraction order of multiple relational facts in a sentence with reinforcement learning

总结

重叠的关系三元组的提取方面,这个模型表现出来的确很优秀。另外,这个模型本身也体现出自己的创新性。接触这个内容之前,一直以为关系抽取,一般是采用分类来处理的,而这个是基于标记来实现也是挺的一种方法哈,感叹,人类的智慧真的很奇妙!!!

相关工作

早期工作,关系抽取是pipeline方法; 例如:

  1. fifirst run named entity recognition (NER);

  2. relation classifification (RC) on pairs of extracted entities.

Kernel methods for relation extraction 2003
Exploring various knowledge in relation extraction 2005.ACL
Exploiting syntactico-semantic structures for relation extraction 2011.acl
Distant supervision for relation extraction without labeled data 2009,AFNLP
Improved relation extraction with feature-rich compositional embedding models 2015,EMNLP

这个方法缺点是error传播。

解决这个方法:对实体和关系的联合学习–基于特征的模型&基于神经网络模型,前者手工抽特征,后者自己学习特征。

基于特征的模型:

Jointly identifying entities and extracting relations in encyclopedia text via a graphical model approach 2010
Incremental joint extraction of entity mentions and relations 2014
Modeling joint entity and relation extraction with table representation 2014
Cotype: Joint extraction of typed entities and relations with knowledge bases 2017

基于神经网络模型:

Table fifilling multi-task recurrent neural network for joint entity and relation extraction 2016
Going out on a limb: Joint extraction of entity mentions and relations without dependency trees 2017
Joint extraction of entities and relations based on a novel tagging scheme 2017
Extracting relational facts by an end-to-end neural model with copy mechanism 2018
Graphrel: Modeling text as relational graphs for joint entity and relation extraction 2019
End-to-end relation extraction using lstms on sequences and tree structures 2016

缺点:这些编码器都是分离的,所以导致了实体与关系的训练目标也是分开的。

解决问题,采用统一的标记模式(unifified tagging scheme),并把关系三元组转成序列标记问题:2017 - Joint extraction of entities and relations based on a novel tagging scheme

由于实体和关系的信息集成到统一标记方案中,方法可以直接建模关系三元组作为三元组层的一个整体。—【这个想法的确是一个很有意思的想法。】

以上都是解决一般情况的三元组抽取,对于特殊三元组情况—overlapping relational triples,这里需要作出特殊的研究, 例如:

Extracting relational facts by an end-to-end neural model with copy mechanism. 通过带有copy机制的seq2seq模型去解决三种overlapping类型的情况。
Graphrel: Modeling text as relational graphs for joint entity and relation extraction 提出GCNs的相关方法去解决overlapping的问题

参考:
代码:https://codechina.csdn.net/mirrors/weizhepei/CasRel?utm_source=csdn_github_accelerator
https://github.com/weizhepei/CasRel
论文:https://arxiv.org/abs/1909.03227

https://blog.csdn.net/ld326/article/details/116465089

你可能感兴趣的:(NER,NLP,机器学习,人工智能,深度学习)