[论文笔记] Bipartite Flat-Graph Network for Nested Name Entity Recognition
来源:ACL2020
论文链接:https://arxiv.org/abs/2005.00436
概述
本文提出了一种新的二部平面图网络(BiFlaG)用于嵌套命名实体识别(NER) ,该网络包含两个子图模块: 最外层实体的扁平 NER 模块和内层实体的图模块。 采用双向 LSTM (BiLSTM)和图卷积网络(GCN)联合学习扁平实体及其内部依赖关系。不同于以往仅考虑信息从最内层到外层(或从外层到内层)的单向传递的模型,本文模型有效地捕获了它们之间的双向交互。 作者首先使用扁平 NER 模块所识别的实体来构造一个实体图,并将其提供给下一个图模块。 从图模块中学习到包含内部实体的依赖关系的表示,可以用来改进最外层实体的预测。在三个标准的 NER 嵌套数据集上的实验结果表明,作者提出的 BiFlaG 优于以前的最先进的模型。
1 论文介绍
命名实体识别(NER)旨在识别包含预定义类别名称(如位置、组织或医疗代码)的单词或短语。 嵌套 NER 进一步处理可以相互嵌套的实体,如图1所示的 “the United States” 和 “third president of the United States”,这种现象在自然语言处理(NLP)中相当普遍。
NER 通常被认为是一种序列标注的任务 (Lample et al., 2016; Ma and Hovy, 2016;Peters et al., 2017)。这种方法只对于非嵌套的命名(扁平实体)实体有效,对嵌套实体效果不佳。人们一直努力处理嵌套结构,Ju et al. 2018 提出了一种分层序列标记模型,首先识别最内层实体,然后将它们反馈到下一层,提取外层实体。 然而,该模型存在明显的误差传播问题。 前一层提取的错误实体将影响下一层的性能。 此外,这种分层模型还存在高层次实体的稀疏性。 例如,在众所周知的 ACE2005训练数据集中,第六级只有两个实体。 Sohrab 和 Miwa 2018提出了一种基于区域的方法,列举所有可能的区域并对其实体类型进行分类。然而,该模型可能会忽略显式的边界信息。 将层次序列标记模型和基于区域的方法相结合,首先定位实体边界,然后利用区域分类模型对实体进行预测。 然而,该模型较少关注位于外层和内层的实体之间的相互作用。
本文针对于嵌套 NER 提出一种二部平面图网络(BiFlaG)的嵌套网络模型,该网络模型将任意多层的嵌套结构分为两部分:最外层实体和所有剩余层的内层实体。例如,如图1所示,最外层的实体 “Thomas Jefferson, third president of the United States” 被认为是一个平面的(非嵌套)实体,而 “third president of the United States” (第二层)和 “the United States” (第三层)被认为是内部实体。 覆盖率最大的最外层实体通常在平面 NER 模块中识别,平面 NER 模块通常采用序列标记模型。 所有的内部实体都通过图模块提取,该模块使用图卷积网络(GCN)(Kipf 和 Welling,2017)在一个跨度的起始节点和结束节点之间迭代传播信息。
相较于以往模型,作者的模型有两方面优点:
-
不同于分层模型,例如(Ju 等人,2018) ,它受制于从低层到高层的信息单向传播的约束,本文的模型以一种双向的方式完全捕获了最外层和内层之间的相互作用。 从扁平化模块中提取实体用于构造图形模块的实体图。 然后,将从图模块中学习到的新表示反馈到平面模块中,以提高最外层实体的预测能力。此外,将内层中的所有实体合并到一个图形模块中,可以有效地缓解高层实体的稀疏性。
-
与基于区域的模型(Sohrab 和 Miwa,2018; Zheng 等,2019)相比,该模型充分利用了最外层实体的序列信息,在语料库中占有很大的比例。
论文的主要贡献总结如下:
- 本文提出了一种新的二部平面图网络——嵌套式命名网络 BiFlaG,它包含了最外层实体的平面模块和内层实体的图模块。
- BiFlaG 充分利用了最外层实体的序列信息,同时双向考虑了最外层和内层之间的相互作用,而不是单向传递信息。
- 通过对三个基准数据集(ACE2005、 GENIA 和 KBP2017)的广泛实验,我们的模型在相同的设置下优于以前的最先进的模型。
2 模型
BiFlaG 包括两个子图模块,一个平面 NER 模块和一个图形模块,分别学习最外层实体和内部实体。 图 2 说明了模型的概况。 对于平面模块,我们采用 BiLSTM-CRF 提取平面(最外层)实体,并用它们构造实体图 G1,如图2所示。 对于图形模块,我们使用 GCN 迭代地在潜在实体的起始节点和终止节点之间传播信息来学习内部实体。 最后,从图模块学习的表示进一步反馈到平面模块,以获得更好的最外层预测。
2.1 Token 表示
给定一个由 n 个 token 组成的序列 ,对于每个token ,我们首先连接字符级和词语级嵌入 , 是预训练的词嵌入,字符嵌入 是根据 (Xin 等人,2018) 的工作学习的。 然后,我们使用 BiLSTM 为每个 token 添加序列特征。 我们将 作为词表示,并将其提供给后续的模块。
2.2 扁平 NER 模块
在我们的扁平 NER 模块中,我们采用了 BiLSTM-CRF 结构(Lample et al. ,2016; Ma and Hovy,2016; Yang and Zhang,2018; Luo et al. ,2020) 来识别平面实体,该平面实体包括一个双向 LSTM (BiLSTM) 编码器和一个条件随机域码(CRF)解码器。
BiLSTM 能够捕获序列的双向上下文信息,并且能够有效地表示上下文中单词的隐含状态。 BiLSTM 表示出每个步骤的序列信息,BiLSTM 的隐藏状态 h 可以表示如下:
其中 和 是可训练参数, 和 $\overleftarrow {h_i} $ 分别为 token 的上文和下文特征表示, 的输出进一步输入 CRF 层。
CRF (Lafferty et al., 2001) 已被广泛应用于最先进的 NER 模型 (Lample et al.,2016; Ma and Hovy, 2016; Yang and Zhang, 2018)来辅助决策,该模型通过添加相邻标签之间的转换得分来考虑强标签依赖性。在解码过程中,应用 Viterbi 算法搜索以最大概率搜索标签序列。对于长度为 N的预测序列 得分定义如下:
其中 表示从 到 的转换得分, 表示 BiLSTM 编码器输出的第 个词的第 个标签的分数。
CRF 模型在序列 的所有可能标签上定义了一个条件概率族 :
在训练阶段,我们考虑正确预测的最大对数概率。 在解码过程中,我们找到得分最高的标签序列:
2.3 图模块
由于原始输入的句子是没有固有图形结构的纯文本,我们首先根据文本的顺序信息和扁平模块的实体信息构造图形。 然后,我们应用 GCN (Kipf 和 Welling,2017; Qian 等人,2019),在图中相邻节点之间传播信息,提取内部实体。
图的构造:如图2所示,我们为每个序列创建两种类型的图,图定义为 ,其中 表示节点(词语)集合, 表示边的集合。
- 实体图 :对于从扁平模块中提取出来的实体中的所有节点,在任意两个节点之间添加边 ,其中 ,从而可以利用最外层实体信息。
- 邻接图 :对于句子中的每对相邻词语,我们从左词语到右词语添加一个有向边,从而可以利用局部上下文信息。
Bi-GCN :为了同时考虑每个节点的传入和传出特征,作者借鉴(Marcheggiani and Titov,2017; Fu et al。,2019)的方法,使用 Bi-GCN 提取图特征。给出一个图 和词表示 ,从 Bi-GCN 获取的图特征表示 如下:
其中 , 是待训练参数, 是词向量的维度, 是 GCN 中隐藏层大小, 是非线性**函数, 表示 token 的出边, 表示 token 的入边。
汇总两个图的特征,得到总特征:
其中 是待学习的权重, 是偏置参数, 和 分别是图 和图 的特征.
通过 Bi-GCN 获取到图特征表示 后,我们能获取内层实体得分 如下:
其中 ,L 是实体类别的个数, 表示从 token 到 token 范围内各类型概率。
对于内部实体,我们将词对 表示的实体定义为 ,其中 和 是词块的开始和结束节点。 交叉熵用于计算 loss
其中 表示图模型中实体得分, 是一个区分非实体类型 “O” 和其他实体类型的损失的示性函数。 定义如下:
是偏置权重, 越大,正样本对图模块的影响越大,负样本对图模块的影响越小。
2.4 BiFlaG 训练
实体分数 包含句子中每个词对的类型概率。 为了进一步考虑信息从内部实体到外部实体的传播,我们使用Bi-GCN 从实体得 为变扁平模块生成新的特征表示形式。 词对 中最大的类型得分 表示该词块是实体还是非实体,以及该类型的置信度得分,这是通过最大池操作获得的:
其中 表示对应于最大类型得分的实体类型或非实体 "O”。 当对应的类型为 “O” 时, 和 之间不存在依赖关系,因此我们将 设置为0。
一个带有内部实体边界信息的新图定义为 ,其中 。
用于更新扁平模块的新表示法由两部分组成。 第一部分带有每个 token 的先前表示
其中 ,第二部分整合了新图 的内部实体依赖性:
最后 和 相加得到新的特征:
被返回到扁平模块以更新参数并跟准确的提取最外层实体。
对于最外面的实体,作者使用 BIOES 序列标记方案并采用 CRF 来计算损失。 与这两种表示形式( 和 )相对应的 相加作为最外面的 :
序列中的实体分为两个最外层实体和内部实体不相交的集合,分别由扁平模块和图模块建模。每个模块中的实体共享相同的神经网络结构。 在两个模块之间,扁平模块中的每个实体要么是一个独立的节点,要么与图模块中的一个或多个实体进行交互。 因此,我们的BiFlaG确实是二部图。 算法1显示了对 BiFlaG 的完整训练过程。
2.5 Loss 函数
BiFlaG模型可预测最外部和内部实体。 总 定义为:
其中 是扁平模块和图模块的损失之间的权重。 我们要将训练阶段的总损失降至最低。
3 实验
3.1 参数设置
作者的模型基于(Yang and Zhang,2018)的框架。 分别针对扁平模块和GCN模块使用随机梯度下降(SGD)和 Adam 进行了优化。 对于GENIA数据集,作者使用200维预训练词嵌入。 对于 ACE2005 和 KBP2017 数据集,作者使用公开可用的预训练的100维 GloVe 嵌入。 我们按照(Xin et al,2018)的方法训练字符嵌入。 平面和GCN模块的学习率分别设置为0.015和0.001。 我们以0.5的比例将 dropout 应用于嵌入层和隐藏层。 BiLSTM 和 GCN 的隐藏层大小均设置为256。偏置权重 和 均设置为1.5。
3.2 结果比较
作者在三个标准嵌套 NER 数据集:GENIA,ACE2005,TACKBP2017 (KBP2017) 评估 BiFlaG 模型。
实验数据描述:
实验结果: :精确度; :召回率;:F1-score
作者在 GENIA 数据集上,将 BiFlaG 模型与分层模型(Ju等人,2018)和基于区域的模型(Zheng等人,2019)进行比较,得出以下结果:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xz4Bz61f-1593432949977)(https://i.loli.net/2020/06/21/Zcnz5HTEfg8Pbo7.png)]
3.3 单模块分析
表4评估了每个模块在ACE2005和GENIA数据集上的性能。 对于最外层的实体识别,扁平模块在两个数据集上均表现出色。 但是,内层实体的召回率(recall)在GENIA数据集上很低。 根据表1的统计,GENIA 上只有11%的实体位于内层,而在 ACE2005 数据集上,这一比例为24%。 可以推断,内层实体分布的稀疏性对结果有很大的影响。 如果在每一层都标识了这些内部实体,则稀疏性可能会更糟。 我们可以通过增加权重 来提高稀疏实体的影响,但是这可能会损害精度,我们设置 = 1.5 可以在精确度和召回率之间取得更好的权衡。
3.4 实体长度分析
作者在 ACE2005 数据集上进行了其他实验,以检测最外层实体的长度对其内部实体的提取的影响,如表5所示。扁平模块可以很好地预测最外层实体,这些实体在所有类型的实体中占很大比例 。 通常,内部实体的性能受其最外部实体的提取性能和长度影响。 较短的最外层实体更有可能让其内部实体共享第一个标记或最后一个标记,从而使构造的图更具指导性,因此其内部实体更易于提取。
3.5 消融研究
3.6 推理速度
作者以每秒解码的字数为标准检查 BiFlaG 的推理速度。 对于所有比较的模型,BiFlaG 不需要为每个潜在实体计算区域表示,因此可以充分利用GPU并行性。不需3要对每一层进行CRF解码,BiFlaG 模型只需要计算两个模块,相比之下,级联的CRF层会限制其推理速度。结果如图3:
4 总结
本文为嵌套的NER提出了一个新的二部平面图(BiFlaG)模型,该模型由两个相互作用的子模块组成。 应用分而治之策略,扁平模块负责最外部的实体,而图模块则侧重于内部实体。 BiFlaG 模型还促进了两个模块之间的完全双向交互,这使得嵌套的NER结构在很大程度上可以共同学习。 作为一般模型,BiFlaG模型还可以通过简单地删除图形模块来处理非嵌套结构。 在相同的严格设置下,经验结果表明,该模型通常优于以前的最新模型。