NER是自然语言处理中相对比较基础的任务,但却是非常重要的任务。在NLP中,大部分的任务都需要NER的能力,例如,聊天机器人中,需要NER来提取实体完成对用户输入的理解;在信息提取任务中,需要提取相应的实体,以完成对信息的抽取。
本篇介绍NER中常用的方法,从常用的机器学习方法到深度学习的方法。
作者&编辑 | 小Dream哥
1 早期的HMM
早期的一篇介绍HMM在NER中的应用,实验效果还可以。现在还有一些实体识别有用到HMM,读此文对于了解NER的发展有一定的好处。
[1] Su, Jian , and J. Su . "Named entity recognition using an HMM-based chunk tagger." Proc Acl (2002):473-480.
2 主流NER架构LSTM +CRF
随着深度学习的兴起,LSTM+CRF变成NER任务的主流方法,下面是一篇较为典型的介绍的LSTM+CRF进行NER任务的文章。
[2] Huang, Zhiheng , W. Xu , and K. Yu . "Bidirectional LSTM-CRF Models for Sequence Tagging." Computer Science (2015).
3 讨论了CNN进行NER任务
在NLP任务中用CNN进行特征提取一直不是主流,这篇论文在NER中引入CNN。
[3] Chiu, Jason P. C. , and E. Nichols . "Named Entity Recognition with Bidirectional LSTM-CNNs." Computer Science (2015).
4 空洞卷积在NER中的应用
因为传统CNN对长序列的输入特征提取能力偏弱,有研究者提出将Dilated Convolutions(空洞卷积)应用在NER中的想法。空洞卷积可以加大感受野,提高模型的训练和预测速度。
[4] Emma Strubell Patrick Verga. Fast and Accurate Entity Recognition with Iterated Dilated Convolutions. 2017
5 Lattice LSTM
中文的NER与英文不太一样,中文NER问题很大程度上取决于分词的效果,比如实体边界和单词的边界在中文NER问题中经常是一样的。
所以在中文NER问题中,有时通常先对文本进行分词然后再预测序列中单词的类别。这样一来会导致一个问题,即在分词中造成的错误会影响到NER的结果。基于字向量的模型能够避免上述问题,但因为单纯采用字向量,导致拆开了很多并不应该拆开的词语,从而丢失了它们本身的内在信息。
此文提出一种用于中文NER的LSTM的格子模型,与传统使用字向量的模型相比,它提出的模型显式地利用了字序列之间的关系,能够很好的避免分词错误带来的影响。
[5] Yue Zhang, Jie Yang. Chinese NER Using Lattice LSTM. 2018
6 实体识别与实体匹配
实体匹配是指将识别到的实体与知识库或者图谱中实体进行匹配与映射。因此实体匹配与识别是两个相关性非常高的任务,通过实体匹配,识别到的实体与现实中的概念相连接。这篇论文将实体匹配与识别统一起来训练,认为两个任务一起学习,能够提升两个任务的准确率。
[6] Pedro Henrique Martins, Zita Marinho. Joint Learning of Named Entity Recognition and Entity Linking. 2019.
7 引入BERT及attention
引入了很多新的概念到命名实体识别中,例如BERT,Attention。感兴趣的同学可以看一看,会有蛮大的收益。
[7] Anton A. Emelyanov, Ekaterina Artemova. Multilingual Named Entity Recognition Using Pretrained Embeddings, Attention Mechanism and NCRF. arXiv preprint arXiv:1906.09978v1 2019
8 AutoNER
论文提出了一个无需人工标注就可以自动标记数据并训练NER的模型--AutoNER。实验表明,AutoNER训练的模型在3个数据集上均与有监督的benchmark相当。感兴趣的同学可以参考下。
[8] Jingbo Shang, Liyuan Liu. Learning Named Entity Tagger using Domain-Specifific Dictionary. arXiv preprint arXiv:1809.03599v1 2018
9 如何获取文章与交流
找到有三AI开源项目即可获取。
https://github.com/longpeng2008/yousan.ai