实体(Entity)是知识图谱的基本单元,也是文本中承载信息的重要语言单位。实体识别和分析是支持知识图谱构建和应用的重要技术。按照国际公开评测Automatic Content Extraction(ACE)的定义,在文本中对实体的引用(Entity Mention,也可称为指称项)可以有三种形式:命名性指称、名词性指称和代词性指称。例如在句子“[中国乒乓球男队主教练][刘国梁]出席了会议,[他]布置了备战世乒赛的具体安排”中,实体“刘国梁”的指称项有三个,其中”中国乒乓球男队主教练“是名词性指称,”刘国梁“是命名性指称,”他“是代词性指称。

本章主要讨论与命名性指称(即命名实体)相关的研究。狭义地讲,命名实体指现实世界中具体或抽象的实体,如人(张三)、机构(中国中文信息学会)、地点(北京)等,通常用唯一的标识符(专有名词)表示。有关命名实体的研究任务主要包括:实体识别、实体扩展、实体消歧、实体属性抽取、实体关系抽取等。

任务概述

命名实体识别任务是识别出文本中实体的命名性指称项,并标明其类别。一般来说,命名实体识别的任务就是识别出待处理文本中三大类(实体类、时间类和数字类)、七小类(人名、机构名、地名、时间、日期、货币和百分比)命名实体。不同任务对命名实体类别粒度的需求不同,例如在有些任务中只要识别出一个实体是人,有些任务则需要识别出一个实体是教师、学生或医生。相对于传统的三大类或者七小类的实体识别,细粒度实体识别的难点主要是类别多、类别具有层次结构、标注成本高,所以也有很多工作研究细粒度实体识别。

实体识别的难点

命名实体识别的过程通常包含两部分:(1) 识别实体边界;(2) 确定实体类别(人名、地名、机构名等)。命名实体识别的主要难点在于:

(1) 命名实体形式多变。命名实体的内部结构很复杂,对中文命名实体来说,情况尤其如此。

(2) 命名实体的语言环境复杂。命名实体是语言中非常普遍的现象,因此可能出现在各种语言环境中。同样的汉字序列在不同语境下,可能具有不同的实体类型,或者在某些条件下是实体,在另外的条件下就不是实体。

英语中的命名实体具有比较明显的形式标志(即实体的每个词的第一个字母要大写),所以实体边界识别相对容易,重点是确定实体类别。和英语相比汉语实体识别任务要复杂得多,主要表现在:

(1) 汉语文本中没有类似英语文本中空格之类的显示标示词边界的标示符,分词和命名实体识别会互相影响。

(2) 英语的命名实体往往是首字母大写的。而中文文本中没有这样的标示。

相关评测

从20世纪80年代末开始,随着消息理解系列会议(Message Understanding Conference,MUC)的召开,信息抽取研究蓬勃开展起来,发展成为自然语言处理领域一个重要分支。MUC是由美国政府支持的一个专门致力于真实新闻文本理解的系列会议,在信息提取技术的评测方面起着重要作用。MUC-6和MUC-7还设立了多语言实体识别评测任务MET(Multilingual Entity Task)。

MUC会议结束之后,美国国家标准技术研究所启动了自动内容抽取评测会议(Automatic Content Extraction,ACE)。这项评测从1999年7月开始酝酿,2000年12月正式开始启动,旨在推动自动内容抽取技术的研究,以支持对三种不同来源(普通文本、由自动语音识别得到的文本、由光学字符识别得到的文本)的语言文本的自动处理,主要任务是自动抽取新闻文本中出现的实体、关系和事件等内容。ACE中是实体识别与追踪(Entity Detection and Tracking,EDT)任务就是针对命名实体识别的评测。但是ACE中的实体与通常意义下的命名实体有一定区别,它的类别更多,识别难度更大。2009年ACE评测结束,由美国国家标准技术研究所组织的文本分析会议中的知识库生成子任务(text analysis conference knowledge base population,TAC-KBP)继续推动文本抽取和理解技术的发展,TAC提供了大规模的测试集合测试平台,数据源包括新闻和网络数据。TAC-KBP的主要目标是发展和评价知识库构建系统,这些系统可以从零开始建立知识库或是填充已有的知识库。TAC-KBP中没有关于实体识别和链接的专项任务。

为了推进中文命名实体识别技术的发展,SigHAN(the special interest group for chinese information processing of the association for computational linguistics)从2003年开始举办第一届中文分词评测BAKEOFF(the first international chinese word segmentation BAKEOFF),2006年和2008年举行的BAKEOFF设立了命名实体识别专项评测。

除此之外,国内比较有影响的评测会议还有863计划中文信息处理与智能人机交互技术评测会议。2003年,”中文信息处理与智能人机接口技术评测“设立了中文命名实体识别评测子任务,主要任务是识别人名、地名、机构名和其他专名。2004年命名实体识别任务作为一个独立的评测项目,识别任务有所扩大。

除了以上介绍的评测以外,在CoNLL(Conference on Computational Natural Language Learning)等国际会议上也有相关的评测任务,这些评测对命名实体识别技术的发展起到了推动作用。

基于规则的实体识别方法

有关命名实体识别已经有大量研究,大致有两种方法。第一种是基于规则的方法,第二种是基于机器学习的方法,也可以将两种方法结合起来使用。总的来说,基于规则的方法准确率比较高,接近人类的思考方式,表示直观,而且便于推理。但是这种方法成本昂贵,规则的制定依赖于语言学家和领域专家,很难移植到新领域。相比之下,基于机器学习的方法更加健壮和灵活,而且比较客观,不需要太多的人工干预和领域知识,但是需要人工标注数据,数据稀疏问题比较严重。另外,有的方法搜索空间比较大,会导致巨大的空间开销,进而影响效率。

在命名实体识别研究的早期阶段,基于规则的方法占主导地位。在基于规则的命名实体识别方法中,一般是由语言学家制定规则。相较于英文,中文命名实体识别难度更大,因为英文的命名实体一般是以大写字母开头。基于规则的方法,首先可以制定一些简单的基本规则,然后在各种语料库中,通过对基于规则方法的实验结果进行错误分析,不断改进规则,最后直到识别出更多更准的命名实体为止。在大规模标注语料库缺少的情况下,基于规则的方法能够取得较好的效果。参加MUC-6命名实体评测的系统几乎都是基于规则的系统,如:Proteus系统、Netowl系统、FACILE系统等。

在基于规则的方法中,最具代表性的方法是基于命名实体词典的方法。基于词典的方法采用字符串完全匹配或部分匹配的方式,从文本中找到与词典中最相似的单词或短语完成实体识别。其主要优势在于规则简单。比较经典的方法有基于正向最大匹配的方法、基于逆向最大匹配的方法和基于最短路径的方法。但是这类方法的性能往往受命名实体词典规模和质量的影响。然而,命名实体是一个动态变化的集合,新的实体不断涌现,再加上实体命名的不规则性,导致实体名称纷繁多样,难以构建出一个完备的词典。

基于规则的命名实体识别在特定领域的小规模语料上测试效果好,速度快。但是,人为编写规则建立在语言专家对大量语言现象进行深入分析的基础上,对语言知识要求较高,需要大量人力物力。另外,多个规则之间有可能会存在冲突。在使用规则进行识别的过程中,当激活的规则不止一个时,解决办法之一即是对这些规则按优先级进行排序,而排序过程耗费大量的人力物力,而且排序规则不具有普适性。除此之外,基于规则的方法语言受限,在某种语言上编写的规则很难移植到其他语言上,通用性不强。

基于机器学习的实体识别——基于特征的方法

基于机器学习的方法主要是利用预先标注好的语料训练模型,使模型学习到某个字或词作为命名实体组成部分的概率,进而计算一个候选字段作为命名实体的概率值。若大于某一阈值,则识别为命名实体。与规则方法相比,基于机器学习的方法鲁棒性更好,而且模型的构建代价较小。基于机器学习的方法又可以分为基于特征的方法和基于神经网络的方法。基于特征的方法主要是利用传统的机器学习模型结合人工设计的大量特征进行实体识别,而基于神经网络的方法可以利用各种结构的神经网络自动捕捉特征,进而完成实体识别。

目前,已经有多重机器学习模型被用于命名实体识别,包括语言模型、隐马尔可夫模型、最大熵模型、错误驱动的学习方法、决策树方法、DL-CoTrain和CoBoost等。命名实体的内部构成和外部语言环境具有一定的特征,例如:人名姓氏用字相对集中;地名前面通常由“去”“在”等词语,并以“县”“街”“开发区” 等词结尾。实际上,基于特征的方法中,无论何种模型,都在试图充分发现和利用实体所在的上下文特征和实体的内部特征,包括词形、词性和角色级特征等。一般而言,基本步骤包括:

特征选取:与一般的机器学习任务一样,在命名实体识别中,特征的选取有着重要的作用。

模型选择;在这个步骤中,模型的选择非常重要,不同的机器学习模型有着不同的优缺点,要根据具体的任务和需求选择适合的模型。

样本预测:利用上一步训练好的模型,对输入样本进行标注预测。

后处理:将上面的标注结果进行后处理(例如:合并标签),得到最终的命名实体识别结果。

基于特征的方法优点在于对语言的依赖性小,可移植性好。在现有的基于特征的方法中,应用最广泛的方法是基于字标注的模型,该类模型将命名实体识别看作一个序列标注的任务。最具代表性的方法是基于条件随机场的模型,下面详细介绍基于条件随机场的命名实体识别。

条件随机场(Conditional Random Field,CRF)是一种有效的计算联合概率分布的概率图模型,从本质上说CRF模型可以评估给定输入序列后所得到标注序列的条件概率。它在序列标注任务中通常具有良好的表现。在自然语言处理领域,很多问题或任务都可以归结为序列标注问题,例如:分词、词性标注、命名实体识别等。本节将介绍基于条件随机场模型的命名实体识别方法。首先将系统每个输入的观测值(中文文本以字为基本单元)可能对应的标注标签集合定义为\(F=B,I,O\)。B(Begin)表示一个命名实体的开始位置,I(Internal)表示一个命名实体的中间部分,O(Other)表示句子中的非命名实体部分。

条件随机场也被称为马尔可夫随机场,定义如下:假设无向图\(G(V,E)\),其中,V是图上的顶点,E是图上的边;X是输入观察序列,Y是输出标记序列,Y上的每个元素对应图中的一个节点,则条件随机场满足如下公式:

\[P(Y_v \mid X, Y_w, w \neq v) = P(Y_v \mid X, Y_w, w \sim v)\]

上述公式中,\(w \sim v\)表示两个顶点之间有直接连接的边,在命名实体识别任务中一般可以看作线性的CRF,因为输入和输出都是线性的。

CRF模型的数学表示:在条件随机场的输出序列上,线性链结构的条件随机场服从一阶的马尔可夫独立性假设。这时给定的待标注序列X,标注序列Y的分布满足如下公式:

基于机器学习的实体识别——基于神经网络的方法

基于传统特征的命名实体识别方法虽然取得了较高的性能,但是这类方法依赖于人工设计的特征和现有的自然语言处理工具(如词性标注工具)等。因此,基于传统特征的命名实体识别方法容易受到现有自然语言处理工具的性能影响,而且扩展性差,需要大量的人工设计、挖掘的有效特征。近些年,随着深度学习的发展,很多工作都提出利用神经网络自动地从文本中捕捉有效特征,进而完成命名实体识别。这类方法主要包括如下几个步骤:(1) 特征表示:主要是设计和搭建神经网络模型并利用其将文字符号特征表示为分布式特征信息。(2) 模型训练:利用标注数据,优化网络参数,训练网络模型;(3) 模型分类,利用训练的模型对新样本进行分类,进而完成实体识别。