一种基于统计的汉语切词方法刘海峰王元元(解放军理工大学理江苏南京210007)【摘要】汉语分词是中文信息处理系统的基础。本文的主要目的是:提出一种概率模式与统计手段相结合的方法进行汉语切词。首先采用一种基于概率的算法对汉语文本进行切分,然后在此基础上借助样本方差这一统计手段对切分结果进行检验、修正;利用两种模型相结合的方式,提高切分的准确率。【关键词】自动分词搭配最大概率样本均值样本方差1汉语切词的意义对于利用计算机进行汉语自动翻译的工作者来说,汉语文本的切词是必须面对的问题。一般说来,如果我们能在两种不同的语言中找到对应的模式,那么翻译将是非常理想的。但是书面汉语不像英语、法语等印欧语言那样,词与词之间用空格分开,一个汉语的句子却是由前后连续的字符串组成,词与词之间并没有明显的分界标志。这样,计算机面对的是汉语整句输入,要使计算机像人一样对句子进行处理,就必需把这一串字符切分成合乎人的语感的一串词。而这一步骤几乎又是我们进行其它所有与自然语言处理相关的应用—诸如中文信息处理、人机对话等的前提。其次,语言中的词往往具有多种词性和多种词义,这虽然是各种语言的一种普遍现象,但是在汉语中这种现象比起西方语言来说要严重得多。汉语中各种搭配、组合十分复杂,常常会产生歧义。比如句子:“彩色铅笔盒子”可以理解为(彩色)(铅笔盒子),也可以理解为(彩色铅笔)(盒子);“他讲不清楚”既可以解释为“他讲,他不清楚”,又可以解释为“他讲的不清楚”。等等,诸如此类现象在汉语中十分普遍。象这些词与词之间的固有歧义、组合歧义、多动词连用、词性歧义以及词序等问题,使得对汉语分析变得极其复杂。因此,要实现对汉语的计算机处理,进行汉语字词的自动切分是必须的。机器处理的优势在于它有强大的计算能力,可以大规模地处理语料,再结合人工手段则可以提高它的精确度[1]。切词的很小错误率对文章的理解却影响甚大。假设一个切词系统的错误率为2%,在一篇1000词的文章中,大约出现20处切词错误。又假设文章中的句子平均长度为5个词,整篇文章有大约200个句子;再假设这些切词错误均匀分布(不过分集中),这20处切词错误就可能导致大约20个句子的翻译错误,错误率将达到10%。换句话说,切词阶段的错误率在翻译的过程中将会被“放大”,放大的倍数约等于句子的平均长度。这对翻译正确率的影响是非常大的[2]。自动分词是现代汉语进行句法分析的第一步,是后续语法分析、语义分析等的分析基础。可以说没有有效的分词方法,汉语的进一步分析很难进行。2主要的切词方法目前,常用的切词方法基本上分为基于规则的方法、基于统计的方法、以及两者的结合。基于规则的方法最常见的是以一定的形式文法系统来表述自然语言中大小成分间的组合规则;基于统计的方法则以各种统计数据来显示语言成分间的组合可能性[3]。本文主要的着眼点放在统计方法上。利用统计方法借助计算机对汉语进行句法分析所需要的工具是语料库。相对于基于规则的方法来说,基于统计的方法不再单独使用诸如词类、词性等知识进行句法分析,而是自动从语料库中学习词汇和词的结构信息。因为词汇之间存在着许多关系信息,某些词之间有相互结合的趋势。而这种结合可以反应更为深入的语义关系,可以在分析汉语文本中进行清除歧义问题。3一种基于统计的分词方法用统计的方法进行汉语切分的一个常用方法是基于Veterbi算法的方法[4]。设T=C1C2…Cn是一个汉语句子,这里,C1,C2,…,Cn代表n个汉字字符。把一个汉语句子切分成词序列就是把这个字符序列重新组合成词。即有=(1)其中,,分词过程可以看作是在给定输入字符串S的条件下,输出w1w2…wm字符串为的过程,而合理的概率分词结果应为条件概率P(w1w2…wm|T)取到最大值时所对应的词串。根据贝叶斯公式,得,(2)由于T为给定的字符串,故P(T)为定值,又P(T|S)为符合切分S的条件下,T出现的概率,又因为在S的条件下T出现为必然事件,故可以认为:P(T|S)=1。因此,由(2)式,我们只需要考虑P(S)=P(w1w2…wm)取得最大值P*时的情况。根据条件概率公式P*=max(P(w1w2…wm))(3)由于(3)式的计算较复杂,为了减少参数空间,可以考虑限制参数的空间维数,如使用二元模型[5]进行近似计算:(4)即只考虑wi的前一个词wi-1对wi取值概率的影响,以(5)进行近似计算。而值P(wi|wi-1)可以用语料库中组合wi-1wi出现的频率fi代替。当然,为了提高计算精确度,也可以考虑使用三维模型,当然计算量将加大。4方法改进在上面的算法中,由于我们采取的是近似计算,其结果对切词的精度有所影响。为了提高切词的准确率,我们可以进一步考虑再借助方差这一数字特征作为第二个统计手段,对上述统计方法加以改进和修正,使用两种方法相结合而达到提高切分准确率的目的。搭配是汉语中的一种普遍现象。所谓搭配,是指两个或多个连续的字、词序列,具有句法和语义单位的特性。并且它的准确无歧义的意思或含义不能直接由它的组成部分的意思和含义直接给出[6]。也就是说,许多字词之间存在着一些固定搭配。如果两个词在一起出现了很多次,那么就是一个证据说明它们有特殊功能。这种功能不能简单的解释为两个词合并而导致的结果。在一个文本语料库中寻找搭配的简单方法是计数。再回到上面算法所得到的结果上来。设:(6)为利用该算法而得到的结果,我们再对分割点进行检验、修正。即对于分割点Cx1处,进一步考虑两种搭配Cx1-1Cx1与Cx1Cx1+1分别在语料库中出现的频率fi、fi+1。若前者的频率大于后者的频率,则说明上述计算方法对该词的切分是较优的;否则,说明上述计算方法对该词的切分可能不一定合适,有可能需要修正。当然上述方法显得过于简单。这是因为在语料库中的两个符号Cx1-1、Cx1之间的距离是变化的。比如下面一个例子,反映了“说”与“话”两个字的搭配情况:①她说话太快;②他说的话没有人相信;③他无论说什么话你都相信;④这话怎么说都对。在这四个句子中,考虑以“说”为中心字,“说”、“话”两个字搭配的距离是可以变化的,我们可以计算语料库中这两个字之间的偏移量的均值与方差。如上例①中“说”与“话”相连,计两字之间的偏移量为1,②中的“说”与“话”两字之间有一个字符,认为偏移量为2。而④中“话”在“说”的前面,中间有2个字符。称偏移量为-3。如果我们仅利用例题中的4个句子,则可计算两字平均偏移量为:(7)这样,我们在语料库中把分析限制在中心词“说”周围2m个字,即中心字前、后各m个字,可以推测两个字结合的平均程度。m不能太大,否则搜索量太大;m也不能太小,否则信息量太少,以m=2或3较为适宜。平均偏移量只能从一个方面反映两个字结合程度。另一方面,由概率论我们知道,方差是衡量随机变量取值与其取值平均之间的偏离程度的一个重要数字特征,而样本方差是方差的无偏估计,故以(8)作为一个标准去推测字符间结合的紧密程度是合理的。这里的n表示两个字符的同现次数,xi是同现的偏移量,是样本偏移的均值。习惯上,使用样本均方差S来评价两个词之间的偏移量的离散程度。若S=0,则说明两个词结合非常紧密;若S比较小,说明两词结合较紧;若S较大,说明两个字组成词可能性很小。在本例中,(9)方差特征化了语料库中两个字之间的距离分布。综上分析,我们提出下面的切词算法。1)根据公式(4)计算P(S)的最大值,对文本进行第一次划分。2)对于Cx1与Cx1-1和Cx1+1的两个搭配Cx1-1Cx1及Cx1Cx1+1来说,假设它们字间距偏移量的均方差分别为Si和Si+1,计算Si和Si+1并比较:若SiSi+1,认为前者的结合较后者结合更为合理,则接受(6)式相应的切分;若SiSi+1,说明(6)式对该部分的切分可能不是最合适,这时可以进一步按以下原则考虑:若P*较大,Si+1较小,接受(6)式相应的切分;若P*较小,Si+1较大,则认为Cx1Cx1+1的组合方式更加合理;若P*较小,Si+1较小;或P*较大,Si+1较大,这时很难选择,我们可以将这些情况单独挑出,进行人工干预。当然,P*、Si+1的值何时算大,何时算小,很难有一个准确的界定,这要根据具体情况选择较为合理的值。试验结果表明,该算法对切分精度有一定提高。另外这种算法对切词方式还有需要进一步改进的地方。例如,即使两个字符组合是高频率,低方差;但是这两个词同现很多次却是一个偶然现象。对这样情况,应用假设检验等统计手段进行处理,效果可能好一些。这是我们可以进一步思考的问题。5结束语汉语分词是中文信息处理系统的基础,有着极其广泛的实际应用。从基本的输入系统到文字处理,无处不渗透着分词系统的应用。因此,中文信息处理技术的进步和广泛应用,有待于对分词中的关键问题进行进一步深入研究和探索。汉语分词系统作为中文信息处理系统的基石,有着极其广泛的应用前景。计算机的智能目前还远远没有达到能够象人一样理解自然语言的水平,而且在可预见的将来也达不到这样的水平。因此,关于计算机对自然语言的理解一般是从实用的角度进行评判的[7],通过对分词技术的深入研究,找到高效的分词方法,开发出高质量,多功能的分词系统,必将促进中文信息处理系统的广泛应用。(收稿日期:2006-03-14;Email:liuhaifeng19620717@sina.com)参考文献[1]周强,俞士汶.一个人机互助的汉语语料库多级加工处理系统CCMP.《计算语言学进展与应用》,清华大学出版社,1995年,P50-55[2]刘群,俞士汶.汉英机器翻译的难点分析.《1998中文信息处理国际会议论文集》,清华大学出版社,P507-514[3]徐辉,何克抗,孙波.书面汉语自动切词专家系统的实现(1991).中文信息学报,5(3)[4]刘颖.计算语言学,清华大学出版社,p15[5]姚天顺等.自然语言理解—种让机器懂得人类语言的研究.清华大学出版社,p272[6]Christopher.D.FoundationsofStatisticalNaturalLanguageProcessing.ManningAndHinrichSchutzep183-184[7]俞士汶.自然语言理解与语法研究.《语法研究入门》,商务印书馆,1999,p240-251AmethodofcuttingapartChinesewordsbasingonstatisticsLiuHaifengWangYuanyuanAbstract:TocuttingapartChinesewordscorrectlyisafoundationofChineseinformationprocessing.Inthispaper,ourmainpurposeistouseamethodincuttingapartChinesewords.ThismethodcomposesoftwostatisticalmodelsFirstly,weuseanalgorithmbasingonprobabilitytocutChinesewords.Secondly,wedependonthevarianceasthesecondstatisticalmethodtorevisetheresult.Withcombiningofthetwomodels,wehaveraisedtheaccuracy.Keywords:cutapartwordsautomatically;collocations;Maxprobability;samplemeanandsamplevariance