命名实体识别

2024-09-20

命名实体识别(精选3篇)

命名实体识别 篇1

1 引言

命名实体识别(NER)技术在信息检索、信息抽取以及问卷系统等多个领域都是非常关键的技术。随着互联网的发展,互联网所包含的海量数据越来越成为信息抽取的重要来源。目前,命名实体识别研究往往集中在自由文本领域,对于互联网环境下,如何结合网页结构特征,提高识别和关联精度等研究问题,尚处于起步阶段。本文提出了基于网页结构特征的中文命名实体识别[1]和关联算法。中文命名实体将主要考虑两种典型的实体类型:组织机构名和组织机构地址名。本文提出的算法流程可以简单描述为如下三个步骤[2]:

●候选实体产生步骤:将输入的网页进行解析,根据它的HTML结构转化为树状结构(DOM树)。DOM树的内部节点是HTML标l签,而其叶节点是内容文本。每一个叶节点所包含的文本被认为是一个候选实体。

●候选实体识别步骤:在此步骤中,设计了一系列在候选实体上进行中文组织结构名称和地址识别算法。

●实体关联步骤:在前面两步的基础上,识别出的组织结构名和地址将通过关联算法,利用D O M树的结构和其他特征进行关联。

2 实体候选项生成算法

网页是通过HTML结构创建的。而HTML结构是由很多不同的标签组成的,H T M L标签可以用作实体间的自然分隔符,用于确定实体边界有用的特征。即使无法识别出一个网页中的所有实体,但是考虑到实体在网站级别和互联网级别[3]的重复性,也可以达到相当好的召回率。识别结果的交叉验证是有可能的,而且在识别过程中非常关键。通过结果的交叉验证,错误的识别结果可以通过在同一页面或者不同页面上的正确识别结果来校正。本文提出的候选生成算法通过两步描述:

●将网页通过HTML解析转化为DOM树结构,在D O M树中,叶子节点只保存文本内容信息。

●对每一个叶子节点,将其包含的文本进一步通过标点符号进行分割,得到一个短语序列。每个短语会被考虑成一个候选实体,并由识别算法进一步处理。

经过候选实体生成阶段,网页被转化为D O M树形式,其叶节点只包含被分隔的短语。

3 中文组织机构名和地址识别算法

中文组织结构名称[4](Chinese Organization Name:CON),类似于人名,是一种无法用词典来列举的特殊实体。但通过对大量实例的观察,可以总结出一些规律:

●中文组织结构往往使用地理词作为其名称的前缀。比如说,“烟台大酒店”的前缀:

“烟台”,就是一个典型的地理词,暗示着这个机构的所在地。

●中文组织结构名称往往以类型词作为名词的结尾。再以“烟台大酒店”为例,其后缀“大饭店”指明了它的类型。

●有些词几乎不可能在机构名l称中出现。有些词比如“失败”,“邪恶”等等,根据中文命名习惯,一般不会出现在中文名称里。

中文组织结构地址(Chinese Organization Address:COA)的识别相对于名称的识别更为困难,因为中文地址命名规则复杂,并且在网页中,存在大量的缩写情况。网页中出现的地址类型主要包括完整的常规地址(A)、使用建筑物作为地址简称(B)和相对地址类型(C)三种。对不同的类型有不同的识别算法。对第一种地址A采用分类标注的方法,将地址识别问题转化为文本分类问题,利用分类工具将候选实体区分为地址类型和非地址类型。地址类型B和C的识别相对更为困难。考虑到这两种类型的地址里,总是会出现建筑,公司等组织机构名称,因此在处理过程中,本文提出首先利用组织结构名称识别算法队候选地址进行识别,以发现候选地址中出现的组织结构名。同时检查在这些识别出的机构名前后是否出现指示性的词语和位置补语。其中一些预定义的提示性词和位置补语列在表1中。

4 命名实体关联算法

一个网页可以通过一颗DOM树表示。命名实体识别算法就是在DOM树的叶节点上进行的。在识别算法完成之后,叶节点所包含的命名实体类型都已经被确定。由于命名实体识别算法往往只针对单个实体进行分析,而忽略实体间的关系。我们考虑命名实体关联算法。实体关联算法[5]总结为如下三个步骤:

●第一步:对于每个叶节点(Leaf Node)中的文本,对其中包含的每一个COA(地址类型),向前查找(从右自左)CON,直到找到第一个满足不冲突原则的CON实例。如果在一个叶节点中完成了一轮匹配,仍然还有没能匹配到的实体(不论是COA还是CON),将它们按序上传到此叶节点的父节点。

●第二步:对于一个中间节点(Internal Node),从其子节点中接受未在第一轮匹配的实体,并将它们按子节点的顺序排列。按照第一步的方法对这些汇总的实体再次分配。如果有剩余未匹配的实体,就将它们上传到上一层节点。

●第三步:如果已经到了根节点,算法停止,并输出所有匹配的实体对。否则转到第二步。

5 实验

本实验下载了400篇中文网页,每个网页至少包含一个中文组织结构名或者地址,这些网页将作为测试集合。经过人工标注,测试集总共包含了2 5 1 0个地址和4616个公司名字,但包含完整地址和名字的组织实体只有2081个。

本实验采用了精度(Precision),召回率[6](Recall)以及F-measure衡量和评价实验结果。这三个标准的定义如下:

其中,β是准确率和召回率的相对权重。在本实验中,取β=1。

在衡量实验结果时,只有当抽取的实体(组织机构名或地址)能完全的和标注的数据相匹配的时候,才会被认为是正确的抽取。对本文提出的算法而言,测试集中的每个网页将被解析成DOM树结构[7,8],并将其作为实体识别以及实体关联算法的输入。在本系统的识别过程中,不仅被H T M L标签分隔的短语会被为候选实体,同时包含在文本内容中的短语也会同样被当做候选实体处理。中文组织结构名的识别结果如表2所示。从中可以看出,本系统在F-measure衡量指标中比基准系统提高了14.3%。可以看出,本系统的精度(Precision)并不是很高,主要是由于有很多的实体出现在文本中,并没有被HTML标签分离出来。但是,同一个实体,往往会出现在同一个页面的不同位置。在实验的测试数据中随机选出了一个页面,有一个机构名在不同的位置,总共出现了十四次:标题中出现了一次,元数据中出现了六次等等。在这十四次中,有九次的位置刚好位于HTML标签或者标点符号之间,处于这些位置的实体可以成功被本系统识别。因此本系统的召回率仍然是可以接受的。

在地址识别中,本系统采用了支持向量机(SVM)作为地址分类的工具。本实验采用不同核(Kernel)方法以及相关参数做了细致的对比实验,不同核函数在地址测试数据上的实验效果如表3所示。

最后,将训练而得的分类器应用于400个HTML测试页面,结果如表4所示。

结果显示,本系统对网页中地址的分类具有非常好的效果。

在实体关联实验中,选取了页面级别的实体关联以及语料级别的实体关联[9]。在页面级别的实体关联实验中,如果两个实体被系统认为是关联实体,仅当这两个实体在同一页面中被标注为关联实体,才会认为是一次正确的识别。在语料级别的关联实验中,如果两个实体被系统识别为关联实体,当这两个实体在语料中任意一个页面中被标注过,就会被当做一次成功的标注。本文采用权重比较的方法进行交叉实验[10],每个被关联实体对的权重是根据其共同出现次数来决定的。实验结果如表5所示。

6 结束语

本实验提出实体候选项生成过程,通过将网页解析成DOM-Tree结构,从中识别候选项。实体识别算法将候选实体进行分类,获得其最终类型。实体关联算法根据网页的结构和实体之间的关联度,对实体进行匹配实验结果说明本系统是非常有效的。

参考文献

[1]周俊生,戴新宇,尹存燕,陈家俊.2006.基于层叠条件随机场模型的中文机构名自动识别[J].电子学报,2006,345(5):804-809.

[2]AUER S,BIZER C,KOBILAROV G,et al.Dbpedia:A Nucleus for a Web of Open Data[M].ISWC/ASWC 2007.

[3]BUITELAAR P,RAMAKA S.Unsupervised ontol-ogy-based semantic tagging for knowledge markup[M].Workshop on Learning in Web Search,2005.

[4]CHEN F,DOAN A H,YANG J,et al.2008.EfficientInformation Extraction over Evolving Text Data[M].ICDE2008.

[5]赵欣欣,索红光,刘玉树等.基于标记窗的网页正文信息提取方法[J].计算机应用研究,2007,24(3):144-145.

[6]殷贤亮,李猛.基于分块的网页主题信息自动提取算法[J].华中科技大学学报(自然科学版),2007,35(10):39-41.

[7]李向阳,苗壮,肖江.无结构文本信息抽取综述[J].军事通信技术,2004,(2):31-36.

[8]王琦,唐世渭,杨冬青.基于DOM的网页主题信息自动提取[J].计算机研究与发展,2004,41(10):1786-1792.

[9]吴鹏飞,孟祥增,刘俊晓.基于结构与内容的网页主题信息提取研究[J].山东大学学报(理学版),2006,41(3):131-134.

[10]YAN LIU,QIANG WANG.A Heuristic Approachfor Topical Information Extraction from News Pages[J].Lecture Notes in Computer Science:Spring,2006:357-362.

命名实体识别 篇2

关键词:地理命名实体识别,特征模版,条件随机场,修正规则,结合修正

0 引 言

命名实体指的是文本中具有特别意义的实体,如人名、地名、机构名等,而空间命名实体( SNE) 是命名实体中的一个子集,包括其中的地名和机构名,本文定义为具有地理位置属性的命名实体。从20世纪80年代到现在,命名实体研究越来越受到人们的重视。信息理解系列会议MUC( Message Understanding Conferences) 召开后,信息抽取研究发展迅猛。在1995年9月举行的MUC-6[1,2,3]会议首次定义了“命名实体”这一术语,同时提出了一个对英文命名实体识别的结果进行评测的全新研究领域; 在国内会议中对命名实体识别产生深远影响的是863[4]计划中文信息处理与智能人机交互技术评测会议,将中文命名实体识别作为分词和词性标注评测的子任务引入,主要识别人名、地名、机构名和其他专名。在命名实体识别研究的初期,基于规则的方法是主要的识别方法。在MUC命名实体评测会议上,参加评测的系统运用的基本上都是基于规则的方法。英文命名实体识别技术目前已经达到了较高的水平,并且达到了实际应用的程度,而中文命名实体识别就要落后和困难很多,主要原因也在于中英文之间的各种差异。

命名实体识别发展到现在已经取得了很大的成果,但是由于中文自身的特殊性和命名实体的开放性和发展性,使得中文命名实体识别研究进展缓慢。中文地理命名实体识别面临了多方面的挑战,比如中国地名用字用词没有统一标准,任何字词和词性的字词都可能出现在地名中。而且地名和组织名的长度可长可短,没有限制,短则一个字,长则十多个字; 地名和组织名内部结构复杂; 中文命名实体识别需要预先分词,但分词的精度并不高; 中文中没有大小写及词形变换特征; 中文语料缺乏; 目前用于中文的地理命名实体识别的大规模标准语料很少等等。同时文档中的标点符号、空格、拼写方式和文本格式等中文习惯对命名实体识别也会造成影响。

沈达阳[5]等通过统计地名用字在地名不同位置的概率,比如地名首部、地名尾部和地名中间,生成了地名用字概率统计表,并以此构造了中国地名用词库、地名指示库,建立了地名规则和地名规则库。并提出了地名构词可信度和地名接续可信度概率用以平衡识别召回率和精确率。

郑家恒[6]等采用基于语料库的方法,根据地名词典统计分析地名信息以及这些字在真实文本中使用程度信息进行地名初筛选,再结合上下文信息的规则来确定地名,采用基于变换的错误驱动的机器学习方法,可以有效地提高系统的召回率和精确率。

与地名相比,中文机构名的识别效果还比较差,在研究方法上,还主要停留在基于规则的方法上。张小衡[7]等在国内最早进行了相关方面的研究。文中总结了包含高校组织名的文本的语法、语义机构以及高校组织名的内部组成特征,设计了大量的规则模板,在实际操作中,匹配其中的规则来识别高校边界,从而提取组织名。并利用此方法来识别中文高校,在六百万的语料中进行了识别,并取得了很好的效果,其准确率和召回率高达97. 13% 和96. 16% 。周俊生[8]等设计了两层的条件随机场模型,在低层阶段主要识别简单的人名,地名和机构名,并将识别结果作为输入提交给高层随机场,为识别复杂机构名提供决策基础。文中总结了语法、语义和大量的人类知识,总结并利用实验验证了大量识别机构名的有效特征,并设计了特征选择算法,选择有效特征提高识别效果。

从以往的研究来看,大多数研究都集中在对一些特定领域的机构名进行识别,但还不足对所有领域的机构名进行有效识别,在2004年国家863中文信息处理和智能人机接口技术测评中,中文机构名 的识别召 回率和准 确率仅为57. 41% 和64. 64% 。

本文先对统计模型的定义和相关概念以及方法进行简单介绍。然后着重介绍了条件随机场统计模型,之后重点研究了基于CRF的中文地理命名实体的识别算法,确定实验所需要的训练和测试语料库以及标注集,以及各种字典,然后对语料库按照标注集进行标注转换,之后对地名和机构名的内部组成特点和用词用字特征以及上下文特征进行分析和总计,并在此基础上,制定特征模板,最后通过实验,分析和统计实验结果,包括识别的准确率和召回率以及F值,验证特征的有效性。最后针对CRF在中文地理命名实体识别结果中的错误样本进行总结,人工设定的能够对错误识别结果进行修正的规则,并通过实验验证了规则的有效性,能够有效地提高CRF识别的召回率。

1 统计模型

1. 1 概率模型

概率模型通过概率值排序或者通过全局和局部的方式对概率矩阵空间进行最优搜索来判别目标的类别,是智能信息领域中广泛运用的数学模型。概率模型的求解目标可定义如下:

其中X = ( X1,X2,…,Xn) 是观察序列,y是目标类别,Y是目标类别空间。根据求解目标概率分布的参数的方法的不同,可以分为生成模型和判别模型。其中,生成模型又叫产生式模型,判别模型又叫条件模型或条件概率模型。

生成模型是指将类别y在观察到样本X的条件下出现的概率这样的原始问题,在贝叶斯理论的基础上转换为求解类别出现概率和类别生成观察样本的概率之积的模型。

判别模型是指直接求解类别Y在观测到样本X下出现的条件概率模型。本文主要研究对象是判别模型中的条件随机场模型。

1. 2 特征描述

模式识别的任务是根据从样本中提取的特征来决定样本的模式类别。模型识别中对特征的选择和提取是模式识别的关键技术。特征指的是模式的属性,是区分不同模式类别的基本属性。一般说来,只有特征向量中包含了足够多的类别信息才能做到正确的分类,所以,为了提高识别率,需要增加特征向量的维数。而增加维数,往往会导致信息的冗余以及计算的复杂度等后果。所以,选择有效特征,使得在识别效果不变或者影响很小的情况下降低特征向量的维度,即所谓的特征选择,特征选择的目的是从高维度的特征中按照事先制定的评判标准挑选最优特征构成最优特征子集。制定恰当的评价准则和选择合适高效的特征子集搜索算法是特征描述的关键之处[9]。

在选择特征的过程中,通常数据类型、问题规模和样本数量等都会对选择的效果产生影响,更严重的情况是,在有噪声和冗余特征的情况,甚至会选择错误的特征作为最后的结果,对识别效果产生不好的影响。所以根据这些影响因素,应该在确定合适的特征选择算法时应该遵循一些原则,如数据类型的处理能力、问题规模的处理能力、样本数量的处理能力、对噪声的容忍能力以及尽可能付出最少的代价[10]。

1. 3 条件随机场

定义[11,12]设无向图G = ( V,E) ,其中V是无向图G的顶点的集合,E是无向图G的边的集合,Y是无向图G的顶点索引,即Y = { Yv| v∈V} 。当Y的出现条件依赖于X,且Yv根据图结构的随机变量序列具有马尔可夫特性,即:

其中w-v表示( w,v) 是无向图的边。则称( X,Y) 是一个条件随机域CRFs( Conditional Random Fields) 。

如图1所示,条件随机场是对于给定的输入序列X,通过事先统计得到的模型参数,计算或者预测指定的输出随机变量组合Y的条件概率无向图模型,且这些输出随机变量之间通过指示依赖关系的无向边所连接。

条件随机场模型是一条件序列无向图模型,CRFs是在给定观察序列的条件下,计算整个观察系列对应的标记序列的联合概率分布,而不是在给定当前状态条件下,标记下一个状态的状态分布。标记序列的条件分布属性,让CRFs可以很好地拟合标记序列的条件概率依赖于观察序列中非独立的,相互作用的特征的实际数据。条件随机场模型近年来广泛运用于序列标注问题中,并且在多个研究领域都取得了良好的效果。因为,条件随机场综合了隐马尔科夫模型和最大熵模型的优点,同时克服了隐马尔可夫模型那样严格的独立性假设,并且解决了最大熵马尔可夫模型和其他非生成的有向图模型所固有的标记偏置的缺点。

2 基于 CRF 的地理命名实体识别算法

基于CRF的地理命名实体识别的识别效果是比较好的。通过对实验结果的进一步的分析总结,经研究发现可以通过一些人工启发规则将未识别的样本识别出来,即通过规则对未识别样本进行二次识别,来提高识别效果。

2. 1 基于 CRF 的地理命名实体识别总体流程

如图2所示,我们对整个实验的流程做简单的陈述:

第一步首先将1998年1月份《人民日报》分为50000句训练语句和50000句不重叠测试语料; 将训练语料进行标注转换后,利用CRF模型对转换后的语料进行训练,最终生成模型参数。

第二步利用中科院ICTCLAS分词软件对测试语料进行分词和词性标注,并利用上一步得到的CRF模型进行地理命名实体的识别。最终将词形和词性标注序列转换为本文定义的标注集序列。

第三步通过挖掘未识别实体样本的内部特点和上下文特征,设计了大量的人工规则,在上一步识别的基础上,进行二次识别。召回了为识别的地名和组织名。

2. 2 地理命名实体标注集的选择

我们首先定义条件随机场模型的训练所需要的标准集,标注以词尾对象,标注集中主要定义了地理命名实体的开始,内部,结尾,和非命名实体几种类型,如表1所示。

此外,为了区别地名和组织名,我们还额外定义了地理命名实体类别标注集,如表2所示。

最后,我们将标注集结合在一起,形成最终识别地理命名实体的标注集,一共4×2 + 1 = 9种地理命名实体标记,比如说LOC-B,就代表当前词为地名的首部,依次类推。

2. 3 地名修正规则

首先列举几个基于CRF识别结果中的未识别的地名的典型例句和经过模型识别后的错误标注序列以及其正确的标注序列,然后针对这些典型例句错误标注序列进行分析,其中主要修正的一些地名是单字地名、地址和复杂结构的地名,由于地名很少随着时间的推移而改变,尤其是国家名和一些重要城市名以及地名后缀等,所以,在利用规则进行地名识别修正的时候,可以依靠地名字典和一些句法规则来修正结果。修正的方法主要依靠字典来识别句子中的地名,字典主要是地名字典、后缀字典和前后词搭配字典。

例句一:

美国/ns当局/n列举 /v巴/j民族/n权力/n机构 /n为 /p拯救 /v巴 /j以/j谈判 /vn所/u必须 /d履行/v的 /u义务 /n,/w同时/c告诫 /vn巴方 / n的 / u要求 / n应当 / v“/ w实际 / n”/ w。

基于CRF的识别结果:

美国/LOC-S当局 /O列举 /O巴/O民族 /O权力 /O机构 /ORG-E为 /O拯救/O巴/O以/O谈判 /O所 /O必须 /O履行 /O的/O义务 /O,/ O同时 / O告诫 / O巴方 / O的 / O要求 / O应当 / O“/ O实际 / O”/ O

正确的标注序列:

美国 /LOC-S当局 /O列举 /O巴/ORG-S民族/ORG-I权力 /ORG-I机构 /ORG-E为/O拯救/O巴 /LOC-S以/LOC-S谈判/O所/O必须/O履行 /O的/O义务/O,/O同时/O告诫 /O巴方/O的 /O要求 /O应当 /O“/O实际/O”/O

例句二:

杨 /nr贵国/n在/p彭州市 /ns隆丰镇 /ns巩固村 /ns农家 /n庭院 /n为 / p村民 / n表演 / vn。 / w

基于CRF的识别结果:

杨 /O贵国 /O在 /O彭州市 /LOC-S隆丰镇 /LOC-S巩固村 /ORG-I农家 /ORG-I庭院 /O为/O村民/O表演/O。 /O

正确的标注序列:

杨 /O贵国 /O在 /O彭州市 /LOC-S隆丰镇 /LOC-S巩固村 /LOC-S农家 /O庭院/O为 /O村民/O表演/O。 /O

例句三:

冯向杰/nr中国/ns画家 /n代表团/n下榻 /v在 /p贝尔格莱德 /ns市中心 /s的/u哈西诺/nr饭店 /n。 /w

基于CRF的识别结果:

冯向杰 /O中国/LOC-S画家/O代表团 /O下榻/O在/O贝尔格莱德 /LOC-S市中心 /O的 /O哈西诺/O饭店/O。 /O

正确的标注序列:

冯向杰 /O中国/LOC-S画家/O代表团 /O下榻/O在/O贝尔格莱德 /LOC-S市中心 /O的 /O哈西诺/LOC-S饭店/LOC-E。 /O

分析之所以出现未识别的原因是数据稀疏或者特征不明显引起的,比如在例句一中提到的“巴以”,其实是“巴勒斯坦”和“以色列”的指代,但由于训练中并没有出现这样的情况,所以在测试中“巴以”并未被当成地名“巴勒斯坦”和“以色列”进行识别,而例子三中虽然是很明显的地名组合,但是训练语料中并未出现如“巩固村”这样的地名,所以在测试中无法识别出来,而一些随意的地名,因为所设计的词汇很少使用,更容易出现数据稀疏的情况,在使用CRF识别的过程中,这种地名很难被识别出来。

针对以上的未识别情况,设计人工规则对地名识别结果修正。首先构造地名字典,这个地名字典包括各国国家名、各国重要城市名、各国名胜风景区、山脉、河流、全国各级行政区划、重要城市简称等,以及地名前后搭配词( Conj Word) 。然后定义候选带召回含地名的字串: WfSLOCWh,其中SLOC= S1S2…Sn表示候选地名,Si表示候选地名中的单词,Wf表示地名前搭配词,Wh表示地名的后搭配词,首先需要从需要进行规则修正的句子中找到这样的token,然后利用下面定义的规则判断SLOC。并设计了如下定义,地名( LOC) 、地名缩写即单字地名( Single Loc) 、前后搭配词( Conj Word) 、地名后缀( LOC-E) 、不常用单字 ( Single-wordt) 。∈表示“属于”,‖表示“或”,&& 表示“和”。

规则的意义在于: 当规则这个命题为真的时候,就判定满足这个规则的词为地理命名,例如“Si∈Single Loc”就表示命题———候选地名中的单词( Si) 属于某个地名缩写( Single Loc) 。

设计规则如下:

规则一:

本规则主要针对上述例子中的例子一,其中的“拯救”和“谈判”分别是地名的前后搭配词,而“巴以”分别是“巴勒斯坦”和“以色列”这两个国家的缩写,依靠字典,确定“巴以”分别是“巴勒斯坦”和“以色列”这两个国家的缩写,然后通过前后搭配词确定了地名的边界,最后识别“巴以”为地名;

规则二:

在描述一条地址的时候,经常是多个地名组合在一起,如“彭州市隆丰镇巩固村”,基于统计的识别方法通常会因为数据稀疏或者整体地址无法落入识别窗口中,而不能正确识别,那么通过构造的地名字典可以确定“彭州市”、“隆丰镇”、“巩固村”是三个地名,而这三个地名在句子中是相邻的,通过这条规则可以确定“彭州市隆丰镇巩固村”是个地址,即地名。

规则三:

这条规则主要针对类似于例子三中的复杂结果地名,如例子中的“哈西诺饭店”,其中“哈希诺”中的三个单字并不常组合在一起使用,而“山脉”又是地名后缀,而“的”是比较常用的用来描述地名的前搭配词,所以可以确定“哈西诺饭店”是一个地名。

2. 4 组织名修正规则

相对于地名来说,组织名的识别不能构造通过外部语义库的地名字典,而地名字典在使用规则对错误样本进行修正的过程中起到很大的作用。使用规则对未识别的组织名进行修正更加困难。

这里首先列举几个基于CRF识别结果中的未识别的组织名的典型例句和经过模型识别后的错误标注序列和正确的标注序列,然后针对这些典型例句错误标注序列进行分析,其中主要要修正的组织名是内部含有地名和常用组织名以及带有称谓以及用字比较随意的组织名。

例句一:

中 /j俄 /j友协/j理事会/n年会 /n在 /p京/j举行 /v

基于CRF的识别结果:

中/O俄/O友协/ORG-I理事会 /ORG-E年会 /O在 /O京 /O举行 /O;

正确的标注序列:

中/ORG-B俄 /ORG-I友协 /ORG-I理事会 /ORG-E年会 /O在 /O京 /O举行/O

例句二:

美军/j太平洋/ns总部/n司令/n普吕厄 /nr,/w美国/ns驻华 /vn大使 /n尚慕杰 /nr等 /u出席/v了 /u签字/vn仪式 /n。 /w

基于CRF的识别结果:

美军/O太平洋 /O总部 /O司令 /O普吕厄 /O,/O美国 /LOC-S驻华 /O大使/O尚慕杰 /O等/O出席/O了/O签字/O仪式/O。/O

正确的标注序列:

美军 /ORG-B太平洋/ORG-I总部/ORG-E司令 /O普吕厄 /O,/O美国 /LOC-S驻华/O大使 /O尚慕杰 /O等/O出席/O了 /O签字 /O仪式 /O。/O

例句三:

中 /j研 /j国际/n医药 /n公司 /n先后 /d为 /v全国 /n 35 /m家/q企业 /n的 /u 40 /m余/m个 /q产品/n进行/v进入/v美国 /ns的/u可行性 /n评定 /vn

基于CRF的识别结果:

中/O研 /O国际/ORG-I医药/ORG-I公司/ORG-E先后 /O为 /O全国 /O 35 /O家/O企业O的 /O 40 /O余 /O个 /O产品 /O进行 /O进入 /O美国/LOC-S的/O可行性 /O评定/O

正确的标注序列:

中研/ORG-B国际/ORG-I医药/ORG-I公司/ORG-E先后/O为 /O全国 /O 35 /O家/O企业O的 /O 40 /O余 /O个 /O产品 /O进行 /O进入 /O美国/LOC-S的/O可行性 /O评定/O

从上述三个典型例句着手,分析未识别组织名内部和外部的特点,研究发现能够识别这些使用CRF模型未识别的组织名。在例子一中,可以很容易发现“中俄”其实是“中国”和“俄国”两个国家的缩写,即组织名的开头部分是地名并且尾部带有后缀“理事会”,所以,可以利用这个特点作为识别组织名的规则; 例子二中,“司令”是个称谓,用来修饰组织名“美军太平洋总部”,可以利用称谓这一特点结合组织名的前搭配词来识别组织名; 例子三中,“中研国际医药公司”中的“中”和“研”是不常用的单字,而且通常不会搭配在一起使用的,而通过前人的分析,组织名通常用字、用词随意,那么可以利用组织名用字用词随意,而且字和词之间不是常用搭配的特点,结合组织名的前后搭配词来抽取句子中的组织名。

首先,构造组织名后缀字典( ORG-E) 、地名字典( LOC) 、组织名前后搭配词( Conj Word) 、常用的组织名( ORG) 、称谓词字典( title) 。然后定义候选组织名字串WfSorgWh,其中SORE=S1S2…Sn表示候选组织名,Si表示候选组织名中的单词或者字,Wf表示组织名前搭配词,Wh表示组织名的后搭配词,首先需要从需要进行规则修正的句子中找到这样的token,然后利用下面定义的规则判断Sorg:

规则一:

这条规则类似“武汉大学”,“微软亚洲研究院”的组织名,这类组织名通常以地名或者常用组织名为组织名的首部,并且以组织名后缀结尾,通过这个特点可以判断Sorg是否为组织名。

规则二:

经常以“单位 + 称谓 + 姓名”的组合形式来介绍一个人,那么可以通过收集一些常用的称谓词,作为机构名的提示词,同时通过组织名内部的一些特点,比如之前提到的规则,来进一步判断称谓前面的词组是否是机构名。

规则三:

对于中文组织名的用词随意这点。比如例子一中的“中际国家医院公司”中的“中际”是不常用的单字,基本不会搭配在一起使用,所以可以认定其是作为机构名的一部分出现的,进一步通过“公司”这个后缀判断是否为机构名,并通过前后搭配词,来确定要抽取的机构名的边界。

3 实验结果

3. 1 实验数据

在进行命名实体试验过程中,首先就需要选择合适的语料和确定试验需要的标注集,并按照标注集对语料进行重新标记。其中,语料指的就是进行模型训练和测试的文本集合; 标注集是定义的数据类型的集合,在本次试验中,即为地理命名实体数据类型的集合。

目前公开的适用于中文命名实体的语料很少,北大富士通标注的1998年一月份《人民日报》语料是当今自然语言领域研究中运用最广泛的语料。此语料库采用的是粗分词的方式,并且进一步进行了词性标注,这样很容易从中获取地理命名实体的标记类型,也很容易按照自己设定的标注集进行转换和统计以及测试。此外,山西大学分词词性标注语料库选择了2002年以来流通量大、传播量高、流通时间较长的文本,集优良的平衡性和通用性为一体; 另外,微软分词语料也是自然语言领域研究使用较多的语料,因为此语料也进行了词性标注。决定在这三者之间选择一个语料库,进行地理命名实体识别的研究和实验。最后,以词性标注的粒度方面考虑,《人民日报》一月份的语料选择了粗分词的方式,而其他两个语料的分词粒度很精确。粗分词的优势是可以挖掘地理命名实体的内部结构,有利于使用标记特征和语义特征,基于此,选择了《人民日报》一月份的语料进行地理命名实体的研究和实验。

本文构造各类字典辅助地理命名实体的识别,其中地理实体内部结构有关的字典包括地名字典、组织名字典、地名后缀字典、组织名后缀字典; 搭配词字典包括,地名前搭配词字典、地名后搭配词字典、组织名前搭配词字典、组织名后搭配词字典,常用单字词字典。主要从1998年一月份《人民日报》中获得,其中地理命名实体内部结构有关的字典构造过程通过遍历筛选 /ns和 / nt提取构成,经过试验,我们一共收集了简单地名2795个,复杂地名578个,地名后缀144个,简单机构名157个,复杂机构名4311个,机构后缀987个。

3. 2 实验平台

本文实验都是在PC机环境下完成的,操作系统是Windows xp,使用条件随机场模型进行训练和测试,采用的是CRF + + 0.58( 一种CRF工具) 。CRF + + 是一个实现了条件随机场模型的工具,大量应用于序列数据的标注和分割,具有良好的通用性,现在已经广泛运用于自然语言处理各个领域的研究和应用中,比如分词、词性标注、命名实体识别、信息抽取等。

3. 3 特征模版

特征模板是根据所选用的特征设计出来的模板,CRF + + 工具会在语料训练的过程中根据不同的特征模板生成不同的特征函数CRF的特征模板共有两种类型,这里选择适合地理命名识别的Unigram template( 以字母U开头) 。以特征模板U01: x( 0,0) 为例,其产生的特征函数集合如下:

其中output值得到的是标注集所定义的标注类型,feature指的是根据模板扩展出来的独立串的数目,那么一个特征模板所能产生的特征函数个数总数为L×N,L是标注类型的总数,在本文中L为9,N表示独立串的总数。

3. 4 特征选择

通过总结前人的研究成果,考虑到识别效果和系统性能,本文选择原子特征和组合特征以及标记特征作为系统训练的特征集合。

原子特征:

原子特征可以描述当前词和前后连续两个词的词性和词形,能够表达有限的上下文信息。

例如,当前词为“武汉”且标注为LOC-S,那么其生成的特征可以用如下的二元特征函数表示:

所要表达的意思是当前词为“武汉”而且被标注为LOC-S,则返回1,否则返回0。

原子特征模板,如下:

组合特征:

通过搭配词性和词形以及组合多词等手段,构造复合的、非线性特征,即为组合特征。组合特征的二值函数如下,以句子“我去武汉”为例:

所要表达的意思是当前词的前一个词的词性是动词而且当前词词性为名词且被标注为LOC-S,则返回1,否则返回0。

组合特征模板如下:

标记特征:

实体内部有嵌套的情况,使用了标记特征模板可以有效地解决此类实体的识别。标记特征模板的二元函数如下,以组织名“谷歌中国研究院”为例:

表达的意思是当前词的前两个词的标记为组织名或其组成部分,前一个词标记为地名,当前词是研究院,并且被标记为组织名的结尾。

标记特征模板如下:

3. 5 评测指标

正确率、召回率和F值是评测中文命名实体识别系统性能的指标,也是本文采取的评测指标,定义如下:

( 1) 正确率P:

其中Nc表示识别正确地理命名实体的总个数,表示识别出来的地理名实体的总个数,准确率即为前者与后者的比值。

( 2) 召回率R:

其中Nc表示识别正确的地理命名实体的总个数,N表示测试语料中地理名实体的总个数,召回率即为前者与后者的比值。

( 3) F 值:

F值是综合了争取率和召回率两个值进行评估的办法,同时考虑了P和R两个值,其中是一个权重,决定在比较P和R的时候,更加侧重P还是更加侧重R,通常设定为1、2或者1 /2。在本文中,我们取值为1,即对两个指标都同样重视。

3. 6 特征验证

实验中分别选取1998年1月份《人民日报》语料中的50000句作为训练语料,不重叠的50 000句语料作为测试语料。其中,设计了3组实验对训练语料进行训练,然后对测试语料进行测试,这3组试验使用不同的特征模板对训练语料进行训练,分别为: 第一组实验是基于原子特征模板的; 第二组实验是在第一组实验的基础上加入了组合特征模板; 第三组实验在第二组实验的基础上计入了标记特征模板。这样设计的目的是,通过识别效果对比,来验证各类特征对于识别效果的影响和变化趋势。

实验一:

实验一是基于原子特征模板的识别模板,其结果如表3所示。

从实验结果可以看出,仅仅使用原子特征的识别效果并不好。地名的整体F值达到了79. 67% ,而总体组织名的F值只有54. 26% 。由于地名和组织名的内部结构比较复杂,用词也很随意,而且内部通常出现嵌套,而组织名比地名更复杂,所以组织名的识别效果比地名要差。仅仅使用词形和词性的原子特征进行地理命名实体的识别,效果并不好,要提高识别效果,需要加入更充分的上下文信息。在实验二加入了组合特征进行识别。

实验二:

在第一组实验的基础上加入了组合特征模板,实验结果如表4所示。

从表4的实验结果可以看出,加入了组合特征模板后,地名和组织名的识别效果都有了很大的提高,其中地名的整体识别F值提高了3. 64% ,而组织名整体识别的F值提高了13. 90% 。这是因为相比于单纯的原子特征,组合特征具有更加丰富的上下文信息,并且经过模型训练,能够有效地将这些信息组合起来,但是识别效果还是不理想,尤其是组织名的识别F值只有68. 17% 。主要原因是组织名通常是包含多个单词的,其内部更加复杂,而考虑到组织名内部通常嵌套实体,比如地名和人名,所以使用标记特征可以提高对复杂组织名的识别效果。

实验三:

在第二组实验的基础上计入了标记特征模板,实验结果如表5所示。

通过实验结果可以看出,加入了标记特征模板后,识别效果确实得到了提 高。其中,地名的总 体识别F值提高到 了89. 54% ,而组织名的总体识别F值更是提高到了82. 52% 。

为了更好地比较这三组实验的实验效果,其中横坐标中实验一、实验二和实验三分别表示加入原子特征的实验、加入原子特征和组合特征的实验、加入原子特征和组合特征以及标记特征的实验通过实验效果图进行更加直观地描述,如图3和图4所示。

通过这三组实验,可以得出结论,我们选取的原子特征、组合特征、标记特征在识别地理命名实体上是有效的。同时,我们还注意到,识别效果并不非常理想,所以我们对错误样本进行了分析和总结,发现可以通过一些人工启发式的规则识别测试样本运用统计方式未识别出来的实体。为了进行进一步的改进,加入文中提出的规则从而进行命名实体识别。

3. 7 基于 CRF 和规则的实验分析

本文选择的是unigram template作为训练用的特征模板。特征选择方法主要有两种: 增量法和阈值法。本文选择了原子特征和组合特征以及标记特征作为系统训练的特征集合。最终得出结果如表6所示。

通过设计三组实验,其中第一组实验是基于原子特征的,识别结果为地名F值78. 05% ,组织名达到了54. 27% ,第二组实验加入了组合特征,地名F值达到了83. 91% ,组织名达到了68. 17% ; 第三组实验进一步加入了标记特征,地名F值达到了89. 54% ,组织名达到了82. 52% 。通过三组实验结果,验证了选择的特征的有效性,最终,基于CRF的地名识别的F值达到了89. 54% ,组织名达到了82. 52% 。

通过表6可以看出,在使用规则对基于CRF统计模型识别的结果进行修正后,识别效果有了一定的提高,其中地名F值提高了2. 07% ,组织名F值提高了3. 22% 。用直方图的形式来直观地显示识别效果的提高,如图5所示。

4 结 语

命名实体识别 篇3

命名实体的自动获取是指从非结构化或半结构化文档中提取出命名实体实例并将其正确归类的过程。命名实体类主要包括人名、地名、机构名等类型,命名实体获取是构建大规模命名实体库的基础工作,对命名实体识别、信息抽取、语义资源建设等工作具有重要价值。

目前命名实体获取方法有两大类:

(1) 基于文本模式的命名实体获取[1] 这类方法的基本思路是利用一组种子实例,在未标注的文本中进行匹配,然后统计分析匹配得到的文本模式特征,建立实体获取的文本模式库,并利用模式库中的模板获取新的实体实例。这类方法的优点是能够有效利用大规模的未标注语料,降低人工标注难度,但文本模式构建受限于种子实例的语种及领域,当语种或领域发生变化后,预先建立的文本模式必须做出相应改变,因此在多语种和跨领域的命名实体获取中的效果较差,同时该方法构建文本模式的过程较为复杂,需要大量时间,成本较高[2]。

(2) 基于语义知识库的命名实体获取[2,3] 这类方法的基本思路是利用特定语义知识库中的语义知识资源及内部结构信息来获取命名实体。文献[2]利用WordNet作为语义资源库并使用一些规则来获取地名、人名、机构名等实体名信息,这种方法在新闻语料库上获得了较好的效果。主要不足是由于Wordnet中缺乏领域术语词条,因此对于语料中的专业领域术语的识别获取能力较差。文献[4]使用从领域医学领域知识库UMLS中获取的专业领域词典在医学语料库中获取实体样例,由于使用了专业领域词典,因此对本领域的实体识别效果较好,但是跨领域的识别效果就受到了较大影响。

随着维基百科(Wikipedia)的迅速发展[5],这些方法在语言处理领域也得到广泛应用,并有效支持了信息抽取、自动问答、文本分类等实际处理任务。文献[6,7]利用维基百科开展命名实体识别工作,文献[8]利用维基百科开展人名的消歧工作,文献[9]利用维基百科类别信息对文本进行表征研究,并应用到文本分类中,获得了较好效果,文献[10]开展了基于维基百科的人名简历信息抽取工作。文献[11]利用维基百科开展自动获取领域术语的工作,其工作的主要思路是:首先对维基百科条目内容的第一句话进行分析,获取其中的名词短语,并假定该短语包含了该条目所属类别的信息,依此建立条目与类别的术语词典。实验表明,该方法对于抽取领域术语具有一定的效果,但是由于这类工作没有更多地利用条目内容及维基百科内部结构等信息,因此获取效果有较大局限。文献[12]提出了一种基于维基百科的术语获取方法,该方法首先利用已有的领域知识资源,获取一组种子词条,将种子词条与维基百科条目进行比对,获取二者共有的条目,并记录下这些条目的类别信息,然后获取这些条目内容的外向链接对应的条目,将这些条目作为候选条目,并获取候选条目的类别信息,如果候选条目的类别与种子条目的类别有重叠,那么就认为该候选条目与种子条目属于同一类术语并将其提取出来。该方法与本文提到的方法有相似之处,都利用了已有的语义知识资源以及维基百科的内部结构特征。但该方法在确定候选条目与种子条目的类别关系时采用的方法过于简单,由于大部分维基百科条目所属的类不只一个,并且类与类之间的关系也较为复杂,不同类对应的条目数量也不相同,因此只考察两个条目所属的类是否有重合来判断候选条目与种子条目的关系过于粗糙。同时,由于种子条目的数量有限以及条目内容中的外向链接数目也有限,因此该方法获得的术语规模有较大局限。

针对目前研究中存在问题,本文提出维基百科类的隶属度概念,通过计算维基百科类与特定命名实体类间的隶属度,在维基百科类与命名实体类之间建立关联关系,并选择隶属度较高的维基百科类作为扩展类,将这些类中的条目作为命名实体的候选条目,得到命名实体实例的候选集,之后采用通用词典匹配、关键词过滤等方法对候选实例集进行去噪处理,得到最终的命名实体实例集。从总体上看,本文使用的方法属于上文介绍的第二类方法,即基于语义知识库的命名实体实例获取方法。

1 相关概念及定义

为了全文描述的方便,将文中使用的主要概念定义如下。

(1) 维基百科类

在维基百科条目中,由条目编写者为条目添加的类别信息,该信息在维基百科的打包数据(可从www.download.wikipedia.org获得)中以[[Category:***]]的格式给出,其中***是具体类别,本文中将维基百科类的集合表示为L,具体维基百科类的成员表示为l。类l包含的维基百科条目的集合表示为m(l),m(l)=(x1,x2,…,xm(l))。

(2) 维基百科条目

是指维基百科的具体词条,每个词条都对应一个唯一的名称,每个条目都属于一个或多个维基百科类,在维基百科的打包数据中以<title>***</title>的格式给出,其中***是条目的具体名称,本文将维基百科条目集合表示为X,具体条目表示为x,xX。同时,x所属的维基百科类的集合表示为k(x),k(x)=(l1,l2,…,lk(x))。

(3) 命名实体类

本文命名实体类指人名、地名、机构名三类,命名实体类的集合表示为E,具体的命名实体类表示为e,eE,e包含的命名实体实例表示为n(e),n(e)=(g1,g2,…,gn(e))。

(4) 命名实体实例

是指属于命名实体类的具体成员,实例集合表示为G,具体实例表示为g

(5) 种子实例

是指从已有的命名实体资源中选取的命名实体实例,例如从已有的人名表中选择部分或全部条目作为种子实例,这些实例的类别已经确定,因此可以作为命名实体的先验知识使用。种子实例的集合表示为S,种子实例表示为s

2 隶属度及计算方法

隶属度用来表示维基百科类l与命名实体类e之间的关联程度,具体表示为B=f(l,e),其中B表示隶属度,f是计算le之间隶属度的方法,(l,e)表示l隶属于e

隶属可以理解为维基百科类隶属于命名实体类的可能性。例如,在维基百科中存在类“American film actors”,显然该类隶属于人名类的可能性很大,因为该类中的成员基本都是美国电影演员;而类“Paramount films”隶属于人名类的可能性就要小很多,因为该类中的成员基本都是某个电影公司出品的电影,但在该类中也并非完全不可能出现人名,例如当以以人名命名电影名时,这时该类中就可能出现人名,例如“Bob Roberts”是一部由Paramount公司出品的电影,但同时也是一个人名。

本文提出隶属度的概念及计算方法,目的是利用隶属度将不同维基百科类进行区分,类似“American film actors”的类有较高的人名类隶属度,而类似“Paramount films”的人名类隶属度则较低,进而获取隶属于特定命名实体类的维基百科类,为获取更大规模的命名实体实例做准备。下面给出隶属度的具体定义:

已知维基百科词条集合X。对于X中的每个x,维基百科中已给定x所属的维基百科类的集合k(x)。

维基百科类的全集合L定义为:

L=xXk(x)(1)

于是对L中的每个l,可以找出具有类l的词条的集合m(l)⊂X:

m(l)={xX | lk(x)} (2)

给定命名实体类e的初始实例集合S(e),定义e的种子实例集合为Sj(e):

Sj(e)=S(e)∩X (3)

属于l类的e种子实例集合为C(l,e):

C(l,e)= Sj(e)∩ m(l) (4)

维基百科类l对于命名实体类e的隶属度B(l,e)可以按以下3种方式定义:

B1(l,e)=|C(l,e)| (5)

B2(l,e)=|C(l,e)||m(l)|(6)

B3(l,e)=1|m(l)|xC(l,e)1|k(x)|(7)

• 基于隶属度的命名实体自动获取算法

基于隶属度的命名实体自动获取算法主要分为匹配、计算、筛选、扩展、去噪五个步骤:

输入:维基百科条目和类以及命名实体的种子实例

输出:扩充后的命名实体实例集

第一步 匹配

(1) 根据式(1)求维基百科类的全集合L

(2) 根据式(2)对L中每个维基百科类l,求具有类l的词条的集合m(l)。

(3) 根据式(3),对命名实体类e,由给定的初始实例集合S(e)求种子实例集合Sj(e)。

(4) 根据式(4),对命名实体类eL中每个维基百科类l,求属于l类的e种子实例集合C(l,e)。

第二步 计算

(5) 根据式(5)-式(7),对每个维基百科类l和命名实体类e,求隶属度Bi(l,e),i=1,2,3。

第三步 筛选

(6) 采用隶属度式Bi(l,e)(i=1,2,3),并给定隶属度下限阈值ai,求命名实体类e的相关维基百科类集合:

Ri(e):Ri(e)={lL | Bi(l,e)>ai} (8)

第四步 扩展

(7) 求命名实体类e的扩充实例集合:

Ei(e):Ei(e)=lRi(e)m(l)(9)

第五步 去噪

(8) 给定通用词表D用以除去Ei(e)中的非命名实体,命名实体类e的最终实例集合为:

Si×(e)= Ei(e)-D (10)

其中减号表示集合求差。

在匹配部分,利用种子实例逐一匹配维基百科中的条目,如果二者匹配成功,则将种子实例保留;计算部分是根据三种不同的维基百科类隶属度计算方法,分别计算种子实例所属维基百科类隶属于特定命名实体类的隶属度的值,然后对其进行排序;筛选是设定隶属度的阈值(或者排位阈值),筛选出高于阈值的维基百科类,并将这些类作为命名实体集扩展的类;扩展是利用筛选得到的维基百科类,获取该类中的非种子实例,并将获取到的实例加入到候选命名实体集中;去噪阶段主要是利用通用词表,将命名实体候选集中与通用词条重叠的条目去除,进一步减少命名实体候选集中的噪音。经过以上各步,获取得到扩展的命名实体集。

3 实验设计

3.1 基本数据

本文使用英语维基百科作为实验数据,该数据由维基百科(www.wikipedia.com)免费提供,版本是2010年2月版,共有条目3466043条,是所有语种中条目最多的。人名类命名实体资源来自DBpedia提供的人物列表,该列表由DBpedia基于Wikipedia抽取生成。之所以选择该数据资源一方面是由于该数据来自Wikipedia,这样能够更好地进行匹配,获得更多的种子实例;另外一方面是因为DBpedia也是从Wikipedia中抽取出的命名实体实例,因此可以将本实验中的结果与DBpedia进行分析比较;地名类命名实体也是从DBpedia提供的人名列表中提取获得,提取方法是将人名列表中的人物出生地、逝世地等地名字段中的名称提取出来,形成地名种子实例;机构名资源库使用了机构名词典,该词典给出了一些国际组织名称。通用词典使用《牛津英汉词典》(1998年版)中的英文词条,并保留了词条的大小写信息,由于该词典中只收录一般词汇,而未收录人名、地名都专门词汇,因此较适合用于命名实体的去噪处理。

表1给出了不同命名实体类的初始实例及与维基百科条目匹配成功的种子实例数统计。

“初始实例数”是从已有命名实体资源中提取出的各类命名实体的实例数,这些实例与维基百科中的条目进行匹配,匹配成功的实例作为“种子实例”。

从上表的数据看,人名、地名、机构名都只有部分实例匹配成功,这主要是因为匹配采用的字符串的完全匹配方法,因此某些在形式存在差别但同指同一个对象的实例没有匹配成功,例如在维基百科词条中存在人名Alexander McCormick, Jr.,但是由于DBpedia的对应条目表示为Alexander McCormick Jr.,因此尽管二者都指同一个人,但是由于书写上的细微差别而造成匹配不成功。再例如Brooklyn, NY ; Brooklyn, New York; Brooklyn, New York City; Brooklyn, New York City, New York等都是指同一个地名,该地名有超过10种不同的书写形式,因此会造成很多实例匹配不成功。此外,由于地名实例来源于DBpedia人物列表中的出生地点、死亡地点等字段,而这些字段中包含的很多地点在维基百科中还没有对应条目,因此也会造成匹配不成功。尽管有部分实体实例没有匹配成功,然而只要获得一定数量的命名实体实例就可以构成种子实例集合,开展隶属度计算及命名实体的自动获取,没有必要一定要所有或绝大部分的实体实例都匹配成功。

3.2 数据处理

为了更好地对维基百科数据进行处理和挖掘,我们开发了一些针对维基百科文本的处理工具,用于数据的加工整理。

首先,将维基百科的压缩数据进行分割,目的是将维基百科按照条目分为不同文件并进行存储,这样做的好处是处理时能够在单个条目内部做较复杂分析,而不会与其他条目发生冲突或干扰。其次,是根据维基百科文件中的XML标记,提取出条目名称、条目所属的维基百科类以及条目对应的主要语种的条目名称(主要是中、日、韩、俄等语种),提取后的结果分别保存为以条目和类别为主键的词典形式。以条目名称为主键的词典的格式是:

维基百科条目t条目对应的类别1;条目对应的类别2;……; 条目对应的类别n

条目与类别间以制表符分割开,而各个类别之间以分号分割开。例如:

GongLi 1965 births; Best Actress HKFA; Chinese Singaporeans; Chinese actors; Immigrants to Singapore; Living people; People from Jinan; People from Shenyang; Singaporean actors

其中,Gong Li是条目名称,其后的部分是该条目所属的类,类与类之间用分号分割。

以类别为主键的词典的格式是:

维基百科类别t类别包含的词条1; 类别包含的词条2;……; 类别包含的词条m

类别与条目间以制表符分割开,而各个条目之间以分号分割开。例如:

Chinese Singaporeans Felicia Chin;Goh Tat Chuan;Li Jiawei;Lim Chin Siong;Ong Keng Yong;Michelle Chong;Gong Li;Jing Junhong…

以两种不同形式保存数据的目的是便于后面的隶属度计算。

3.3 实验设计

根据不同的隶属度计算方法和隶属度阈值的选取,我们分别进行了获取实验,并采用抽取检验的方法对自动获取的结果进行评估。评估的主要指标是每百个自动获取的实例中,存在多少非目标实例,并用获取准确率衡量:

准确率=

从理论上看,还应该评价获取实例数与应获取总实例数之间的关系,即召回率,理想状态上能够尽可能准确且全面地获取实例。但是由于获取对象维基百科中到底存在多少命名实体条目是未知的,因此难以判断出获取实例占应获取实例的比例。但是,能够将获取得到的实例与种子实例数之间进行比较,如果能够自动获得比种子实例数尽可能多的命名实体实例,则能在一定程度上说明方法的有效性。该评价指标可以表示为扩充率:

扩充率=(×)×2+

为了综合考虑获取准确率和扩充率对于获取效果的影响,借鉴信息检索中的F值评价计算方法,提出用于命名实体自动获取的F值计算公式:

F=(×)×2+

由于人名、地名、机构名的自动获取方法基本相同,因此本文只给出人名自动获取的实验结果和相关分析。

3.4 实验结果

利用三种隶属度计算方法,进行人名自动获取实验,当不设定任何筛选条件情况下,共获得维基百科类32763个,人名实例候选数241411个。表2给出了三种方法的具体计算结果。由于不同计算方法得到的结果数量级不同,不便于比较,因此为了更好比较,分别按照计算值对不同方法得到的结果进行了降序排序,即结果值高的被排在前,这样就可通过排序位置进行直观比较。表2中给出的结果按照方法3的隶属度计算值得到的排名前5位、中间5位(15000--15004)和排名后5位的相关结果。

表中的B1、B2、B3分别是方法1-3计算得到的隶属度的值, BR1、BR2、BR3分别是方法1-3计算得到的值按照降序排序后得到的对应位序,“总实例数”是维基百科类所属的全部条目数,扩充数是指维基百科类中除了种子实例外的其他实例的数目,扩充率是扩充数与总实例数的比值。在第一列中,带有阴影的条目是不属于人名类的条目。

从表2的数据可以发现,在排名前10及中间10位的维基百科类中,所有的维基百科类都是典型的人名类,可以较为可靠地依据这些类来扩展人名的实例,而在排名最后10位的类中,有8类都不是人名类,这说明隶属度能够有效地将隶属于人名类的维基百科类放在靠前位置,而将可能性小的类放在后部,从而便于选择可靠的维基百科类来扩展命名实体实例。

由于自动获取的维基百科类超过30000类,逐一分析检查的难度较大,因此,我们分别从计算结果排序表中选择不同排序区间的6组结果进行检查,分别是排在1-200位,5001-5200位,10001-10200位,15001—15200位,20001—20200位,以及排在最后200位的样例,检查中将明显不属于人名类的维基百科类挑选出来,进而统计各个区间的获取准确率,从而对整个获取结果的准确率进行评判。

表3给出了基于隶属度计算方法3的不同区间的获取准确率、扩充率及F值的评价结果。

从表3给出的抽样评价结果可以看出,在排名前15000的样例中,自动获取的人名候选类具有很高的准确率,基本在99%作用,而20000位以后,准确率逐渐下降,排名最后的200个类的准确率已经低于60%;而扩充率则在前5000位有一个降低外,其后随着排名向后,扩充率也不断升高,最后200位的扩充率最高,这主要是因为排位靠后的类中种子实例的个数少,同时类的总条目数较多造成的;F值则在最初5000位时有一个下降,其后升高,而到了25000位时受到准确率降低的影响,开始下降。F值能够较为综合地反映出自动获取的效果,因此也可以作为确定筛选阈值的一个参考指标。

根据F值和具体需要,本实验中使用隶属度的位序作为阈值进行筛选,当然也可以根据需要设定具体的隶属度值作为阈值筛选。根据上表的统计结果,我们将阈值设定为位序在15000以前的维基百科类作为人名扩展的类。之所以选择15000而没有选择20000作为阈值,主要考虑要尽可能保证高的准确率,而扩充率可以稍微低一些,这样可以在一定获取规模的前提下,保证扩充的人名中噪音较少。当然,也可以放宽阈值的选择,然后使用一些有效的过滤方法对获取结果中的噪音进行去除。

在去噪阶段,本文使用了通用词典,将通用词典中的词条与获取的人名候选集进行比较,将二者重合的词条去除。由于大部分人名都是由不只一个词构成,而通用词典收录的都是单个词,因此该步骤对人名获取的作用不太明显,但如果构建人名部件库时,由于各个部件都是单个词,且有些人名条目中含有一些通用词汇,因此去噪环节的作用就比较显著。

经过以上步骤,最终获得了扩充的命名实体实例表,其规模如表4所示。

表4中的“扩充实例数”是指利用本文提出的方法,从维基百科中获取得到的各个命名实体类的实例数,“扩充比例”是扩充实例数与种子实例数的比值。从上表可以看出,人名、地名扩充后的实例数,较种子实例数都增加了10倍以上,机构名实例数也增加了7倍多,这说明本方法在扩充命名实体实例方面具有较好的效果。其中机构名扩充的比例和数目都较少,这主要是因为给定的种子实例数较少,因此获得的相关维基百科类受限,今后可以通过扩充机构名的种子规模来提高这部分实例的获取规模。

同时,我们对实验中获取的错误实例进行了初步总结,造成错误主要有以下原因:

(1) 有些条目的类就是其自身,例如Tsutomu Nihei所属的类只有Tsutomu Nihei这一类,当这些条目是命名实体的种子实例时,就会将这些条目自身也作为候选类,从而对命名实体类的获取造成干扰。这类条目的一个普遍特点是类内的条目数很少,往往只有其自身1条,因此可以采取控制类内条目数的方法过滤掉这类条目,同时也可以在数据整理过程中将类与条目相同的记录去除掉。

(2) 类的内容较为混杂,造成某些命名实体实例被包含在类中。例如“Athenian democracy”类中包括“Thrasybulus”,该条目也被当作人名使用,因此造成Athenian democracy也被作为人名的候选类。考察该类包含的其他条目可以发现,“Athenian law court (classical period); Boule (ancient Greece); Constitution of the Athenians”等都不属于人名类。目前这类错误可以通过在隶属度计算中引入类权重和实例权重得到基本解决。

(3) 人名被用作其他实体名称,例如,前文提到的“Bob Roberts”被用作电影名,因此会将电影类当作人名类的候选类,这也会对确定人名候选类造成不利影响。其他还有人名被当作学校名、书名、文章题目名、品牌名等,这类现象都对人名类的确定产生不利影响。利用隶属度的计算可以解决部分问题,尤其排名靠前的候选类中,会将电影名、学校名等基本排除在外,但是排名越靠后,这类问题的影响越来越大,因此需要寻找更多的约束条件来解决这类问题。

4 结 语

本文提出隶属度及相关计算方法,基于该方法给出了一种自动从维基百科中获取命名实体实例的方法,该方法能够有效利用维基百科条目的类别信息,并以种子实例为指导,确定与命名实体类隶属度高的维基百科类,进而通过类来扩充命名实体的实例集,从实验结果看,该方法在扩充实例集上具有较高的准确率和扩充率。

该方法的优点在于:不仅能够扩充已有的命名实体资源,更重要的是该方法利用维基百科作为实体获取来源,从而使得获取的命名实体实例不仅只有词条信息,并且还带有维基百科自身的语义知识信息,例如每一个扩展的命名实体实例都带有类别属性,而类别属性可以在命名实体之间,以及命名实体与其所属的类之间建立起联系,从而为文本内容的表征与分析提供丰富的知识支持,更好地支持后续的处理工作。同时,由于维基百科具有多语种的特点,因此该方法并不仅局限于英语命名实体的获取,而是可以很容易地扩展到其他语种,这对建立多语种的命名实体资源,尤其是为那些非通用语种建立命名实体资源有着重要意义。而且,本文提出的隶属度计算方法不仅可以用于命名实体实例的自动获取,还可以较容易地扩展到领域术语的自动获取等任务,这对于构建领域术语知识库具有一定的指导意义。

本文使用的方法还存在一些需要改进的地方,例如隶属度排名靠后的类中仍然包含不少命名实体的典型类,但是当设定阈值后,这部分排位靠后的类就被筛选掉了,造成了扩充率的降低。为了解决该问题,下一步准备从命名实体类的语言特征入手,构建特定命名实体类的语言特征知识,利用语言特征从排名靠后的维基类中挑选出命名实体类,从而减少典型维基百科类的遗漏,进一步提高命名实体的扩充率。

摘要:利用维基百科(Wikipedia)和已有命名实体资源,提出维基百科类的隶属度计算方法,通过匹配、计算、过滤、扩展、去噪五个步骤构建出具有较高质量和较大规模的命名实体实例集。在英语维基百科数据上进行实验,结果显示,基于隶属度方法自动获取的人名实例规模较DBpedia抽取出的人名实例规模高出近10倍,通过对不同隶属度区间的抽取实例进行人工检验,发现抽取出的前15000个维基百科类的准确率达到99%左右,能够有效支持命名实体类实例的扩充。

关键词:命名实体,自动获取,维基百科,隶属度

参考文献

[1]Partha Pratim Talukdar,Thorsten Brants,Mark Liberman,et al.AContext Pattern Induction Method for Named Entity Extraction[C]//Proceedings of CoNLL-2006,2006:141-148.

[2]Bernardo Magnini,Matto Negri,Roberto Prevete,et al.A WordNet-BasedApproach to Named Entity Recognition[C]//Proceedings of COLING-2002 on SEMANET:building and using semantic networks,2002:1-7.

[3]Antonio Toral,Rafael Mu?oz.A Proposal to Automatically Build andMaintain Gazetteers for Named Entity Recognition by using Wikipedia[C]//Proceedings of Workshop on New Text,11th Conference of theEuropean Chapter of the Association for Computational Linguistics,2006:102-109.

[4]Angus Roberts,Robert Gaizauskas,Mark Hepple,et al.CombiningTerminology Resources and Statistical Methods for Entity Recognition:an Evaluation[C]//Proceedings of LREC2008,2008.

[5]Jim Giles.Internet Encyclopedias Go Head to Head[J].Nature,2005:438,900-901.

[6]Dominic Balasuriya,Nicky Ringland,Joel Nothman,et al.Named Entity Recognition in Wikipedia[C]//Proceedings of the2009Workshop on the People’s Web Meets NLP,ACL-IJCNLP2009,2009:10-18.

[7]Jun’ichi Kazama,Kentaro Torisawa.Exploting Wikipedia as External Knowledge for Named Entity Recognition[C]//Proceedings of EMNLP-2007and Computational Natural Language Learning2007,2007:698-707.

[8]Razva Bunescu,Marius Pasca.Using Encyclopedic Knowledge for Named Entity Disambiguation[C]//Proceedings of EACL2006,2006.

[9]王锦,王会珍,等.基于维基百科类别的文本特征表示[J].中文信息学报,2011,25(2):27-31.

[10]王全剑,李芳.基于Wikipedia的人名简历信息抽取[J].计算机应用与软件,2011,28(7):170-174.

[11]Zhang Ziqi,JoséIria.A Novel Approach to Automatic Gazetteer Gen-eration using Wikipedia[C]//Proceedings of the2009Workshop on the People’s Web Meets NLP,ACL-IJCNLP2009,2009:1-9.

上一篇:阿尔茨海默下一篇:语文教学中的感恩教育