Leveraging Multi-token Entities in Document-level Named Entity Recognition
1 摘要
这篇论文主要提出了一个文档级别的命名实体识别(NER),为了利用整个文档的上下文信息,传统的文档级实体识别让神经网络自动学习句子之间的关系,但是这对人类而言并不直观。由于实体包括含有多个token的实体和一个token的实体,作者认为多token的实体的上下文信息在新闻文档中更可靠,因此作者设计了一个融合注意力机制,不仅学习相同token出现的语义关联,同时把更多的注意力放在多token的实体上。为了识别多token实体,作者设计了一个辅助任务,称作“Multi-token Entity Classification”,这个辅助任务不需要额外标注。作者在CoNLL-2003 数据集和OntoNotes_nbm 数据集上均达到了SOTA值。
2 介绍
- 动机:传统的句子级NER任务会导致标注不一致问题,如图1所示。因此文档级的上下文信息是必要的。除此之外传统很多文档级的NER在上下文表示上采用注意力机制,这种做法不是很清楚哪一上下文信息部分更值得关注(作者在这篇文章中把这个称作语义注意力机制)。而作者发现有点多token的实体出现后,后面的实体可能会采用简称,变成单token实体,如图1例子。作者统计了一下,在CoNLL-2003数据集上,在同一个文档中,26.62%的单token实体是其他多token实体的组成部分,而且在这些单token实体中,78.87%是存在同样实体类型的多token实体。因此作者认为设计了一个注意力机制把更多的注意力放在多token实体上。
2. 贡献
(1)作者提出了一个新颖的基于文档级NER的注意力机制,能够把文档的上下文信息补充到局部信息。
(2)作者利用多token实体信息来引导文档级别的NER,多token实体是通过辅助的序列标注任务来得到的。
(3)实验结果表明作者的模型在CoNLL-2003 数据集和OntoNotes_nbm 数据集上能够超过句子级和文档级NER的结果,达到SOTA。
3 相关工作
作者介绍了基于句子级的NER相关工作和基于文档级NER和多任务学习的相关工作。
4 模型
4.1 任务定义
传统的序列标注任务,作者采用了BIOES编码。
4.2 模型介绍
模型介绍图如图2所示,主要包括以下几个部分:字符级别表示、句子级别上下文表示、多token实体分类、文档级别表示、标签预测。
- character级别表示
一般采用CNN或者LSTM进行字符级别的表示,但是以前实验证明CNN和LSTM在字符级别表示性能基本差别不大,CNN更快,作者采用了CNN。
2. 句子级别表示
作者采用双向LSTM对句子进行表示,每个token的表示为前向LSTM和后向LSTM表示的拼接。作者称这个表示为局部的信息表示。
在一个文档中,我们对每个token $w_i$记录它所有出现的位置信息为
3. 多token实体分类(MEC)
对token进行分类,如果实体标签是“B-”,“I-”,“E-”,那么就是多token实体,标为“SUB”;如果实体标签是“S-”,那么就不是多token实体,标为“NSUB”。其他token标为“O”。MEC任务和句子级别表示是共享双向LSTM的参数。对于MEC任务,作者对每个token取了窗口为3,即
这一部分的损失函数为:
为了辅助文档级别的NER,作者获得了$u_i$的多token实体表示列表 (这个地方我的理解是应该作者在句子级别表示部分编码了一个token出现的位置信息,在这里获得了token的实体标签信息)。
4. 文档级别表示
获得局部上下文表示和每个token出现的多实体表示之后,作者采用多token实体导向的注意力来获得文档级别的特征。其实是采用了两种注意力的融合,第一是语义自注意力(其实也就是我们平时普通的自注意力机制),另一种是对多token实体多加注意力(作者称为ME注意力)。采用的是注意力机制是Bahdanau, Cho, and Bengio 2015。(注意,由于打不出来作者的粗体h和e公式, 因此文中我用H和E代替了。)
5. 标签预测
把句子级别和文档级别表示拼接后经过MLP层,在解码的时候采用CRF。
最后的损失为多token实体分类损失和NER损失的和。
5 实验
5.1 数据和设定
作者采用的数据为CoNLL-2003和OntoNotesnbm 数据集(整合 OntoNotes 5.0数据的newswire (nw), broadcast news (bn) and magazine (mz) 部分 )。因为作者认为 OntoNotes 5.0数据集的telephone conversation (TC), web data (WB) 和pivot text (PT) 不像新闻故事数据集一样需要全局信息,因此作者把那些部分删除了。作者采用了BIOES,这种标签方式证明比BIO2方式好。
在CoNLL-2003数据集上因为数据小,作者随机种子跑了5次取平均,在OntoNotes数据集上只跑了一次。作者采用传统的GloVe词向量,同时把BERT-base和flair的表示也作为初始词向量做表示。
5.2 baseline
5.3 结果
整体结果见下表,可见MEID还是有提升的。
不同的embedding的性能影响,flair的表示还是很强的,甚至超过了BERT。
5.4 case study
作者举了两个例子来展示全局attention的作用。
对于例子1,从attention图可以看到,ME引导的attention中,第二次和第三次出现的Matsushita更多注意力在Matsushita第一次出现的地方,所以加了ME引导的attention模型能够预测正确。
对于例子2,从attention图可以看到,对于没有加ME引导的attention,第一次出现的ZIMBABWE更多注意力在后面三次出现的地方,所以预测错为B_LOC,但是加了ME引导的attention,第一次出现的ZIMBABWE更多注意力在第二次出现的地方,所以预测对了。除此之外,作者认为ZIMBABWE最后三次出现注意力更多在前面两次出现的地方,模型还是预测对了,说明模型不仅仅是靠这个全局信息,还有局部的表示决定,因此作者利用了局部和全局信息,而不仅仅是其中的一个。
思考
为了严谨起见,作者是不是统计一下多少预测不一致的情况被作者的模型消除掉了,毕竟感觉作者也是只选了一部分的实体类型来做。感觉作者在OntoNotes的提升挺小的,最近被人问到提升是不是significance improvement,感觉可以测测看看。