炼数成金 门户 商业智能 自然语言处理 查看内容

命名实体识别新SOTA:改进Transformer模型

2019-12-2 10:30| 发布者: 炼数成金_小数| 查看: 6297| 评论: 0|原作者: 刘旺旺|来自: AI科技评论

摘要: 命名实体识别, 简称NER,是指识别文本中具有特定意义的实体,主要包括人名、地名、机构名、专有名词等,以及时间、数量、货币、比例数值等文字,通常被看做是序列标注任务,现有主流的方法是使用神经网络来做,包括 ...
TENER: Adapting Transformer Encoder for Name Entity Recognition
链接:https://arxiv.org/pdf/1911.04474.pdf 
代码:暂无
 
一.动机
Transformer 模型以其良好的并行性能力以及出色的效果,被广泛应用于nlp领域的各大任务,例如机器翻译,预训练语言模型等。博客(https://zhuanlan.zhihu.com/p/54743941)也从多个方面,实验论证Transformer 模型优于CNN和RNN模型。然而,在NER任务上,Transformer的效果远不如BiLSTM。

二.预备知识
NER
命名实体识别, 简称NER,是指识别文本中具有特定意义的实体,主要包括人名、地名、机构名、专有名词等,以及时间、数量、货币、比例数值等文字,通常被看做是序列标注任务,现有主流的方法是使用神经网络来做,包括三个部分:词向量层,上下文编码层,解码层。

Transformer
Transformer layer包含两个部分:Multi-Head Attention (MHA) 和Position-wise Feed-Forward Network (FFN)。

MHA:

MHA层和FFN层之间,以及FFN层之后还包含一个残差连接和norm层。详细可见论文 https://arxiv.org/pdf/1706.03762.pdf


三.解决方法
论文分析了Transformer在NER任务上效果不好的原因,并提出了改进方法TENER (Transformer Encoder for NER)。 

Transformer在NER任务上效果不好的原因

如Figure1所示,方向信息以及相对位置,对于NER任务是重要的。例如,“Inc”单词之前的词很有可能就是机构组织(ORG),“in”单词之后的词,很有可能是时间地点(TIME);并且一个实体应该是连续的单词组成,标红的“Louis Vuitton”不会和标蓝的“Inc”组成一个实体。但是原始的Transformer无法捕获这些信息。

针对上述问题,论文提出了两点改进:
(1)提出带有方向与相对位置信息的 atteniton 机制;
(2)丢弃了原有 Transformerself-attention 的 scale factor,scale factor的引入是为了得到分布相对均匀的attention权重,但是在NER中,并不需要关注所有词。

另外,除了使用 Transformer 来建模词级别的上下文信息,还使用 Transformer 来建模 character 级别信息。
 
论文改进的TENER 模型

 
1. 词向量层
为了改善数据的稀疏性以及 oov 问题,NER任务通常使用 CNN 编码 character 序列来表示单词。与 Bilstm 相比,CNN在编码 character 序列上更有效,论文也探索了使用 Transformer 来编码 character  序列得到单词表征。最后的词向量表示,是 character  序列表征的单词与外部预训练词向量的拼接。
 
2. 带有方向与相对位置信息的 atteniton 机制 
原始transformer encoder使用如下公式来获得位置向量:


公式(14)(15)更进一步说明了,根据公式(8)(9)得到的位置向量仅仅带有相对位置信息,而不包括方向信息,fingure3也证明了这个结论。


3. CRF layer解码


四.实验结果
数据集

在中文数据集上的结果(table1),中文的NER是直接基于字的:

1. TENER的效果不仅优于原有的Transformer模型,而且优于基于CNN的模型和基于Bilstm的模型. 其中因为CAN_NER使用了100维的预训练的字向量和bigram向量,所以效果较好。
2. Weibo数据集相对较小,因此不同的模型在这个数据集上的表现效果都比较差。TENER模型相比其他模型也提高了效果,这也表明,本论文提出的改进方法,对数据集的大小具有一定的鲁棒性
3. 带scale factor的 self-attention 会使得结果变差。
 
在英文数据集上的效果(table2):
1. TENER在英文数据集上的效果不仅优于原有的Transformer模型,而且优于基于Bilstm的模型,并取得了当前较好的结果。
2. 同样带scale factor的self-attention会使得结果变差。

不同的character编码器和word上下文编码器的组合结果(table4):

在两个英文数据集上,比较了不同的character编码器和word上下文编码器的组合结果,由table4可看出,在conll2013数据集上,基于CNN的character编码器+基于TENER的word上下文编码器取得了较好的效果;然而在OntoNote5.0上,全部使用TENER模型取得了较好的效果。但是无论使用什么样的character编码器甚至不使用character编码,换用TENER模型建模word上下文都可以提升效果。

收敛速度的比较(figure5):

TENER模型的收敛速度与Bilstm相等,比transformer和ID-CNN要快。

五.总结
1. 分析了Transformer 在NER任务上效果不好的原因
2. 改进了Transformer的位置编码及self-attention部分(TENER模型),用于NER,取得了较好的效果,在两个英文数据集上,达到了当前较好的效果。
3. 论文比较出彩的地方在于对Transformer 在NER任务上效果不好原因的分析。对self-attention的改进有点类似Transformer XL。

欢迎加入本站公开兴趣群
商业智能与数据分析群
兴趣范围包括:各种让数据产生价值的办法,实际应用案例分享与讨论,分析工具,ETL工具,数据仓库,数据挖掘工具,报表系统等全方位知识
QQ群:81035754

鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

热门频道

  • 大数据
  • 商业智能
  • 量化投资
  • 科学探索
  • 创业

即将开课

 

GMT+8, 2019-12-12 06:48 , Processed in 0.160155 second(s), 25 queries .