首页 理论教育 中文分词算法及应用-数字图书馆知识标准规范及应用研究

中文分词算法及应用-数字图书馆知识标准规范及应用研究

时间:2023-10-27 理论教育 版权反馈
【摘要】:中文在计算机中的编码有别于西方的字符集编码,国外的分词算法不能直接应用于中文的分词,为此,国内有研究者对中文分词技术进行了一定的研究,也提出了各种各样的分词算法。但是,由于中文语言的复杂性和二义性,基于词典的分词算法存在分词歧义问题,最终影响分词的精度。

中文分词算法及应用-数字图书馆知识标准规范及应用研究

中文在计算机中的编码有别于西方的字符集编码,国外的分词算法不能直接应用于中文的分词,为此,国内有研究者对中文分词技术进行了一定的研究,也提出了各种各样的分词算法。目前,中文领域的分词算法主要分为基于词典的分词算法、基于统计的分词算法和基于规则的分词算法三大类,它们分别代表着中文分词算法的3个发展方向。

4.4.3.1 基于词典的分词算法

基于词典的分词算法又称机械匹配算法,该算法在20世纪50年代后期就被提出来,它的核心思想是基于字符串匹配的机械分词,也就是说根据一定的匹配策略将待分词的汉字串与分词词典中的词条进行匹配,如果在词典中找到某个字符串,那就成功识别出一个词,也就是说匹配成功。如果没有找到任何字符串,就是匹配失败。分词词典、文本扫描方向、匹配原则是基于词典的分词的3个基本要素,其中,文本扫描方向可以分为正向和逆向,匹配原则可以分为最大匹配、最小匹配、逐词匹配等。因此,依据文本扫描的方向和匹配原则,基于词典的分词算法可以派生为正向最大匹配、逆向最大匹配、逐词匹配、最少切分、全切分等匹配方法。[5]在实际应用中,通常是多种匹配方法组合使用。

(1)正向最大匹配算法是最常用的基于词典的分词算法之一,该算法的基本思想如下:

1)从左往右切割不超过词典内最大长度的汉字作为匹配字符串;

2)检索词典库,同时进行字符串匹配,如果能匹配上,就将这个匹配字段作为一个词切分出来;

3)如果不能匹配上,就将这个匹配字符串的最后一个字去掉,剩下的字符串作为新的匹配字符串,进行下次匹配;

4)循环1)~3)操作,直到匹配字符串的字数为零为止;

5)重复1)~4)过程,直到切分出所有词为止。

(2)逆向最大匹配算法原理与正向最大匹配算法比较相似,该算法的基本思想如下:

1)从右往左切割不超过词典最大长度的汉字作为匹配字符串;

2)检索词典库,同时进行字符串匹配,如果能匹配上,就将这个匹配字段作为一个词切分出来;

3)如果不能匹配上,就将这个匹配字符串的最后一个字去掉,剩下的字符串作为新的匹配字符串,进行下次匹配;

4)循环1)~3)操作,直到匹配字符串的字数为零为止;

5)重复1)~4)~过程,直到切分出所有词为止。

逆向最大匹配算法和正向最大匹配算法的区别在于,逆向最大匹配算法是从右往左依次取匹配字符串,而正向最大匹配算法是从左往右依次取匹配字符串。它们采用的匹配方法相同,但方向相反。

基于词典的分词算法简单明了,整个算法的程序设计容易实现,在实际的分词系统中应用较为广泛。但是,由于中文语言的复杂性和二义性,基于词典的分词算法存在分词歧义问题,最终影响分词的精度。同时,词典本身难以实现自动扩充,采用单纯的基于词典的分词算法进行分词难以满足信息处理中对中文分词的要求。但是在基于词典的分词的基础上,结合其他方法对语言信息进行歧义校正,就可以提高分词的准确性,弥补机械切分的局限性。目前,实用的自动分词系统基本上都是以词典的分词为主,辅以少量的词法、语法和语义信息的分词系统。

4.4.3.2 基于统计的分词算法

基于统计的分词算法又称为无词典分词算法,它依据词与词的联合出现概率作为分词的信息。当前,基于统计的分词算法也有很多种,通常应用在搜索引擎中。较为常见的算法包括互信息的概率统计算法、组合度算法,N-Gram模型算法等。

1.互信息的概率统计算法

互信息的概率统计算法的核心内容是利用互信息公式计算出字符x和字符y的互信息值MI(x,y)。再通过互信息值MI(x,y)的大小来进一步判断字符x和字符y之间的结合程度。互信息计算公式如公式(4-5)所示。

(1)如果互信息值MI(x,y)>0,那么字符x和字符y之间具有可信的结合关系,而且互信息值MI(x,y)越大,结合程度越强。

(2)如果互信息值MI(x,y)=0,那么字符x和字符y之间的结合关系不明确。(www.xing528.com)

(3)如果互信息值MI(x,y)<0,那么字符x和字符y之间基本没有结合关系,而且互信息值MI(x,y)越小,结合程度越弱。

其中,p(x,y)代表字符x和字符y共同出现的概率,p(x)和p(y)分别代表字符x和字符y出现的概率,MI(x,y)代表字符x和字符y的互信息值。

2.组合度算法

组合度算法的核心内容:因为中文的词语都是由多个字符组成的,所以在一个文本中,如果字符B紧跟在字符A的后面,那么我们就称AB是一个字符组合。利用组合度的计算公式,计算出每个词的组合度HAB值,组合度越高,说明它是词的可能性越大;组合度越低,说明它是词的可能性越小。组合度计算公式如公式(4-6)所示。

其中,HAB为AB在文章中的组合度;N为汉字个数;K为AB组合的个数;n1为A的个数;n2为B的个数。

3.N-Gram模型算法

N-Gram模型算法的核心内容:一个单独词的出现和它在上下文环境中出现的单独词序列密切相关,第n个词的出现只和前面n-1个词有关系,和其他任何词都没有关系,设w1,w2,…,wn是长度为n的字串,则字串W的似然度用方程表示如公式(4-7)所示。

例如,预测词wn的出现概率,必须知道它前面所有词的出现概率,太过复杂。为了简化计算,规定任意词wi只与其前两个相关,得到三元概率模型如公式(4-8)所示。

以此类推,N-Gram元模型就是n个词的出现概率只同它前面的n-1个词有关联,并且根据概率推算出词。

基于统计的分词算法的最大优点是不需要人工干预就可以自动建立规则库,所需数据可以通过计算机从语料库中通过训练自动获得。同时,还具备有效地自动排除歧义,识别新词等能力。基于统计的分词算法有效地解决了机械分词算法的局限,它的精度也很高。不过,该分词算法也存在一些缺点和不足,由于没有使用分词词典,为此对常用词的识别敏感度较低,同时也会抽出一些无效的词。基于统计的分词算法由于具有良好的切分歧义处理能力和新词识别能力,越来越多地受到重视,发展也比较快,应用范围也在不断地扩大。[6]

4.4.3.3 基于规则的分词算法

基于规则的分词算法的核心内容是通过计算机模拟人对句子的理解,达到识别词的效果。在分词的过程中,同时进行句法、语义分析,利用句法信息和语义信息来处理歧义现象。[7]它一般包括分词子系统、句法语义子系统和总控部分3个部分。整个算法系统是在总控部分的统一协调下,分词子系统获取相关的词、句子的句法和语义等信息,对分词歧义进行判断,实现模拟人对句子的理解过程。

基于规则的分词算法的最大优点是它可以在实例中进行自动推理和证明,可以自动完成对未登录词的补充,但是它本身需要大量的汉语相关知识,所以要实现基于规则的分词算法很难。

【注释】

[1]赵灵芝.学科分类在中国的引入——以张之洞的“八科分学”为例[D].大连:大连理工大学,2007.

[2]贺德方.国内外知识组织体系的研究进展及应对策略[J].情报学报,2010(6):963-972.

[3]刘静宜.数据挖掘在职教系统的应用[D].青岛:中国海洋大学,2009.

[4]刘小华.数据挖掘在电力系统短期负荷预测智能化建模中的应用研究[D].武汉:华中科技大学2004.

[5]罗桂琼,费洪晓,戴弋.基于反序词典的中文分词技术研究[J].计算机技术与发展,2008,18(1):80-83.

[6]孙铁利,李晓微,张妍.信息过滤中的中文自动分词技术研究[J].计算机工程与科学,2009,31(3):80-82.

[7]尹炳龙.消除交叉歧义中文分词算法的研究与应用[D].大连:大连理工大学,2009.

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈