论文作者:

论文链接:https://arxiv.org/pdf/2005.00436.pdf

代码实现:https://github.com/cslydia/BiFlaG


Abstract

作者为嵌套命名实体识别(nested NER)提出了新颖的二部平面图网络(bipartite flatgraph network, BiFlaG),它包含两个子图模型:针对最外层实体的非嵌套NER模型与针对位于内层的全部实体的图模型。作者采用双向LSTM与图卷积网络(graph convolutional network, GCN)联合学习非嵌套实体与它们的内部依赖。先前的模型仅考虑由最内层到外层(或由外到内)信息的单向传递,与它们不同的是,我们的模型可以有效捕捉到它们之间的双向交互。我们首先用非嵌套NER模型识别出的实体构建一个实体图,然后将其喂入下一个图模块中。从图模块中学习到的更丰富的表示形式携带了内部实体之间的依赖性,并且可以利用它改善最外层实体的预测。在三个标准嵌套NER数据集上的实验结果证明了 BiFlaG 比先前的 SOTA 模型表现更好。

1 Introdution

NER是识别包含预定义类别的名称的单词或短语,例如 location, organization, medical codes 这样的预定义类别。nested NER进一步处理可能互相嵌套的实体,例如 figure1 中的 the United Statesthird president of the United States。这种现象在NLP中十分普遍。

NER通常被视为序列标注任务( Lample et al., 2016; Ma and Hovy, 2016; Peters et al., 2017 )。这些方法仅仅对非嵌套实体奏效,而忽视了嵌套实体。人们一直在努力处理嵌套结构。Ju et al. 2018 介绍了一种分层序列标记模型,先识别最内层实体,再将它们送入下一层提取外部实体。然而,这种模型有着明显的错误传播。从前面层提取的错误实体将影响下一层的性能。而且,这样的分层模型还面临着高层的实体稀疏问题。例如,在 ACE2005 训练集中,第6层只有两个实体。Sohrab and Miwa 2018 提出了一个基于区域的方法,这种方法枚举了所有可能的区域,并对其实体类型进行分类。但这种模型可能忽视明确的边界信息。Zheng et al. 2019 将分层序列标记模型与基于区域的方法结合起来,先定位实体边界,再使用区域分类模型对实体进行预测。但这种模型很少关注位于外层和内层实体之间的相互作用。

作者在本论文中为嵌套NER提出了一种二部平面图网络(BiFlaG),该模型将包含任意多层的嵌套结构建模为两部分:最外层实体和剩余所有层的内层实体。例如,在 Figure1 中,最外层实体 Thomas Jefferson, third president of the United States 被视为非嵌套实体,而 third president of the United States(第二层) the United States(第三层)被视为内层实体。具有最大覆盖的最外层实体通常由非嵌套NER模型识别,通常采用的是序列标注模型。所有内层实体是通过图模块提取出来的,图模块使用图卷积网络(GCN)在跨度的起点和终点之间迭代地传播信息(Kipf and Welling, 2017)。我们的模型有双重好处:(1)例如 (Ju et al., 2018)这样的分层模型面临着从低到高层的信息单向传播的约束,与此不同的是,作者所提出的模型以双向方式完全捕捉到了最外层与内层之间的相互作用。从非嵌套模型提取出的实体被用来为图模块构建实体图。接着,从图模块学习到的新的表示形式被反馈到非嵌套模型中以提高最外层实体的预测。将所有位于内层的实体合并到图模块中还可以有效减轻高层实体的稀疏性。(2)与基于区域的模型(Sohrab and Miwa, 2018; Zheng et al., 2019)相比,作者所提出的模型充分利用了最外层实体的序列信息,这些信息在语料库中占很大比例。

这篇论文的主要贡献可以总结如下:

  • 为嵌套 NER 引入了一个名为 BiFlaG 的新颖的二部平面-图网络,该网络包含用于最外层实体的非嵌套模块和用于内层实体的图模块。
  • BiFlaG 充分利用了最外层实体的序列信息,同时双向考虑了最外层与内层之间的相互作用,而不是信息的单向传递。
  • 作者在三个基准数据集( ACE2005, GENIA, and KBP2017 )上进行了广泛实验,所提出的模型在相同设置下的性能要优于先前的 SOTA 模型。

2 Model

BiFlaG 包含两个子模块,一个用来学习最外层实体的非嵌套 NER 模块,一个用来学习内层实体的图模块。Figure2 是模型的概述。非嵌套模块采取 BiLSTM-CRF 提取最外层实体,并使用其构建 Figure2 中的实体图。图模块使用 GCN 在潜在实体的起点和终点之间迭代地传播信息来学习内层实体。最终,从图模块学到的表示形式进一步反馈到非嵌套模块中更好地进行最外层预测。

2.1 Token Representation

给定一个由 个 token 组成的序列  ,对于每一个 token ,我们先将单词级别和字符子别的嵌入拼接起来 是预训练的单词嵌入, 是从 (Xin et al., 2018) 的工作中学到的字符嵌入。然后我们使用 BiLSTM 为每一个token 捕获序列信息 。我们将  作为单词表示形式,并将其提供给后续模块。

2.2 Flat NER Module

作者在非嵌套模块中采取 BiLSTM-CRF 结构(Lample et al., 2016; Ma and Hovy, 2016; Yang and Zhang, 2018; Luo et al., 2020) 识别非嵌套实体,该结构由双向 LSTMBiLSTM)编码器和条件随机场(CRF)解码器组成。

BiLSTM 捕获句子双向的上下文信息,并且可以有效表示上下文中单词的隐藏状态。BiLSTM 表示了在每一步的序列信息 ,BiLSTM 的隐藏状态 h 可以被表达如下:

其中, 和  是可训练的参数, 和  分别代表了 token  的前向和后向上下文表示形式。BiLSTM的输出 被进一步送入CRF层。

CRF (Lafferty et al., 2001) 在 SOTA NER 模型中 (Lample et al.,2016; Ma and Hovy, 2016; Yang and Zhang, 2018)被广泛使用以帮助做出更好的决策,其通过增加相邻标签之间的转移分数来考虑强标签依赖性。在解码过程中,使用 Viterbi 算法搜索具有最大概率的标签序列。对于长度为 N 的预测序列  ,它的分数被定义如下:

其中, 表示从  到  的转移分数, 是第 i 个单词被标为第 j 个标签的分数,该分数来源于 BiLSTM 编码器。

CRF 模型在所有可能的标签序列 y 上定义了一个条件概率族 

在训练阶段,考虑正确预测的最大log概率。当解码的时候,我们搜索最大得分的 tag 序列。

2.3 Graph Module

由于原始句子是没有固有图结构的纯文本,所以先基于文本序列信息和来自于非嵌套模块的实体信息构建图。然后,应用 GCN (Kipf and Welling, 2017; Qian et al., 2019) 来提取内层实体,GCN 在图中的相邻节点之间传播信息。

Graph Construction. 如 Figure2 所示,为每个句子创建两种类型的图。每个图被定义为,其中V是点(单词)集合,E是边集合。

  • 实体图  :对于从非嵌套模块提取的实体中的所有节点,在任意两个节点之间添加一条边,其中,如 Figure2 所示,从而允许利用最外层实体信息。
  • 邻接图  :对于句子中的每对邻接单词,从左到右添加一条有向边,从而允许利用局部上下文信息。

Bi-GCN. 为了考虑每个节点的传入和传出特征,follow (Marcheggiani and Titov, 2017; Fu et al., 2019)的工作,使用Bi-GCN提取图特征。给定一个图 和单词表示形式 ,从Bi-GCN学到的图特征表达如下:

其中, 和  是可训练的参数, 是单词表示形式的维度, 是GCN的隐藏大小,ReLU 是非线性激活函数。 是从token  出去的边, 是进入token  的边。

将两个图的特征整合得到两个图的影响

其中, 是被学习的权重, 是偏置参数。分别是的图特征。

在从Bi-GCN得到图表示形式之后,学习内层实体得分

其中,L是实体类型数。 表示从token  到 token  的跨度的类型概率。

对于内层实体,将每个单词对 的ground truth实体定义为,其中  和  是跨度的起点和终点。交叉熵(CE)被用来计算损失

其中, 是图模块中的实体得分。I(O)是区分非实体'O'和其他实体类型损失的切换函数。定义如下:

 是偏置权重, 越大,图模块中实体类型的影响越大,非实体'O'的影响越小。

2.4 BiFlaG Training

公式(7)中的实体得分M携带了句子中每个单词对的类型概率。为了进一步考虑从内层实体到外层实体的信息传播,使用Bi-GCN从实体得分M中为非嵌套模块生成新的表示形式。单词对  的最大类型得分  表明这个跨度是实体还是非实体以及成为该类型的置信度得分,其通过最大池化操作获得:

其中,type表示对应于最大类型得分的实体类型或非实体‘O’。当对应类型为‘O’, 和  之间就不存在依赖性,因此将  设置为0。一个携带内层实体边界信息的新图被定义为,其中

用于更新非嵌套模块的新表示形式由两部分组成。第一部分携带每一个token先前的表示形式

其中, ,。第二部分汇总了新图的内层实体依赖性

最终,将  和  相加,获取新的表示形式

 被送入非嵌套模块中更新参数,提取更好的最外层实体。

对于最外层实体,使用BIOES序列标注模式并采用CRF计算损失。将对应于两个表示形式(X和)的损失加在一起作为最外层的损失

序列中的实体被分为最外层实体和内层实体两个不相交的集合,它们分别通过非嵌套模块和图模块建模。每一个模块中的实体共享相同的神经网络结构。在两个模块之间,在非嵌套模块中的实体要么是一个独立的节点,要么与一个或多个图模块中的实体相互作用。因此,BiFlaG的确是一个二部图。BiFlaG的完整训练过程如 Algorithm1 所示。

2.5 Loss Function

BiFlaG模型预测最外层和内层实体。整个的损失定义如下:

其中, 是非嵌套模块和图模块之间的权重。在训练阶段最小化总损失。

3 Experiment

3.1 Dataset and Metric

在三个标准嵌套NER数据集上评估BiFlaG:GENIA, ACE2005, and TACKBP2017 (KBP2017) 数据集,分别包含22%、10%、19%的嵌套提及。Table1 列出了相关数据的统计信息。

GENIA  数据集 (Kim et al., 2003) 基于GENIAcorpus3.02p( http://www.geniaproject.org/genia-corpus/posannotation)。使用与先前工作(Finkel and Manning, 2009; Lu and Roth, 2015; Lin et al., 2019a) 相同的设置。该数据集包含5个实体类别,并按8.1:0.9:1 的比例划分为训练集、验证集、测试集。

ACE2005  (https://catalog.ldc.upenn.edu/LDC2006T06 (ACE2005)) (Walker et al., 2006) 包含7个细粒度实体类别。按照与 (Lu and Roth, 2015; Wang and Lu, 2018; Katiyar and Cardie, 2018; Lin et al., 2019a) 相同的设置对数据进行预处理,方法是保留bn, nw 和 wl 文件,并将这些文件分别按8:1:1的比例分为训练集、验证集和测试集。

KBP2017  跟随 (Lin et al., 2019a) ,作者在2017英文评估数据集(LDC2017E55)上评估本文提出的模型。训练集和验证集包含先前的 RichERE 注释数据集(LDC2015E29, LDC2015E68, LDC2016E31 and LDC2017E02)。数据集被分为866/20/167个文档分别用于训练集、验证集和测试集。

Metric  Precision (P), recall (R) and F-score (F1) 被用来评估预测的实体。如果一个实体存在于目标标签中,那它就被确认为正确的实体,而与模型进行此预测的层级无关。

3.2 Parameter Settings

论文模型是基于(Yang and Zhang, 2018)框架的。我们使用随机梯度下降(SGD)和 Adam 对非嵌套模块和 GCN 模块分别进行了优化。对于GENIA数据集,使用了与 (Ju et al., 2018; Sohrab and Miwa, 2018; Zheng et al., 2019) 相同的200维预训练单词嵌入。ACE2005 KBP2007 数据集使用了公开提供的预训练的100维GloVe (Pennington et al., 2014)嵌入。按照 (Xin et al., 2018)训练字符嵌入。对非嵌套和 GCN 模块分别设置0.015和0.001的学习率。以0.5的比率将 dropout 应用在嵌入和隐藏状态上。BiLSTMGCN 的隐藏层大小都被设置为256。偏置权重  和  都被设置为1.5。

3.3 Results and Comparisons

Table2 将本文模型与一些现存的 SOTA 方法在三个基准数据集上进行了对比。仅给出标准训练数据和公开可用的词嵌入,Table2 中的结果表明我们的模型优于所有这些模型。这些数据集上目前的 SOTA 结果在 Table2 中用†标记,本文在ACE2005,GENIA 和 KBP2017上对 F1 值进行了0.5 / 1.3 / 2.8 的改进。KBP2017 比 ACE2005 和 GENIA 包含更多的实体。测试集上的实体数量是 ACE2005 的四倍。本文的模型在此类数据集上有最显著的改进,证明了BiFlaG模型的有效性。更值得注意的是,没有 POS 标签的本文模型超越了之前的模型(Wang and Lu, 2018; Lin et al., 2019a),在所有三个数据集上先前的模型都使用 POS 标签作为附加的表示形式。此外,(Lin et al., 2019b) 将地名词典(gazetteer)信息纳入ACE2005 数据集,我们的模型也与其结果可比。其他类似 (Strakova et al., 2019) 的工作在训练集和验证集上训练他们的模型,因此不能直接与本文模型进行比较。

Table3 展示了本文模型与分层模型 (Ju et al., 2018) 和基于区域的模型 (Zheng et al., 2019) 在 GENIA 测试数据集的五个类别上进行的详细比较。与基于区域的模型相比,分层模型似乎具有较高的 precision 和较低的 recall ,因为它们易受错误传播的影响,如果内层实体遗漏,外层实体则不会识别。同时,基于区域的模型 precision 较低,因为它们可能会生成大量候选跨度。相比之下,BiFlaG 模型可以很好地协调 precision 和 recall 。实体类型 ProteinDNAGENIA 数据集上嵌套实体的数量最多,BiFlaG 在这两种实体类型上的改进是显著的,这可以归因于 BiFlaG 的两个子图模块之间嵌套信息的相互作用。

3.4 Analysis of Each Module

Table4 在 ACE2005GENIA 数据集上评估了每一个模块的性能。使用非嵌套模块对最外层实体识别在两个数据集上的表现都很好。然而,在 GENIA 数据集上内层实体的 recall 很低。根据 Table1 中的统计信息,在 GENIA 上只有11%的实体位于内层,而在 ACE2005 数据集中,比例达到24%。可以推测,内层实体分布的稀疏性对结果有很大影响。如果每一层的内层实体都被识别出来,稀疏性甚至可能更糟。通过增加公式(14)中的权重  可以增强稀疏实体的影响,但可能损伤 precision,设置 使 precisionrecall 之间有更好的权衡。

3.5 Analysis of Entity Length

本文在 ACE2005 数据集上进行了其他实验,以检测最外层实体的长度对内层实体提取的影响,如 Table6 所示。非嵌套模块可以很好地预测最外层的实体,这些实体在所有类型的实体中占很大的比例。通常,内层实体的性能受提取性能和最外层实体的长度影响。最外层实体越短,越可能有共享其第一个token或最后一个token的内层实体,使构建的图更加具有指导性,因此它的内层实体更容易提取。

3.6 Ablation Study

本文中,作者使用非嵌套模块和图模块的交互以便分别更好的预测最外层和内层实体。本文做了消融实验以验证交互的有效性。第一部分是从非嵌套模块到图模块的信息传递,这一部分做了四个实验:(1)no graph:跳过公式(5)-(6),并让图的特征 f = LINEAR(x)。在这种情况下,内层实体独立于最外层的实体,并且仅依赖携带上下文信息的单词表示(第2.1节)。(2)adjacent graph:进一步使用文本的序列信息来进行内层实体预测。(3)entity graph:外层实体的边界信息可以指示内层实体,我们根据非嵌套模块提取的实体构造一个实体图。(4)both graph:当非嵌套模块没有识别出外层实体时,内层实体将不能收到边界信息,我们使用文本的序列信息弥补仅使用实体图的不足。实验结果表明,实体图比邻接图携带更多有用的信息,这分别使基线提高了1.4 / 1.1 / 1.2 F1得分。通过将这两个图组合在一起,我们可以获得1.7 / 1.6 / 1.6 F1得分的更大收益。第二个部分时从图模块到非嵌套模块传递信息,从图模块中学到的新的表示形式  被反馈到非嵌套模块中。 配备了内部实体的依存关系,并且是有用的,对三个基准分别提高了0.8 / 1.5 / 0.5 F1。

3.7 Inference Time

我们根据每秒解码的单词数,用(Zheng et al., 2019), (Sohrab and Miwa, 2018)(Ju et al., 2018) 检查 BiFlaG 的推理速度。 对于所有比较的模型,我们使用 (Zheng et al., 2019) 发布的重新实现的代码,并将 batch size 设置为相同的10。与(Zheng et al., 2019), (Sohrab and Miwa, 2018) 相比, BiFlaG 不需要为每个潜在实体计算区域表示,因此我们可以充分利用 GPU 并行性。 与需要对每一层进行CRF解码的 (Ju et al., 2018) 相比,我们的模型只需要计算两个模块,相比之下,级联的CRF层会限制它们的推理速度。

4 Case Study

Table7 展示了模型中每个模块的案例研究。在这个例子中,实体 my, my town, that 和 Krispy Kreme 嵌套在实体 the location in my town that was recently abandoned by Krispy Kreme 中。BiFlaG 模型成功提取了所有具有精确边界和实体类别标签的实体。 如果没有图构建,则无法识别嵌套实体my town, that 和 Krispy Kreme。 如果两个模块之间没有交互,则最外层的实体(the location in my town that was recently abandoned by Krispy Kreme)就会被错误地标记为LOClocation),它实际上是FACFacility)类型,内层嵌套的实体 my,my town 和 Krispy Kreme 不会反馈到非嵌套模块,这可能有助于更正最外层实体的提取。

5 Conclusion

这篇论文为非嵌套 NER 提出了新的二部平面-图模型(BiFlaG),它由两个相互作用的子模块组成。应用分而治之的策略,非嵌套模块负责最外层实体,图模块集中于内层实体。BiFlaG 模型还促进了两个模块之间的完全双向交互,这使得嵌套的NE结构在很大程度上可以共同学习。 作为通用模型,BiFlaG 模型还可以通过简单地移除图模块来处理非嵌套结构。 在相同的严格设置下,经验结果表明,本文的模型通常优于先前的 SOTA 模型。

论文笔记 Bipartite Flat-Graph Network for Nested Named Entity Recognition | ACL2020相关推荐

  1. 论文阅读笔记-FGN: Fusion Glyph Network for Chinese Named Entity Recognition

    论文地址:paper:https://arxiv.org/ftp/arxiv/papers/2001/2001.05272.pdf github地址:github:https://github.com ...

  2. 论文笔记:Gazetteer-Enhanced Attentive Neural Networks for Named Entity Recognition

    文章目录 摘要 一.模型 二.结果 三.疑惑 摘要 文章设计了一种利用外部词典加强命名实体识别的方法,整个模型大致分为[Inner-Region Encoder].[Attentive Context ...

  3. 《Deep Exhaustive Model for Nested Named Entity Recognition》

    论文链接:Deep Exhaustive Model for Nested Named Entity Recognition Abstract   我们提出了一种简单的深层神经网络模型用于嵌套命名实体 ...

  4. [论文阅读笔记14]Nested named entity recognition revisited

    一, 题目 Nested Named Entity Recognition Revisited 重访问的嵌套命名实体识别 二, 作者 Arzoo Katiyar and Claire Cardie D ...

  5. Nested Named Entity Recognition from Medical Texts: An Adaptive Shared Network Architecture with Att

    论文名称:Nested Named Entity Recognition from Medical Texts: An Adaptive Shared Network Architecture wit ...

  6. 《A Boundary-aware Neural Model for Nested Named Entity Recognition》

    论文链接:A Boundary-aware Neural Model for Nested Named Entity Recognition 模型代码:Github Abstract   在自然语言处 ...

  7. 【ACL 2021】Locate and Label A Two-stage Identifier for Nested Named Entity Recognition

    一.Introduction 命名实体识别(NER)是自然语言处理中一项研究非常广泛的任务.传统的NER研究只处理平面实体,而忽略了嵌套实体.例如:北京大学,北京大学不仅是一个组织,同时北京也是一个地 ...

  8. FGN: Fusion Glyph Network for Chinese Named Entity Recognition

    结合中文字形处理NLP任务的并不多推荐一篇:Glyce2.0,中文字形增强BERT表征能力 paper:https://arxiv.org/ftp/arxiv/papers/2001/2001.052 ...

  9. 论文阅读笔记(三)【ACL 2021】Locate and Label: A Two-stage Identifier for Nested Named Entity

    论文标题: Locate and Label: A Two-stage Identifier for Nested Named Entity Recognition 论文链接: https://arx ...

最新文章

  1. 运行sqlplus时遇到cannot restore segment prot after reloc: Permission denied
  2. 【杂谈】有三AI季划成员的4大专属权益,你是否已经利用好了?
  3. php 等5秒钟继续,android – 如何每5秒钟继续请求一个页面而不是杀死电池?
  4. css img 适配尺寸_如何解决img标签下面的小空隙(附详细视频教程)
  5. 【Kissy WaterFall】实行手动加载数据
  6. RocketMQ如何保证消息不丢失(消息可靠性)
  7. 勒索病毒病毒样本研究_我们能否通过快速,开放的研究来应对寨卡病毒?
  8. php5.6 mysql5.5,PHP开发第一步,PHP5.6 + MySQL5.5 + Apache2.4环境搭建
  9. 读取指定文件夹限定文件
  10. 如何用gitbook写文档并存到github上
  11. 今天分享固态硬盘安装以及Win7系统安装流程
  12. 【Python】所有常用Python库和功能查询表
  13. 安卓模拟器端口大全 - 夜神逍遥MuMu雷电蓝叠海马玩
  14. 2020年GitHub上50个最受程序员欢迎的PHP开源项目
  15. 链行动之精选案例——区块链解决四大痛点 福费廷结合案例逐步落地
  16. C#打造机械耳感键盘(全局监听键盘并设置音效)
  17. 使用arduino mega2560制作一台超简易的假机械臂!
  18. C语言里文字颜色色和背景颜色设置
  19. 哈工大 2021春 计算机系统 大作业程序人生
  20. set feedback on

热门文章

  1. 小数用二进制如何表示
  2. GB/T 25000.51-2016解读系列之性能效率
  3. 从git更新代码到本地
  4. 谁动了我的奶酪---读后感
  5. 微信小程序之输入框文本的获取与展示
  6. Windows - 隐藏底部任务栏日期和时间(最右侧日期时间星期)
  7. cmd -- bash编程
  8. ZipArchive压缩文件,文件夹以及解压文件和文件夹
  9. 管理格言集锦(收集)
  10. 流量卡之家:中国移动回应“取消不限量套餐” 暂无类似举措