随着信息技术的快速发展,新闻、法律、医疗和媒体等领域数据呈爆炸式增长.从海量非结构化数据中进行信息抽取,得到结构化数据,进而获取有价值的信息已成为研究焦点.作为信息抽取领域关键技术之一的命名实体识别[1],其目标是从文本中识别出命名实体并分类为预先定义的类别,比如人名、地名、组织名称、货币名称和一些专有名词等.命名实体识别不仅是构建知识图谱的必要技术,而且在信息检索[2]、问答系统[3]和机器翻译[4]等自然语言处理(NLP)下游应用中扮演着重要的角色,准确地识别实体对这些下游任务有着直接的帮助[5-7].命名实体识别最早在第六届语义理解会议(MUC-6)[8]上提出,随后研究者们不断地对其进行了大量的研究.早期命名实体识别系统包括基于手工制作的规则、词汇、特征等进行识别.后来基于特征工程和机器学习的命名实体识别系统成为主流,常用的方法有最大熵[9]、隐马尔可夫模型[10]、支持向量机[11]和条件随机场[12].从文献[13]开始,具有最小特征工程的神经网络命名实体识别系统开始流行起来.深度学习逐渐开始主导命名实体识别的研究[14-16],目前已经深入各种垂直领域,如军事[17]、医疗[18]和金融等[19-21].大量的研究工作已在资源丰富的英文各领域开展[22-24],对于中文命名实体识别发展具有借鉴意义.然而,由于中文命名实体识别的起步较英文晚,用于命名实体识别研究的语料较少,语料领域相对单一,因此使得通用中文命名实体识别发展受到限制[25-26].另外,中文命名实体识别相较于英语更难,因为在英文语料中,单词之间不仅有空格作为分隔,还具有词根词缀等特征,而中文由单个汉字构成,词语间没有分割符号,且语言结构复杂,对实体边界的识别造成很大困难,这给中文命名实体识别带来了极大的挑战[27].传统中文命名实体识别的方法是在应用单词序列标注之前先执行分词[28],但是错误分割的实体边界会导致错误传播,影响实体类型的判定.而基于字符的模型可以避免分词错误,因此有学者认为基于字符的方法要胜过基于词的方法[29-30].为了利用词边界信息,一些研究工作将词汇信息整合到基于字符的模型中,使得中文命名实体识别模型性能得到进一步提升.这些基于字符的词汇增强方法要明显优于单纯基于字符或基于词的方法,已被广泛运用于中文命名实体识别[31].近年来,一些工作也开始关注提取中文语言上的其他特征来进行命名实体识别[14,15,32].本研究对基于深度学习方法的中文命名实体识别研究进行全面的梳理,仔细分析了中文命名实体识别任务的相关发展现状.首先整合了中文命名实体识别中广泛使用的公共数据集和评价标准,以便为相关研究提供有用的资源;然后对解决中文命名实体识别问题的新兴深度学习模型进行了全面阐述,将这些模型分类为基于字符、词和混合模型方法;另外,也讨论了其中最具代表性的方法;最后介绍了命名实体识别所面临的挑战,并概述了该领域未来的发展方向.1 资源与评价指标这里介绍被广泛使用的中文命名实体识别数据集和工具,并详细解释评价指标.1.1 数据集和工具带标记的语料库是包含一个或多个实体类型注释的文本集合.经过高质量标注的数据集对于模型训练和评估有着举足轻重的作用,表1列出了目前被广泛使用的中文命名实体识别数据集及其数据源和实体类型数量等详细信息.10.13245/j.hust.221104.T001表1中文命名实体识别数据集数据集年份文本来源类型数据量/103地址OntoNotes2007—2012新闻、微博、对话等1824.3https://catalog.ldc.upenn.edu/LDC2013T19MSRA2006新闻350.7https://github.com/InsaneLife/ChineseNLPCorpus/tree/master/NERResume2018新浪财经84.7https://github.com/jiesutd/LatticeLSTMWeibo2015社交媒体41.8https://github.com/hltcoe/golden-horse/tree/master/dataE-commerce2019电子商务24.9https://github.com/PhantomGrapes/MultiDigraphNERCLUENER2020新浪新闻1013.4https://github.com/CLUEbenchmark/CLUENER2020OntoNotes[33]:该数据集是由一个大型语料库标注得来的.该语料库包含新闻、电话对话、网络日志、广播和脱口秀等众多领域.目前从版本1.0到版本5.0共发布了5个版本.包含人名(Person)、位置(Location)和组织(Organization)等18个实体类型.其特点为数据集较大,涉及到的领域繁多,类型广泛.MSRA[34]:微软发布的新闻领域的数据集.包含人名(Person)、位置(Location)和组织(Organization)三类实体,整体数据量大,文本结构特点鲜明.Resume[35]:该数据集由上市公司高管简历处理而成.选择了1 027份简历摘要,并用YEDDA手动标注了国家(Country)、位置(Location)、人名(Person)等八类实体.数据集规模较小,但是实体类型很明确,标注质量较高.Weibo[36]:来自于新浪微博的社交媒体领域数据集.包含人名(Person)、位置(Location)、组织(Organization)和地区名(GPE)四类实体.数据规模较小,且数据质量不高,包含一定程度的噪声数据.E-commerce[37]:人工标注的电商领域数据集.包括品牌(Brand)和产品(Product)两种类型实体.数据集规模较小,数据质量较低.CLUENER[38]:一个细粒度命名实体识别数据集.基于清华大学开源数据集THUCNEWS,并对其中部分数据进行细粒度命名实体标注.实体包括组织(Organization)、地址(Address)和政府(Government)等10个不同的类别.数据集的常用标注方式有BIO,BIES和BMES[39].在BIO中,B代表实体的起始字,I代表实体的非起始字,O代表非实体,通过和不同的实体类型结合来对文本进行标注.如图1所示,模型由嵌入层、编码层和解码层构成,B-LOC代表位置实体〈中国〉的起始字〈中〉,E-LOC代表位置实体〈中国〉的结束字〈国〉.在BIES和BMES标注方式中,M代表实体的中间部位,S代表单例实体.10.13245/j.hust.221104.F001图1基于深度学习的中文命名实体识别模型结构表2中列出了学术界和工业界常用的比较成熟的中文命名实体识别工具.其中Stanza和CoreNLP 包含了整套的词性标记,LTP采用了863词性标注集,LAC等工具主要是以北京大学词性标注集做训练.其他工具采用从词性标注结果中提取对应专有名词的方法做实体提取.10.13245/j.hust.221104.T002表2常见中文命名实体识别工具中文命名实体识别工具地址CoreNLPhttps://github.com/stanfordnlp/CoreNLPStanzahttps://github.com/stanfordnlp/stanzaLAChttps://github.com/baidu/lacLTPhttps://github.com/HIT-SCIR/ltpHanLPhttps://github.com/hankcs/ PyhanlpFoolNLTkhttps://gitee.com/rockyzheng/FoolNLTKTexSmarthttps://ai.tencent.com/ailab/nlp/texsmartBosonNLPhttps://github.com/bosondata/bosonnlp.py1.2 评价指标一般采用模型识别类型与人工标注结果进行比较的方式来评价命名实体识别模型的性能,可用精确匹配或宽松匹配来量化衡量.在精确匹配中,模型通常须要同时正确识别实体边界和类型.而宽松匹配只须要正确识别实体类型并预测边界覆盖实体.命名实体识别本质上是两个子任务:边界检测和类型识别,因此精确匹配更为通用.具体来说,一般会使用假阳性(FP)、假阴性(FN)和真阳性(TP)来计算精确度(P)、召回率(R)和F分数(Fscore).精确度指模型输出结果中正确识别的百分比,召回率指模型正确识别的实体占总数的百分比.具体表达式如下:P=TP/(TP+FP)×100%;R=TP/(TP+FN)×100%;Fscore=2PR/(P+R)×100%.2 研究现状在命名实体识别的问题被提出后,经历了三个大的发展阶段.早期基于规则和手工特征的命名实体识别的基本思想是匹配规则,主要依赖词典、手工模板和正则表达式等方法.基于统计方法基本思想是选择最大概率输出,主要的方法有最大熵(ME)[9]、隐马尔可夫模型(HMM)[10]、支持向量机(SVM)[11]和条件随机场(CRF)[12]等.近年来,基于深度学习的命名实体识别模型成为主流,并取得了最优结果.与基于特征的方法相比,深度学习更有利于自动发现隐藏特征.图1展示了命名实体识别的通用结构,输入的分布式表示考虑了词和字符级嵌入,以及在基于特征的方法中已经被证明有效的附加特征,如POS标签和地名词典.上下文编码器使用卷积神经网络(CNN)、循环神经网络(RNN)或其他网络来捕获上下文依赖关系.标签解码器预测输入序列中令牌的标记.在图1中,每个令牌都采用一个标记预测的.该标记由具有其类型的命名实体的B-(开始)、I-(内部)、E-(结束)、S-(单例)或命名实体的O-(外部)表示.最后将检测到的文本范围分类为实体类型.自引入深度学习后,中文命名实体识别方法层出不穷.本研究从输入表示的角度出发,将这些算法分为基于词的模型、基于字的模型和基于字-词的模型.以下对这些模型和方法进行介绍.2.1 基于词的模型如图2所示,基于词的中文命名实体识别模型首先须要利用分词系统进行分词处理,将分词后的结果输入命名实体识别模型,再利用不同的模型进行实体识别.10.13245/j.hust.221104.F002图2基于词的中文命名实体识别模型结构文献[13]提出了第一个基于单词的命名实体识别模型.其特征由字法特征、词典和词典构建.用单词嵌入代替手工制作的特征,通过卷积层提取特征,用条件随机场来进行预测.文献[40]使用CNN捕捉拼写特征,文献[41]使用长短期记忆网络(LSTM)代替CNN进行特征提取.当上述模型在解决中文命名实体识别问题时,都要先进行中文分词,若分词错误则会直接影响到后续实体类别的识别[42].文献[43]提出了一种用于中文命名实体识别的基于词的BiLSTM-CRF模型,并取得了良好的性能效果.后续也有工作通过改进分词来间接提升命名实体识别的性能[44].2.2 基于字的模型如图3所示,不同于基于词的模型,基于字的模型指不对文本进行分词,将单个字作为模型输入.这样可以避免分词错误造成的错误传播问题,模型性能通常比基于词的模型更好.10.13245/j.hust.221104.F003图3基于字的中文命名实体识别模型结构文献[45]是首个应用基于字符的BiLSTM -CRF模型于中文命名实体识别问题的研究,利用部首级的表示,取得了很好的效果.文献[46]提出的为一种基于注意力机制的卷积神经网络模型架构,模型同样不依赖于词典等外部资源.采用CNN捕捉窗口范围相邻字符的依赖,获得局部注意力,通过Bi-GRU来获取句子级别的全局信息.同时利用Self-attention捕获来自相邻字符和句子上下文的信息,在不使用任何外部单词嵌入和词汇资源的情况下取得了较好的效果.文献[47]通过构建一个规律性感知模块和一个规律性不可知模块分别捕获每个跨度的内部规则和定位实体的边界并减轻对跨度规则性的过度关注,并进一步构建正交空间以鼓励两个模块提取规则特征的不同方面,实验证明了方法的先进性.虽然基于字符的命名实体识别系统通常好于基于词的方法,但是基于字符的命名实体识别没有利用词汇信息,而词汇边界对于实体边界起着至关重要的作用.2.3 基于字-词的模型由于中文命名实体识别标注数据资源的稀缺,因此如何在基于字符的命名实体识别系统中引入词汇信息是近年来命名实体识别的一个研究重点.特别是在一些中文命名实体识别任务上,词汇增强的方法会好于或逼近大语料训练的BERT的性能.文献[39]首先提出了一种基于格的长短期记忆网络(Lattice-LSTM)模型.该模型可以编码输入字符序列及对与词典匹配的所有潜在词语进行词汇增强.如图4所示,该模型扩展了基于字符的LSTM-CRF模型,通过有向无环图来连接单词开始和结束字符之间的单元,从而利用单词信息,图中:C为字符嵌入;h为隐藏层输出.就作者所知,该模型在多个中文数据集上均取得了当时的最佳效果.但Lattice LSTM中每个字符只能获取以它为结尾的词汇,数量是动态且不固定的,存在词汇冲突和信息损失问题,这也是导致Lattice LSTM不能并行化的原因.后续其他工作对这些不足进行了改进,改进方法可以分为动态结构和自适应嵌入.10.13245/j.hust.221104.F004图4Lattice LSTM模型结构动态结构指须要对模型设计相应结构以融入词汇信息.文献[48]采用CNN并行处理能力对字符特征进行编码,同时采用注意力机制融入词汇信息以加快模型推理效率.它提出一种反思机制调整词汇信息的权值,从而有效处理格结构潜在的词汇冲突问题.文献[49]提出了协作图网络模型,构建了由编码层、图网络层、融合层和解码层组成的基于协作的图网络.为了整合自我匹配的词汇和最相近的上下文词汇,提出了词-字符包含图、词-字符转换图和词-字符格图三种不同的构建图网络的方式,弥补了Lattice-LSTM模型的信息损失问题.文献[50]提出了基于词典的图神经网络(LGN)模型,通过引入一个基于词典的具有全局语义的图神经网络来缓解词汇冲突,句子中的潜在词汇用来连接字符以捕获局部信息,同时增加全局节点,通过多头注意力捕获长距离依赖和全局特征.节点的表示是通过递归聚合其传入边和全局中继节点来计算的.通过多次迭代聚合,该模型可以使用全局上下文信息,有效解决了中文歧义问题,性能取得了显著的提升.随着Transformer在图像和自然语言处理领域大放异彩,文献[51]提出了PLTE模型,基于Transformer的编码器,通过相对位置编码增强了自我注意,进而进行批量处理,并捕获字符与匹配词之间的依赖关系.引入一种新的多孔机制增强局部建模上下文的能力,使用轴共享(pivot-shared)结构替换了全连接,从而简化了Transformer架构,让模型更加高效.文献[52]提出了FLAT模型,将晶格结构转化为平面结构.平面网格结构由不同长度的跨度组成,每个跨度对应一个字符或潜在单词在原始格中的位置.利用Transformer中的自注意力机制捕获长距离依赖,并设计了一种巧妙的相对位置编码和Lattice结构结合,可以直接建模字符与所有潜在词汇间的信息交互.模型不仅解决了潜在词汇冲突,而且能充分利用GPU的并行计算能力,大大提升了运行效率.最近,由大语料训练的预训练模型在中文序列标记方面表现出色,使用BERT字符特征的模型在中文命名实体识别和中文词性标注等方面的表现也远远优于基于静态嵌入的方法.文献[53]提出了Lex-BERT将词典信息自然地整合到中文BERT中进行命名实体识别.使用特殊标记识别句子中单词的边界,修改后的句子将被BERT直接编码.模型没有引入任何新的参数,比FLAT效率更高.自适应嵌入只对嵌入层的表示进行设计,与编码层模型无关,可以和不同模型进行结合,具备一定迁移性.文献[54]提出了WC-LSTM,将单词信息添加到单词的开头或结尾字符中,在获取单词边界信息的同时,缓解了分词错误的影响.并设计了四种编码策略,将字信息编码成一个固定大小的表示来进行有效的批处理训练.但这种方法仍然存在信息损失问题,不能充分利用词汇信息,并且采取LSTM进行编码,建模能力有限.为了更好利用词典信息,文献[37]提出了Multi-digraph,一种基于图神经网络的新方法,结合自适应的门控图序列神经网络(GGNN),基于上下文信息对来自不同词典的信息进行加权融合,解决词典匹配冲突的问题,更好地显示建模字符和词典的交互.文献[55]提出了在嵌入层利用词汇信息纳入字符表示的简单有效方法Soft-Lexicon,对每个字符,依次获取BMES对应所有潜在词汇集合,结合新的编码方式,既避免了信息损失,又可以引入词嵌入.该方法与模型无关,避免了设计复杂的序列建模体系结构,可以适配于其他序列标注框架.在此基础上,文献[56]结合格结构和Soft-Lexicon提出了一种动态交叉自格注意网络DCSAN,模拟汉语网络中密集的字词格交互.通过将交叉格和自格注意模块与门控词-字符语义融合单元仔细组合,该网络可以显式地捕获不同空间(如词-字符和字符-字符)之间的细粒度关联,从而显著提高模型的性能.在上述工作中,格结构主要用来编码序列中的潜在词汇信息,在格结构取得成功的同时,其他特征也逐渐被用来设计模型.文献[57]提出了一种多源数据嵌入的交叉Transformer(MECT)模型,将汉字拆分成无法拆分的最小字根单位,通过CNN网络来提取字根特征,在一个双流Transformer中使用多源数据嵌入来集成字词特征和部首特征,利用汉字的结构信息来提高命名实体识别的性能.2.4 不同模型性能对比表3列出了近几年较为先进的中文命名实体识别模型在不同公共数据集上的F分数,表中“—”表示该模型未在此数据集上实验.E-commerce数据集由于公开较晚,所以模型实验结果较少.文献[39]首先提出了格结构,即通过引入外部词汇信息提高模型性能,然而由于每个字符间的词汇信息数量不均和模型网络结构的特点,因此该方法存在着词汇冲突、计算性能差和可迁移性弱等问题.在此基础上,基于字词的命名实体识别得到了大量研究,由表3可以看出:基于字词的模型总体性能都很好,这是因为模型通过外部词典获得句子中的潜在词汇,从而让模型避免了分词错误并且能够学习到词边界信息.文献[56]通过提出动态的交叉格注意网络,增强了模型捕获字符和词汇间联系的能力,从而取得了较好的效果.同样除了词边界信息,融入汉字部首信息也能提高模型的识别效果,文献[57]通过提取汉字的偏旁部首,与词汇信息相结合,得到蕴含更多信息的嵌入表示,为模型提供了多源特征,进而提高了识别效果,这也启发研究人员针对中文的特点来设计有效的命名实体识别模型.此外,可以看出基于字的模型同样能取得较好的效果,文献[46]通过CNN和BiGRU网络,提取输入序列的局部信息和全局信息,结合自注意力机制,获取字符的上下文信息,在部分数据集中表现甚至高于基于字词的模型.其原因一方面是模型具有较好的特征提取能力,另一方面可能是因为基于字的模型本身可以避免分词错误,使模型获得最原始的信息.整体来看,表中的模型在MSRA和Resume数据集上F分数较高,而在Weibo,Resume和E-commerce数据集上F分数较低,这些数据集最大的不同就是数据规模,性能的差异体现了数据量对模型的重要性,无论是做研究还是实际应用,高质量的数据集都是很重要的.10.13245/j.hust.221104.T003表3中文命名实体识别模型在公共数据集上F分数对比模型隶属分类OntoNotesMSRAResumeWeiboE-commerce[46]字73.6492.9794.9459.31—[44]字词73.8893.1894.4658.79—[48]字词74.4593.7195.1159.52—[49]字词74.7993.47—63.09—[50]字词74.8993.4695.3760.21—[51]字词74.6093.2695.4055.15—[52]字词75.7094.3594.9363.42—[54]字词74.4393.7495.2159.84—[37]字词76.0094.40—59.5075.20[55]字词75.5493.5095.5961.24—[56]字词—96.4196.6771.2782.62[57]字词(部首)76.9294.3295.8963.30—3 挑战与未来方向3.1 面临的挑战目前,基于深度学习的中文命名实体识别已经取得了极大成功,但依旧存在以下问题.a.数据集缺乏监督学习依然是最有效的模型训练方法,从Word2vec[58]到Bert[59],基于深度学习的命名实体识别性能提升得益于大语料库的预训练嵌入的发展,数据集的缺乏将直接导致模型无法有效的训练和部署.但如今数据标注仍然是耗时且昂贵的,对于许多特定领域来说,须要领域专家来执行标注任务,这是一个巨大的挑战.另外,目前中文命名实体识别领域没有明确的数据标注方案,标注的质量参差不齐,这可能导致实体边界的混淆,进一步影响模型的性能,甚至两个数据集来自同一领域,在其中一个数据集上训练的模型也可能无法很好地在另一个数据集上工作.b.非正式文本的实体识别表1中列出了目前较为通用的中文命名实体识别数据集.现有的深度学习模型在这些数据集上的表现参差不齐,一个明显特征为在Resume和MSRA这种正式文本(如新闻、文章等)上都有不错的效果,F分数都能达到90以上,而在Weibo和E-commerce这种非正式文本(如评论、对话等)上很难有好的表现,各种模型中最好的F分数只有71.25.然而,在诸如电商、社交网络等许多应用场景中,命名实体识别模型必须处理这类非正式的文本.由于其文本短且存在噪声等原因,因此比正式文本上更具挑战性.3.2 未来方向基于上述分析,未来可从以下几个方面展开相关研究.a.自动数据集标注虽然迁移学习一定程度上可以缓解数据集匮乏的情况,但是仍然会限制模型的性能.自动数据集标注只需要现有的词典等资源就可以快速地对一门新领域或新语言的语料库进行标注,极大方便科研流程.如何在利用机器进行自动化标注的过程中克服语料中的噪声影响,仍是一个亟待解决的问题.b.细粒度的中文命名实体识别细粒度中文命名实体识别须要识别出的实体类型显著增多,且对现实应用有很大帮助[60].例如化学研究须要研究几十到数百种不同的细粒度的实体类型[61],即便是大量的领域专家也很难进行一致和准确的注释.这更需要一个强大的命名实体识别工具来为人们服务,并且大规模细粒度的实体类型有望为下游的NLP应用提供更为丰富的语义信息.c.多源信息融合的中文命名实体识别由于中文没有明确的词边界,不存在词形变换等特征,因此中文命名实体识别比英语命名实体识别更具挑战性.而当前中文命名实体识别的研究主要集中在更好的利用词汇特征帮助词边界的识别.虽然能有效提升模型性能,但是距离人类专家水平仍有差距,如何利用好中文这种象形文字的其它特征如偏旁部首、语音等特点或者构建更有效的中文命名实体识别模型,从而进一步提升中文命名实体识别在各个领域的表现仍是很大的挑战.d.中文命名实体识别模型的迁移能力目前中文命名实体识别模型在部分数据集上已有较好的表现,但一个数据集上训练的模型可能因为标签不匹配或者域间差异等问题不能很好地应用于其他领域文本[62].如何将迁移学习和中文命名实体识别任务有效的结合,提高模型在全领域的泛化能力,或设计出强鲁棒性的中文命名实体识别模型,还须研究人员的进一步的探讨.e.针对命名实体识别任务的轻量化预训练模型在大规模语料库训练的背景下,预训练模型在自然语言处理任务上有出色的表现[60],通过强大的语义表示能力一定程度上缓解了非正式文本实体识别的难度,但其训练微调过程须要耗费大量的GPU资源.比如BERT-WWM[63]和Nezha[64]等语言模型,一经发布即刷新各大公共数据集榜单,其上亿的参数训练对硬件的计算能力要求非常高.普通用户在没有强大的计算资源的情况下,如何在模型轻量化和识别精度之间达到一个平衡,将预训练模型简单化,也是一个很重要的方向,更是命名实体识别能迈向更多应用的关键点.4 结语本研究从命名实体识别的基本概念出发,回顾了中文命名实体识别的研究背景、传统方法、发展过程及近年来的研究成果.首先整合了中文命名实体识别公共数据集、工具和评价指标,将这些内容以表格的形式呈现,提供链接以方便访问;然后概述了现有基于深度学习的中文命名实体识别方法,并进行了分类别的详细介绍和性能比较分析.目前中文命名实体识别面临着缺乏数据集和在非正式文本中效果不佳的挑战,未来研究可以从自动数据集标注、细粒度识别、提升鲁棒性和轻量化模型等方向发展.

使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,

确定继续浏览么?

复制成功,请在其他浏览器进行阅读