最大熵和条件随机场模型相融合的藏文人名识别
2014-02-27加羊吉李亚超宗成庆于洪志
加羊吉,李亚超,宗成庆,于洪志
(1. 西北民族大学 中国民族语言文字信息技术重点实验室,甘肃 兰州 730030;2. 中国科学院 自动化研究所 模式识别国家重点实验室,北京 100190)
1 引言
命名实体识别是自然语言处理领域研究的基础问题,是信息检索、机器翻译、问答系统等应用系统的基础,其主要任务是识别文本中的人名、地名、组织机构名、时间表达式和数量表达式等实体名称。命名实体识别有较大的难度,其识别效果会直接影响到分词的准确率和相关系统的性能。人名是命名实体中的一种,也是藏文命名实体中识别较困难的一种。本文介绍一种藏文人名识别的新方法。
与汉语人名不同的是,藏文人名与上下文构成词的可能性较小,但是,普通词作为人名用词的现象非常严重。我们通过分析藏文语料发现,藏文人名用词和上下文用词较为广泛,但是仍有规律可循。本文提到的藏文人名包括藏族人名和译名(主要包括汉族人名和音译名以及外国人名的音译名)。
藏文人名识别的主要困难可以归纳为如下几点。
1) 藏文文本中的每个音节之间以音节点分开,词与词之间没有间隔或其他边界标识,因此,做人名识别工作之前,首先需要对语料进行分词。
2) 藏文人名本身没有明显的形态特征,与英语等西方语言不同,无法根据首字母大写等特征进行区分。
5) 缺乏人名词典等相关资源。
目前人名识别的方法粗略地讲主要有基于规则的方法和基于统计的方法,国内外很多学者主要针对中文和英文等大语种中的人名识别问题做了大量工作。罗智勇等[2]从10万条人名库、2亿字的真实语料库中将姓名用字分了9类,并总结了21条识别规则。郑家恒[3]等在大规模语料基础上提取和分析了中文姓氏和名字用字的使用频率,从而研究中文姓名识别的评价函数。最近几年命名实体识别方法研究逐渐从规则方法转向机器学习方法[4],李中国等[5]先利用边界模板识别出可能的人名,然后应用上下文局部统计量及启发式规则对识别结果进行边界校正。张华平等[6]采取Viterbi算法对词进行角色标注,提出了一种基于角色标注的中国人名自动识别方法。张素香等[7]利用人名的外表特征和内部颗粒特征,提出了基于条件随机场的中国人名识别。毛婷婷等[8]提出了一种支持向量机(SVM)和概率统计模型相结合的中国人名自动识别方法。另外,还有最大熵和规则相结合的方法研究中文姓名识别[9-10],该方法得到了很高的召回率。
有关藏族人名的起名规律,尕藏卓玛[11]做出了比较全面的分析,并较深入地探讨了藏族人名的文化意义。罗智勇[12]等基于人名实例和语料库,统计分析了人名用字特征及命名规则,实现了藏族人名汉译名自动识别系统。
目前已有的方法[12]在中文语料中研究藏族人名,统计了“才”、“日”、“加”等人名高频单字,最后提出一种基于可信度的藏族人名识别模型,并证实了藏族人名识别模块对中文分词系统的贡献。我们认为,藏文人名从结构上看,它的构成单位是词,包括单音节词和双音节词。另外,藏文人名的边界信息较丰富,而且较有规律可循。因此,我们以人名用词特征、边界信息为基础研究藏文人名识别方法。
本文其余部分按如下方式组织: 第2节介绍藏文人名的构成特点;第3节介绍最大熵和条件随机场相融合的藏文人名识别;第4节为实验结果及错误分析;第5节为结论与展望。
2 藏文人名构成特点
2.1 起名规律
人名是区别人与人之间的一种符号,它具有丰富的语言、文化现象。藏族人名的起名方式较有规律,大致有[11]:
我们对《西藏日报》2007年1月的语料中出现的所有藏族人名进行了分析,其中91%的人名是以前三种方式起名的。
2.2 用词特征
1) 藏文人名的构成单位是词,包括单音节词和双音节词。人名用词集合比较分散,但音节数较有规律,多数以双音节、三音节和四音节为主。在《西藏日报》2007年1月的语料中,双音节、三音节和四音节的人名约占人名总数的95%,其中双音节人名识别更为重要。大部分三音节和四音节人名是在双音节人名的基础上添加单音节或一个词构成的,因此,双音节人名是藏文人名库的重要组成部分,
3) 人名位置相对固定,一般可以出现在句首或句中,但不能出现在句尾。藏语是属于SOV型语序结构,在一个完整的藏语句子中,谓语动词始终位于句子的结尾部分。因此在包含人名的藏语句子中,句尾同样是动词或助动词。
例如,
2.3 边界信息
我们从《西藏日报》2007年1月的语料(约3.5MB)中抽取了1 403个人名,其中,藏族人名有995个,译名有408个。例如,包含人名的句子:
表1 左边界频度实例
表2 右边界频度实例
其中,表1中的SNR代表人名出现在句首,即左边界为空。表2中的“”表示语料中出现的5个作格助词,频度分别是(140)、(88)、(76)、(61)、(18);“”表示5个属格助词,频度分别是(13)、(13)、(9)、(7)、(3)。
对于藏文句子中包含人名的词序列我们可以表示成如下形式: W-1W0W1,其中W0表示中心词人名,W-1为人名左边界词,W1为人名右边界词。通常情况下,W-1可为空,当W-1为空时,W-1=SNR,表示句首是人名。
3 最大熵和条件随机场相融合的藏文人名识别
3.1 最大熵原理
最大熵模型最初由E.T.Jaynes在1950年提出,Della Pietra等人于1992年首次将其应用于自然语言处理模型中,最大熵原理的基本思想是,首先利用给定的训练样本,选择一个与训练样本一致的概率分布,它必须要满足所有已知的事实。在没有更多的约束和假设的情况下,对于那些不确定的部分,则会赋予均匀的概率分布。熵是用来表示随机变量的不确定性,不确定性越大,熵越大,分布越均匀。
最大熵模型:
其中H(P)是模型P的熵,C是满足条件约束的模型集合,下面需要寻求P*,P*的形式如式(2)所示。
其中Z(x)是归一化常数,表示形式如式(3)所示。
其中λi为特征的权重参数。
3.2 条件随机场原理
条件随机场的模型是由Lafferty于2001年提出,是一种新的分类方法。它在观测序列的基础上对目标序列进行建模。定义O={O1,O2,...,OT}为被观察的输入数据序列,S={S1,S2,...,ST}为被预测的状态序列,那么,在给定一个输入数据序列的情况下,参数为Λ={λ1,λ2,...,λT}的线性链CRF,其输出的状态序列的条件概率为:
其中,fk(st-1,st,o,t)是一个任意的特征函数,λk是对应于每个特征函数的权值,Z0是归一化因子,定义为:
3.3 最大熵和条件随机场模型相融合的藏文人名识别
自然语言处理中的很多问题都可被视为语言学上的分类问题,人名识别也是如此,针对语料中的每个候选词,可以根据左右边界词的标注信息判断是否为人名。
特征函数f(x,y)是二进制的函数,是对所获取的特征的一种表示方法。在藏文人名识别中,对于特征(xi,yi),定义特征函数如式(6)所示。
其中,y为人名实体结果输出,表示在条件x下,中心词W0是Y(是人名)还是N(不是人名),x是与y相对应的边界特征信息。
3.3.1 特征描述
1) 边界特征集
目标词W0的左右边界词的窗口大小取为正负1,边界特征是由左边界特征和右边界特征构成:
① 人名左边界特征集: W-1在人名左边界词表(ZNR)中出现,即znr(W-1)=true,则满足左边界特征,如式(7)所示。
②人名右边界特征集: W1在人名右边界词表(YNR)中出现,即ynr(W-1)=true,则满足左边界特征,如式(8)所示。
2) 模版特征集
结合W-1、W1信息,联合起来作为边界模板特征。
3) 人名词典特征集
人名词典是人名识别非常重要的资源之一,本文从《常见藏语人名地名词典》中选择2058个常用人名建立了藏文人名词典。
4) 译名用字特征集
3.3.2 特征提取
对于目标词W0,当考虑其左右边界窗口大小取±1时,可以抽取的信息有: 1)左边界词W-1,2)目标词W0,3)右边界词W1。利用这些信息构建边界、人名用词模板,然后按照这些模板从训练语料中提取大量的特征。
3.3.3 融合方法
由于最大熵模型本身特征选择比较灵活,应用于不同领域时的可移植性较强、鲁棒性高,因此,在实验中一直保持较好的召回率;而条件随机场能够较好地解决最大熵模型的标注偏置等问题,从而大幅度地提高准确率。针对两种模型的优劣特点,我们提出了两种模型相融合的识别方法,定义评价函数为:
Total=(λ×CRF)+((1-λ)×Maxent)
(9)
其中,λ表示权重,我们可以通过调节λ值的大小,从而取得最优结果。CRF、Maxent分别表示用条件随机场方法、最大熵方法测试人名识别的实验结果。
我们从融合后的实验数据看出,通过两种模型相融合,可以达到取长补短的效果,能够更有效地解决藏文人名识别问题。
4 实验结果及错误分析
本文的实验采用了《西藏日报》2007年1月的语料(大小约3.5MB)用作训练语料,《西藏日报》2007年2月1日至20日的语料(大小约2.1MB)用作开放测试。测试中我们采取了三个评测指标:
(1) 准确率(Precision)
(10)
(2) 召回率(Recall)
(11)
(3)F测试值(F-measure)
(12)
在实验中我们首先分别测试了最大熵方法和条件随机场方法两种情况下的藏文人名识别性能,实验结果如表3、表4所示。
表3 识别结果(1)
从表4可以看出,用最大熵模型能够有较好的召回率,但准确率相对偏低;利用条件随机场模型的识别方法,可以到达很高的准确率,但是很多人名不能被召回,系统的召回率大幅度降低。
我们用式(9)的融合方法把两种模型进行融合后的实验结果如下。
表4 识别结果(2)
从表5可以看出,系统的准确率随着λ的增大的逐渐提高,召回率没有很明显的规律。当λ取值为0.73时,准确率比条件随机场提高0.15%;当λ取值为0.58时,召回率比最大熵提高0.39%;系统的F值以λ取0.61为基准在发生变化,当λ≤0.61时,F值随着λ的增大而提高;当λ<0.61时,F值随着λ的增大而降低。当λ取值为0.61时,系统的F值比最大熵提高1.53%,比条件随机场提高了0.7%。实验结果表明,我们提出的最大熵和条件随机场模型相融合的藏文人名识别方法是很有效的。
在实验中我们发现如下四类较典型的错误,如表5所示。
从表5中的典型错误可以看出,虽然我们的方法可以达到很好的识别效果,但是由于识别方法对人名词典和边界信息的依赖性较强,导致了表5中的前两类错误。当出现与普通词冲突、边界特征不明显等情况时,目前的方法尚难以处理,可能需要借助句法结构和更多的上下文信息,才能准确地认识。
5 结论与展望
本文从藏文人名本身的特性出发,通过分析藏文人名的起名规律、人名用词特征、边界信息等特征, 提出了最大熵和条件随机场模型相融合的藏文人名识别方法。该方法融合了最大熵和条件随机场两种方法的优势,提高了系统的性能。另外,我们建立了边界词表、译名词表等用于辅助实现藏文人名的自动识别。实验结果表明,本文提出的方法能够达到较好的识别效果。
表5 错误分析
根据实验分析, 目前的藏文人名识别上存在数据稀疏、人名用词与普通词冲突等问题,因此,我们将在下一步的研究中进一步提高语料质量,扩大训练语料的规模,同时优化边界信息库、扩充特征模板,并试验其他可能的识别模型,如支持向量机(SVM)等,进一步提高人名识别的准确率。
[1] 王贵.藏族人名研究[M].北京: 民族出版社,1991: 20.
[2] 罗智勇,宋柔.现代汉语自动分词中专名的一体化、快速识别方法[C]//Ji Dong-Hong,国际中文电脑学术会议,新加坡, 2001: 323-328.
[3] 郑家恒,李鑫,谭红叶.基于语料库的中文姓名识别方法研究[J].中文信息学报,2000,14(1): 7-12.
[4] 宗成庆,统计自然语言处理[M].清华大学出版社,2008: 122.
[5] 李中国,刘颖.边界模板与局部统计相结合的中国人名识别[J].中文信息学报,2006,20(5): 44-50.
[6] 张华平,刘群.基于角色标注的中国人名自动识别研究[J].计算机学报,2004,27(1): 44-50.
[7] 张素香,高国洋,戚银城.基于条件随机场的中国人名识别方法[J].郑州大学学报(理学版),2009,41(2): 40-43.
[8] 毛婷婷,李丽双,黄德根.基于混合模型的中国人名自动识别[J].中文信息学报,2007,21(2): 22-28.
[9] 钱晶,张玥杰,张涛.基于最大熵的汉语人名地名研究[J].小型微型计算机系统,2006,27(9): 1701-1765.
[10] 贾宁,张全.基于最大熵模型和规则的中文姓名识别[J].计算机工程与应用,2007,43(45): 1-4.
[11] 尕藏卓玛.浅谈藏族人名的文化含义及其翻译原则[J].西北民族大学学报(哲学社会科学版),2008,5: 113-116.
[12] 罗智勇,宋柔,朱小杰.藏族人名汉译名识别研究[J].情报学报,2009,28(3): 478-480.