命名实体识别NER论文调研
因为NER任务与笔者之前做的CCF互联网金融新实体识别竞赛相关,所以这两个月也调研了一些NER的算法,这两年的NER算法思想主要集中在将词典信息融入训练过程,达到减少中文语义歧义的效果。
CCF互联网金融新实体识别竞赛
https://www.datafountain.cn/competitions/361
当前竞赛NER任务的baseline
BERT + BILSTM + CRF
BERT + IDCNN[1] + CRF:IDCNN可以大致理解为CNN + pooling + upsampling,可以并行化运算,训练速度会比BILSTM快很多,但不会跟CNN一样,CNN切换pooling与upsampling会损失一部分信息。(pooling减小图像尺寸增大感受野, upsampling增大图像尺寸还原原始尺寸,两者在运算过程中不可逆,因此会导致一部分信息损失。)
IDCNN原理:本质和CNN一样,但是通过在卷积核之间增加“空洞”(即0),使IDCNN的卷积在不需要POOLing的情况下增加感受野,增大看到信息的范围。
缺点:1)会丢失局部信息; 2)虽说可以看得比较远,但是有时候远距离的信息并没有相关性。
应用场景:1)需要全局信息的图像任务; 2)需要解决长距离信息依赖的语音与文本任务。
目前调研了13篇NER论文,主要是看哪些论文能否嵌入金融新实体竞赛的baseline框架,达到提高代码复用率且实验结果佳的效果,其次是有些论文复现难度过高,只能做一些原理的分享。
1
改进结构提升效果
[2018]Chinese NER Using Lattice LSTM
原理:利用词典的信息将链式结构转成图结构,多出来的节点就是词典信息,在训练过程中更新权重。
缺点:①不支持batch;
②如果识别任务是识别新词,效果应该也不高,比如这次竞赛要求识别金融新实体,基本上都是新词。
③过多的单词会让基于字符的NER模型退化成基于单词的NER模型,这样子就会遭受分词错误的影响。
[2019 June]An Encoding Strategy Based Word Character LSTM for Chinese NER
代码链接
原理:利用词典的信息将链式结构转成图结构,多出来的节点就是词典信息,在训练过程中更新权重。WC-LSTM与Lattic LSTM思想一致,但基于Lattic LSTM的缺点进行了一些修正。WC-LSTM利用了四种不同的策略来将单词信息编码为固定大小的矢量,使其可以分批训练并适应各种应用场景。
改进方法:Lattic LSTM之所以不能batch训练的原因是每个字之间增加的节点数目不一致,可能0个也可能多个。WC-LSTM直接硬性规定每个字之间有且仅有一个节点来代表词信息,如果字与字之间没有词信息就用来表示,这样的修改让结构统一,因此能使用batch训练。最后词向量和字向量concat,输出最终向量。(如下图)
单词编码策略:
Shortest Word First
Longest Word First
Average:前两者的均值
Self-Attention
缺点:仍然不能解决新词问题
数据集实验结果对比:OntoNotes、MSRA与WeiboNER(结果比Lattic LSTM好)
[2019 January]A Neural Multi-digraph Model for Chinese NER with Gazetteers
代码地址
原理:利用地名词典和图神经网络融入单词信息给NER系统。
模型结构:多图结构 + 适配的GGNN嵌入层 + BILSTM + CRF多图结构:添加有向边来完成图的结构,节点权重随训练变化。
适配的GGNN嵌入层:处理多图结构的节点信息,权重由GRU来更新。
BILSTM+CRF: 输出序列化结果
信息转换:地名与文本经过多图结构转成图信息,图信息经过GGNN嵌入层输出特征向量。
① 初始状态ho由公式1确定,Wg是词典的词嵌入,Wc是字典的字嵌入
② 图结构由邻接矩阵存储,方便每一步训练时的查找
③ 邻接矩阵的边代表不同标签的权重,由训练过程去确定每列对任务的贡献程度(公式2)
④ 得到的Ho由GRU(公式(3)~(8))更新,完成一次训练
⑤ 数据集实验结果对比:OntoNotes、MSRA与WeiboNER(结果比WC-LSTM好)
2
添加结构提升效果
[2018]Graph_Convolutional_Networks_for_Named_Entity_Recognition.pdf
① 单纯添加GCN结构来捕捉字词间的依赖关系
② 效果有限
代码
[2019 April]CAN-NER: Convolutional Attention Network for Chinese Named Entity Recognition
模型结构:
Embedding + Convolution Attention + GRU + Global SELF-Attention + CRF
Convolution Attention:对字词信息进行编码
Global SELF-Attention: 捕获长序列句子级别的关系
数据集实验结果对比:
OntoNotes、MSRA与WeiboNER(weibo数据集:比WC-LSTM好,其他数据集:均不如WC-LSTM)
3
其他
有一些用对抗的思想去做的NER模型,效果也没比GNN好,结构挺复杂的,有些还没有代码,笔者也不想复现,还有一些纯粹是模型效果不怎么好。笔者也不做过多介绍了。
笔者把论文名字放上来,大家需要看的话,可以去翻一下~
Adversarial Transfer Learning for Chinese Named Entity Recognition with Self-Attention Mechanism
Neural Chinese Named Entity Recognition via
CNN-LSTM-CRF and Joint Training with Word Segmentation
Towards Open-Domain Named Entity Recognition via Neural Correction Models
R-TRANSFORMER: RECURRENT NEURAL NETWORK
ENHANCED TRANSFORMER
4
总结
因此,经过对比,当前改进结构是提升整体NER模型效果的最佳方法,其中,利用图神经网络的NER的模型效果最好。最后,对NER实体识别感兴趣的同学,可以翻一下命名实体识别的综述文章:
A Survey on Deep Learning forNamed Entity Recognition
参考文献
[1] Fast and Accurate Entity Recognition with Iterated Dilated Convolutions
今天的总结就到这里
下期见~
关注我的微信公众号~不定期更新相关专业知识~
—END—
内容 | 阿力阿哩哩
编辑 | 阿璃