一种面向社交媒体文本中命名实体识别方法

1 前言

在微博、Twitter之类的社交媒体上,用户产生的大量短文本中包含各种类型的实体,这类实体的识别难度更大,因为有些实体的书写并不符合正常的语法习惯,如被用户随心缩写,导致这类实体出现的概率很小,呈现稀疏性。针对以上问题,本文介绍一种最新的识别模型,核心思想是提出语义扩充的方式来增强命名实体的识别效果,该模型发表在2020年EMNLP会议上,题目为:《Named Entity Recognition for Social Media Texts with Semantic Augmentation》,论文下载链接为:https://www.aclweb.org/anthology/2020.emnlp-main.107.pdf。

2 模型

上图为paper中模型框架图,主要分两个部分,第一部分是左边子图的Tagging Procedure,第二部分是右边子图的Semantic Augmentation。前者可看着一个正常的序列标注识别框架,后者是论文提出的语义扩充的实现思路。其中,Gating Module是二者融合的模块。接着详细介绍各个环节。

假设输入的文本,对应的序列输出为,为序列长度。输出的格式采用BIOES标注体系。

Embedding Layer中,采用word2vec,GloVe等类似预训练词向量进行转化。

Context Encoding中,采用一种变体Transfomer结构进行文本编码,详情可以阅读对应paper。通过encoder后,输入的文本得到对应的编码向量。

Augmentation Module中,对每个token在预训练的向量矩阵中找其最相似的前个词(cosine计算方式),得到每个token的相似集合:

在相似词集合中,并不是每个词都是有用的,接着做一次类似attention方式计算,将每个相似的贡献区别性对待。



其中为第j个相似词对第i个token的贡献权重,为对应的词向量,得到的就为第i个token的语义扩充信息。

Gating Module中,是实现向量与的融合,在融合的时候,文中采用控制门的形式,计算方式如下:


其中为学习到的控制门参数,取值为{0,1},即为融合后的每个token最终的表征向量。在此基础上,做最后的序列label预测。

CRF Layer中,计算公式如下:

其中

3 Experiment

论文在三个数据集进行试验验证,数据集统计情况如下:


主要试验对比结果如下,该模型在三个数据集上都大约有1%的提升。


此外,在针对Unseen Entity类的实体,最高有3%的提升。这类实体存在稀疏性,也说明该模型可以一定程度解决该问题。

4 结语

本文介绍的方法并不复杂,而且从原理上来讲,是很合理的,操作起来也不并复杂,论文也公开了源码:https://github.com/cuhksz-nlp/SANER。这里有一个小想法:在语义扩充中,是不是先从标注数据中找最类似的,如果在标注数据中没有出现,再从预训练的词矩阵中找,是不是更具有代表性。

更多文章可关注笔者公众号:自然语言处理算法与实践

你可能感兴趣的:(一种面向社交媒体文本中命名实体识别方法)