Press "Enter" to skip to content

《BiFlaG》阅读笔记

Bipartite Flat-Graph Network for Nested Named Entity Recognition

 

ACL 2020 上海交大

 

Source: Bipartite Flat-Graph Network for Nested Named Entity Recognition

 

Code: cslydia/BiFlaG

 

Abstract

 

做了什幺 本文提出了一个二分平图网络用于嵌套实体抽取。网络包含两个子图模块:一个常规NER层用于最外层实体识别,一个图层用于所有内层实体识别。BiLSTM和GCN用于联合学习常规实体和他们的内部依赖。不同于其他工作只考虑单方向信息,我们考虑双向信息流。

 

怎幺做 我们首先使用被常规NER识别出来的实体,送到图层。然后图层输出一个实体带有内部实体依赖的实体表示,用于提升外部实体预测。

 

做的还不错 实验在三个标准嵌套NER数据集上达到SOTA。

 

Introduction

 

A neural layered model for nested named entity recognition

 

文章提出一种分层序列标注模型首次识别内部实体,并将内部实体送到下层识别用于抽取外部实体,但是该模型受到严重的错误传播以及实体稀疏影响。

 

Deep exhaustive model for nested named entity recognition

 

文章提出一种基于区域的方法来枚举所有可能的实体区域并分类他们的实体类型,但是该模型没有利用任何边界信息。

 

A boundary-aware neural model for nested named entity recognition

 

文章联合序列标注和区域方法来定位实体边界,然后使用区域分类模型来预测实体,但是该模型考虑太少外部和内部实体之间的联系。

 

本文提出的二分平图网络能够建模一个包含任意层的嵌套实体架构,其中每层包含两部分:外部实体和内部实体。外部实体有最大的实体覆盖通常由常规NER层识别。所有的内部实体通过图层抽取。图层的好处是能够迭代合并span的start和end信息。

本文提出模型的优点

1. 不受到错误传播的影响,我们的模型能够完全抓取外部与内部之间的信息。常规NER层抽出的实体会用于构建实体图并送给图层。图层学到一个新的表示后送回到常规NER层,提高外层实体的预测性能。同时,合并所有内层实体到图层能够有效的减轻实体稀疏带来的影响。

 

2. 与区域模型相比,我们的模型能够充分利用外层实体的序列信息,这部分信息在数据集上的比重是非常大的。

 

本文主要贡献

 

1. 提出一个二分平图模型用于嵌套实体抽取。

 

2. 模型能够充分利用外层实体的序列信息,同时双向考虑外层与内层之间的信息。

 

3. 在三个数据集上达到了SOTA。

 

Model

 

模型主要由两个模块组成:常规NER层和图层。下面是模型的整体图:

接下来对每个模块进行解释:

 

Token Representation

 

这部分主要是得到输入的表示,首先串联字级别和词级别的embedding后经过BiLSTM提取序列信息,得到最终的输入表示。

 

Flat NER Module

 

这部分用的是经典的BiLSTM-CRF结构,其中BiLSTM用于提取双向序列语义信息,CRF用于序列解码。

 

Graph Module

 

首先是要基于序列文本构建图结构,然后用GCN来合并相邻节点的信息。

 

Graph Construction

 

这块对于每个句子构建两类图,实体图G1,邻接图G2。每个图定义为G = (V, E),其中V是节点集,E是边集。

 

实体图G1:对一个实体对所有节点加上边 ,其中 ,这样能使得外部实体信息能被使用。

 

邻接图G2: 对于句子中对相邻节点,添加从左到右对边。这样能使得局部上下文信息被使用

 

Bi-GCN

 

对于G1和G2都使用Bi-GCN进行编码,得到每个节点对内部和外部特征。 Bi-GCN对定义如下: 输入:G=(V, E)和词表示X, 输出: ,其中df是图卷积的隐藏层维度。具体过程公式表达如下:

 

 

通过Bi-GCN得到G1和G2的编码后,需要将两个特征合并,使用以下公式: 得到特征表示后,可以学习一个内部实体打分M, 打分矩阵中的每个元素,代表第i个字和第j个字下L个实体类型的分数。

 

inner loss

 

定义交叉熵损失作为内部实体loss,其中 为真实实体标签。具体loss如下: 是一个转换函数,‘O’代表非实体, 是一个偏置,它的值越大,非实体的影响会越小。

 

BiFlaG Training

 

由图模块得到的打分矩阵M,可以生成新的图G3,进而得到输入的新表示,重新返回给常规NER层,提高嵌套实体的预测性能。

通过以下方法获取G3的边集
对于非实体,
直接为0。对于实体,

对应当前的span是实体,且是属于该类型的置信度。

新表示

新表示由两部分组成, 一部分是先前的表示,另一部分是由G3编码得到的表示。

outer loss

外部loss由两部分组成,一部分是X的CRF损失,一部分是Xnew的CRF损失。

整体loss

Experiment

 

数据集:GENIAl,ACE2005,KBP2017

 

度量方法:P,R,F1-score

 

整体实验

 

    1. 可以看到,模型比众多baseline提升大概1个F1值。

 

    1. 由于KBP2017的实体数量更多,测试集是ACE2005的4倍,因此模型在数据越多的情况下,提升会更大。

 

    1. 模型没有添加额外的POS标签信息,但是性能上能和这些模型持平。

 

 

比较实验

这块主要是在GENIA数据集上与Ju 和Zheng两篇文章比较。

 

结论:

 

1. 受到错误传播,layer模型有更高的精度,更低的召回

 

2. 边界模型精度低,因为他们生成太多的span候选

 

3. 本模型能够协调精度和召回,且蛋白质和DNA这两类实体的性能提升在本模型上是重大的。

 

每个模块的性能分析

消融实验

Conclusion

 

本文提出一个二分平图模型用于嵌套实体抽取。

 

1. 模型分为两个字图模块,常规NER层和图层。应用分而治之的策略,常规NER层控制外部实体,图层控制内部实体。

 

2. 同时模型能够利用外部和内部实体之间的双向信息,使得模型能够学到更多的实体粒度。

 

3. 作为通用模型,BiFlaG能够去掉图模块即可处理非嵌套实体。

 

4. 在相同的数据集设置下,模型性能超越先前的SOTA模型。

Be First to Comment

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注