事件的命名实体识别

更新于 2026年10月10日 版权声明
(三)事件的命名实体识别

命名实体可被认为是某一个概念的实例。命名实体识别(named entities recognition,NER)的目的是识别这些实体指称的边界和类别,主要包括人名、地名和组织机构名这三类专有名词的识别方法。[52]学术上NER所涉及的命名实体一般包括3大类(实体类、时间类、数字类)和7小类(人名、地名、组织机构名、时间、日期、货币、百分比)。NER方法分为基于手工规则的、基于机器学习的和基于深度学习的三大类。

1.基于手工规则的命名实体识别方法

传统的NER方法依赖于手工规则系统,须结合命名实体库,对每条规则进行权重赋值,然后通过实体与规则的相符情况来进行类型判断。大多数时候,规则往往依赖具体语言领域和文本风格,难以覆盖所有的语言现象。典型应用如航空领域的NER[53]、军事领域的NER等[54]。对特定实体建立词库进行检索判断,尽管在各自特定领域准确率较高,但效率较低,并且难以形成通用的NER方法。

2.基于机器学习的命名实体识别方法

基于机器学习的NER方法广泛应用了判别式的条件随机场(conditional random field,CRF)和生成式的隐马尔可夫模型。

McCallum等2003年最先将CRF模型用于NER。该方法由于简便易行,而且可以获得较好的性能,因此受到业界青睐,已被广泛地应用于人名、地名和组织机构等各种类型NER,并在具体应用中不断得到改进,可以说是NER中最成功的方法。[55]。

基于CRF的NER与前面介绍的基于字的汉语分词方法的原理一样,就是把NER过程看作一个序列标注问题。其基本思路是首先对给定的文本进行分词处理,然后对人名、简单地名和简单的组织机构名进行识别,最后识别复合地名和复合组织机构名。所谓的简单地名是指无法再继续细分的那种地名,如北京市、湖北省、中国等地名,而“湖北省武汉市洪山区珞瑜路”则为复合地名因为可以拆分成“湖北省”“武汉市”“洪山区”“珞瑜路”四个基本地名。同时,简单的组织机构名中也不会嵌套其他组织机构名。CRF属于有监督的学习方法,因此,需要利用已标注的大规模语料对CRF模型的参数进行训练。CRF在给定一组输入序列的条件下,输出序列的条件概率分布。[56]随机变量的集合称为随机过程。由一个空间变量索引的随机过程称为随机场。也就是说,一组随机变量按照某种概率分布随机赋值到某个空间的一组位置上时,这些赋予了随机变量的位置就是一个随机场。[57]而CRF,就是给定了一组观测状态下的马尔可夫随机场,这个随机场满足马尔可夫性。也就是说CRF考虑到了观测状态这个先验条件,这也是条件随机场中条件一词的含义。CRF的数学模型为:

图示

其中,w≠v代表除v以外的所有节点,而w~v表示与v相邻的所有节点。这一表达式充分体现了CRF所具有的马尔可夫性。

CRF中有两类特征函数,分别是状态特征和转移特征。状态特征用当前节点(某个输出位置可能的状态称为一个节点)的状态分数表示。转移特征用上一个节点到当前节点的转移分数表示。CRF损失函数的计算,需要用到真实路径分数(包括状态分数和转移分数)和其他所有可能的路径分数(包括状态分数和转移分数)。这里的路径用词性来举例就是一句话对应的词性序列,真实路径表示真实的词性序列,其他可能的路径表示其他可能的词性序列。在给定某个状态序列时,某个特定的标记序列概率为:

图示

其中,t和s分别为转移特征函数和状态特征函数,Z为规范化因子。

CRF为NER提供了一个特征灵活、全局最优的标注框架,但同时存在收敛速度慢、训练时间长的问题。相比而言,同为机器学习方法的隐马尔可夫模型则更加迅速,处理效率更高,往往用在精度要求不是很高但需要实时标记的场合。

隐马尔可夫模型是一种在NLP领域中被广泛应用的统计模型,中文NER中很多问题都可以用隐马尔可夫模型来解决。[58]尽管都是抽象为序列标注的问题,但识别对象不同,隐马尔可夫模型的堆叠方式通常有所不同。俞鸿魁等人提出了一种层叠式隐马尔可夫模型,整个NER的层叠隐马尔可夫模型由三级互相联系的隐马尔可夫模型构成,自底向上分别为人名识别HMM、地名识别HMM和机构名识别HMM(见图3-22)。每一级都是以隐马尔可夫模型作为基本的算法模型,整个算法的时间复杂度和隐马尔可夫模型的时间复杂度相同,分析时间随着输入串长度的增长而线性增长,速度非常快。[59]底层的隐马尔可夫模型通过词语的生成模型为高层隐马尔可夫模型的参数估计提供支持。

图示

图3-22 层叠HMM进行NER的步骤[60]

3.基于深度学习的命名实体识别方法

基于深度学习的NER的发展如火如荼。近年来,随着硬件计算能力的发展以及文本向量化方法的发展,神经网络可以有效处理许多NLP任务。这类方法对于序列标注任务的处理方式是类似的:将文本与命名实体经过向量化表示后,映射到规则欧几里得空间中进行嵌入表示,随后将句子的嵌入表示序列输入神经网络中,用神经网络自动提取特征,最后来预测每个实体的标签。这种方法使得模型的训练成为一个端到端的过程,是一种数据驱动的方法,但网络种类繁多,对参数设置依赖大,模型可解释性差。此外,这种方法的一个缺点是对每个token打标签的过程是独立进行的,不能直接利用上文已经预测的标签而只能靠隐含状态传递上文信息,进而导致预测出的标签序列可能是无效的。

应用于NER的BiLSTM-CRF模型(见图3-23)主要由embedding层、双向LSTM层,以及最后的CRF层构成,实验结果表明BiLSTM-CRF已经达到或者超过了基于丰富特征的CRF模型,成为目前基于深度学习的NER方法中的最主流的模型。[61]在特征方面,该模型继承了深度学习方法的优势,无需特征工程,使用词向量以及字符向量就可以达到很好的效果。如果有高质量的词典特征,还能够进一步提升性能。(https://www.daowen.com)

图示

图3-23 BiLSTM-CRF模型的结构示意[62]

对于序列标注来讲,普通CNN有一个不足,就是卷积之后,末层(例如softmax层)可能只得到了原始输入数据中一小块的信息。而对NER来讲,即使是距离很远的词都有可能因为长尾效应对当前位置的标注产生影响,即所谓的长距离依赖问题。为了覆盖全部的输入信息就需要加入更多的卷积层,这就导致层数越来越深,参数越来越多。而为了防止过度拟合又要加入更多的dropout之类的正则化,带来更多的超参数,整个模型变得庞大且难以训练。因为CNN有这样的劣势,对于大部分序列标注问题,人们还是选择BiLSTM之类的网络结构,尽可能利用网络的记忆力记住全句的信息来对当前字做标注。但是CNN可以作为一种特征提取的手段对原有模型进行改进,李丽双和郭元凯等人提出了引入卷积的CNN-BiLSTM-CRF的生物医学NER(见图3-24),在BioCreative II GM和JNLPBA语料上实现了很好的性能。[63]

图示

图3-24 生物医学NER的CNN-BiLSTM-CRF[64]

但这又带来另外一个问题,BiLSTM本质是一个序列模型,在对GPU并行计算能力的利用上不如CNN那么强大。如何能够像CNN那样给GPU提供可高速并行计算的方法,而又像LSTM这样用简单的结构记住尽可能多的输入信息呢?

Fisher Yu和Vladlen Koltun 2015年提出了dilated CNN模型,意思是“膨胀的”CNN。[65]图3-25表示了不同的空洞卷积示意图。

图示

图3-25 不同的空洞卷积[66]

其想法并不复杂:正常CNN的filter,都是作用在输入矩阵的一片连续的区域上,不断sliding做卷积。dilated CNN为这个卷积核增加了一个空洞宽度,作用在输入矩阵的时候,会跳过所有空洞宽度范围内的输入数据;而卷积核本身的大小保持不变,这样卷积核获取了更广阔的输入矩阵上的数据,看上去就像是“膨胀”了一般。具体使用时,空洞宽度会随着层数的增加而指数增加。这样随着层数的增加,参数数量是线性增加的,而感受却是指数增加的,可以很快覆盖全部的输入数据(见图3-26)。

图示

图3-26 在命名实体识别过程中的三层空洞卷积堆叠[67]

ID-CNN方法则使用了dilated CNN[68],对应在文本上,输入是一个一维的向量,每个元素都是一个嵌入。模型是4个大的相同结构的dilated-CNNblock拼在一起,每个block里面是空洞宽度为1、1、2的三层空洞卷积层,所以叫作iterated dilated CNN,即ID-CNN。ID-CNN对输入句子的每一个词或者字生成一个输出,和BiLSTM模型一样,放入CRF层,用viterbi算法解码出标注结果。在BiLSTM或者ID-CNN这样的深度网络模型后面接上CRF层是序列标注很常见的方法。BiLSTM或者ID-CNN计算出的是每个词分类的概率,而CRF层引入序列的转移概率,最终计算出损失函数反馈回网络。

ID-CNN与CRF结合的方法使运行速度相较BiLSTM取得了更大的提升,但会丢失局部信息。虽说可以看得比较远,但是有时候远距离的信息并没有相关性。

事实上,使用深度学习进行命名实体识别的方法还有很多,图3-27列举了一些模型。[69]

在本书中,我们采用NER模型对数据的命名实体进行了识别。使用百度的NLP工具箱,对新闻文本中出现的时间、地点、人物信息进行了提取,以便确定事件爆发的时间、地点。同时,将其与使用正则表达式提取的时间、地点信息进行了对比。我们发现,正则表达式提取的含有时间与地点的数据相较NER方法更多,但基于深度学习的NER相较正则表达式更准确,能够提取多个具体时间地点。例如微博文本“【#广东警方查获走私冻肉730吨#:涉案价值1500万元,来自美国、巴西、德国等国家】#以案析法#近日,广东@平安中山查获一起特大走私冻肉案,抓获涉案嫌疑人14名,查获走私冻肉约730吨,涉案价值1500万元人民币。这些走私冻肉来自美国、巴西、德国等国家。目前案件已移交海关部门处理”,若使用正则表达式可以很快提取地点广东省中山市,但如果使用NER方法,则还可以识别美国、巴西、德国等地名。

图示

图3-27 部分NER框架[70]

↑上一章 ↓下一章
关注公众号获取验证码
复制内容需要验证码(7.99元/天)