NER的过去、现在和未来综述-过去
背景
命名实体识别(NER, Named Entity Recognition),是指识别文本中具有特定意义的实体,主要包括人名、地名、机构名、专有名词等。
- 然后将CNN的字符级编码向量和词级别向量concat,输入到BI-LSTM + CRF网络中,后面和上一个方法类似。整体网络结构:
IDCNN
2017Fast and Accurate Entity Recognition with Iterated Dilated Convolutions
针对Bi-LSTM解码速度较慢的问题,本文提出 ID-CNNs 网络来代替 Bi-LSTM,在保证和 Bi-LSTM-CRF 相 当的正确率,且带来了 14-20 倍的提速。句子级别的解码提速 8 倍相比于 Bi- LSTM-CRF。
CNN缺点:CNN 的上下文信息取决于窗口的大小,虽然不断地增加 CNN 卷积层最终也可以达到使每个 token 获取到整个输入句子作为上下文信息,但是其输出的分辨表现力太差。
于是出现了扩张卷积(or 空洞卷积):对于扩张卷积,有效 输入宽度可以随着深度呈指数增长,在每层不会有分辨率损失,并且可以估计 一定数量的参数
语义特征
char-embedding
将英文字符拆解为字母,将词语的每个字母作为一个序列编码。
Attending to Characters in Neural Sequence Labeling Models
使用了单词或字符级别embedding组合,并在两种embedding之间使用attention机制“灵活地选取信息”,而之前模型是直接将两种embedding concat。
直接看公式,z是一个动态权重:
并交叉熵上增加额外的loss:
非OOV单词希望m和x越相似越好(期望解决oov问题)。
char-embedding学习的是所有词语之间更通用的表示,而word-embedding学习的是特特定词语信息。对于频繁出现的单词,可以直接学习出单词表示,二者也会更相似。
Radical-Level Features(中文部首)
Character-Based LSTM-CRF with Radical-LevelFeatures for Chinese Named Entity Recognition.
也是一种char embedding方法,将每个中文字拆分为各个部首,例如“朝”会被拆分为字符:十、日、十、月。后面结构都类似。
n-gram prefixes and suffixes
提取每个词语的前缀和后缀作为词语的特征,例如:"aspirin"提取出3-gram的前后缀:{"asp", "rin"}.
包含两个参数:n、T。n表示n-gram size,T是阈值,表示该后缀或者前缀至少在语料库中出现过T次。
多任务联合学习
联合分词学习
将中文分词和 NER任务联合起来。使用预测的分割标签作为特征作为NER的输入之一,为NER系统提供更丰富的边界信息。
- 用g作为预测$yi^S$的权重向量:
Stack-Propagation
A Stack-Propagation Framework with Token-level Intent Detection for Spoken Language Understanding
Git
首先什么是Stack-Propagation呢,如下图所示:
它是区别于多任务, 不同的任务通过stack(级联?)的方式一起学习优化。
然后本文将意图任务的输出stack输入给NER任务,具体做法:
- Token intent(意图阶段):假设每个token都会有一个意图的概率分布(标签是句子的意图,通过大量数据训练,就能够学到每个token的意图分布,对于每个意图的’偏好‘),最终句子的意图预测通过将每个token的意图预测结果投票决定。
- Slot Filling:输入包含三部分:\\mathbf{h}_{i-1}^{S}, \\mathbf{y}_{i-1}^{S}, \\mathbf{y}_{i}^{I} \\oplus \\mathbf{e}_{i} ,其中y_i^I 是上一阶段token intent的预测结果的intent id,然后经过一个意图向量矩阵,转化为意图向量,输入给实体预测模块,解码器就是一层lstm+softmax。
bert之后,似乎 之前的一些优化都变成了奇技淫巧,那么就没有新的方法了吗?bert之前实体识别都是以序列标注(sequence labeling)来识别,没有其他的解码方式吗?
暂且就以BERT为过去和现在的分界点,关于NER的现在,且听下回分解。
Reference
- NER的过去、现在和未来综述-过去篇
- NER的过去、现在和未来综述-现在
- Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data
- Bidirectional LSTM-CRF Models for Sequence Tagging
- Neural Architectures for Named Entity Recognition
- Transition-based dependency parsing with stack long-short-term memory
- End-to-end Sequence Labeling via Bi-directional LSTM- CNNs-CRF
- Fast and Accurate Entity Recognition with Iterated Dilated Convolutions
- Joint Slot Filling and Intent Detection via Capsule Neural Networks
- Dynamic Routing Between Capsules
- Neural Architectures for Named Entity Recognition
- BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
- Neural Architectures for Named Entity Recognition
- Attending to Characters in Neural Sequence Labeling Models
- Character-Based LSTM-CRF with Radical-LevelFeatures for Chinese Named Entity Recognition
- Named Entity Recognition with Character-Level Models
- Improving Named Entity Recognition for Chinese Social Mediawith Word Segmentation Representation Learning
- Slot-Gated Modeling for Joint Slot Filling and Intent Prediction
- Attention-Based Recurrent Neural Network Models for Joint Intent Detection and Slot Filling
- A Stack-Propagation Framework with Token-level Intent Detection for Spoken Language Understanding
- BERT for Joint Intent Classification and Slot Filling