对中文分词歧义消除算法的研究

2015-03-05 06:47
苏州市职业大学学报 2015年4期

谷 瑞

(苏州工业园区服务外包职业学院 移动互联网技术系,江苏 苏州 215123)



对中文分词歧义消除算法的研究

谷 瑞

(苏州工业园区服务外包职业学院 移动互联网技术系,江苏 苏州 215123)

摘 要:介绍中文分词算法的理论知识,通过介绍歧义存在的种类,分析分词结果出现歧义的必然性.提出改进“退一字组合法”,实现歧义消除.在保持切分速度的前提下,提高切分的精度.为搜索引擎建立索引奠定良好的基础.

关键词:中文分词;歧义消除;歧义处理;歧义字段

中文分词是指将中文文本拆分成词的技术.目前,中文分词技术已经广泛应用于信息检索、搜索引擎、信息抽取、机器翻译、汉字的智能化输入、中外文对译、中文校对、自动摘要、自动分类、文本的语音输入等很多方面和领域,中文分词技术是中文信息处理中的关键技术之一,分词的速度和精度将直接影响系统(如搜索引擎)的效率.

中文与英文在形式上完全不同.英文书写时,词与词之间使用空格分隔,词边界分明;中文的书写形式则是字的有序排列,词相互之间没有分隔的标识,而词又是中文中最小的能够独立运行的语法单位,所以必须经过中文分词处理,计算机才能进行后续的分析.由此可见,分词是信息处理的前提和基础.但由于汉语语言的博大精深,同一个词语在不同的语境下能够表达不同的意思,大大影响了词语切分的精度,必然会出现分词过程的歧义.如何最大限度地消除歧义,提高分词的精度,是中文分词过程中必须要解决的重要课题.

1 歧义消除的主要算法

1.1 产生歧义的原因

目前研究表明,产生歧义的根源可以归结为三个方面:①由自然语言本身的二义性所引起的歧义,这类歧义字段无论从语法或者语义的角度进行切分,都能切分正确的结果;②由机器自动分词产生的歧义,这类歧义字段的产生是由机器造成的,人工分词不会出现歧义;③由分词词典的规模引起的歧义,也就是说,歧义的产生由字典的大小决定[1].

统计表明,第一类歧义字段只占歧义字段总数的5%左右,而第二类歧义字段和第三类歧义字段占歧义字段总数的95%.故通常意义上所说的中文分词系统一般都是对后两类歧义字段进行研究.

1.2 常见歧义字段及主要歧义消除算法

在中文分词中出现的歧义字段,主要分为三类.

1) 交集型歧义字段.在字段ABC中,AB┃W,且BC┃W,A、B、C为字串,W为词表,则称ABC为交集型歧义字段[2].例如:交集型歧义字段“结合成”可切分为“结合/成”和“结/合成”两种切分方式,歧义字段的链长为1,长度也为1.“结合成分”可切分为“结合/成分”和“结/合成/分”两种切分方式,其中“结合”,“合成”,“成分”都可单独成为词,由定义知,该字段链长为2,长度为1.

2) 组合型歧义.在字段AB中,AB┃W,A┃W,B┃W,A、B、C为子串,W为词表,则称AB为组合型歧义字段[3-4].例如:组合型歧义字段“将来”可切分“李教授/将/来/香港讲学”和“香港/将来/经济更繁荣”两种切分方式.

3) 真歧义.如果某一歧义字段,不结合其他信息,人也无法判断出其正确的切分方式,那么这样的歧义字段就叫真歧义字段[5].

研究表明,交集型歧义字段占总歧义字段的86%,因此,目前中文分词歧义消除工作的重点通常集中在如何消除交集型歧义字段.目前,主要消除歧义的算法包括三大类——基于词典的歧义消除算法、基于统计的歧义消除算法、词典和统计相结合的歧义消除算法.“退一字组合法”就是基于词典的歧义消除算法,本文主要针对该算法进行改进,在保持切分速度的前提下,提高切分的精度.

1.3 退一字组合法及研究现状

要消除歧义,首先要发现歧义产生的位置.常用的歧义发现算法有双向扫描算法和逐次扫描法.找到产生歧义的字段后,对链长为1的字段进行歧义消除,具体思路:若当前匹配的词语A是单字的时候,取A前面的词语D的最后一个字B进行组合,得到的新词C再与词典进行匹配,若匹配成功,将B从D中剔除,将C存入;反之,D不变,将A存入.

算法简单高效,但切分的效果较差,如要切分“他还不了解手的作用”,采用该算法,最终切分结果却是“他/还/不/了/解手/的/作用”.另外,针对链长为2的歧义字段切分效果也不理想,如“乒乓球拍卖完了”,采用该算法最终的切分结果为“乒乓球/拍卖/完/了”.

目前,针对“退一字组合法”的改进主要是根据词性和词的优先级进行歧义处理,如许高建等[6]提出了一种采用“动词优先”的歧义消除算法,在消除歧义方面,加入了“动词的判定”和“优先级的判定”的方法,使分词结果最大程度地消除歧义.但是该算法同样不能消除链长为2的歧义字段,如“乒乓球拍卖完了”,最终切分结果却为“乒乓球/拍卖/完了”.

2 歧义消除算法设计

2.1 设计目标

针对“退一字组合法”和“动词优先”算法的缺点,在两种算法的基础上,提出一种算法,使其不仅能消除链长为1的歧义字段,而且能够识别和消除链长为2的歧义字段.

2.2 主要思想

本文的算法主要是对“动词优先”算法的扩展,使其能够处理链长为2的歧义字段.具体思路为:①利用双向扫描算法初步识别字符串中的歧义字段,对链长为1的歧义字段采用“退一字组合法”和“动词优先”算法进行歧义消除[7-8].②从切分后的字符串中查找双字的字段DE,再判断DE之前的词语长度是否为3,若是,则记为ABC,判断CD是否在字典中存在,若存在,则继续判断E是否为动词,若为动词,则切分为AB/CD/E;若E不是动词,则从字典中判断DE和CD的优先级,根据优先级来决定划分为AB/ CD/E还是ABC/DE.

如“乒乓球拍卖完了”,采用双向扫描算法切分后的结果为“乒乓球/拍卖/完/了”,然后找到“拍卖”,判断前面的词“乒乓球”长度为3,组合“球拍”,判断它在字典中是否出现,若出现,则继续判断“卖”是否为动词,因为“卖”为动词,则最终的切分结果为“乒乓/球拍/卖/完/了”.

2.3 算法描述

本算法主要是对“动词优先”算法进行改进,基于“动词优先”的算法参见文献[6].

设X为待切分的词语,若X为双字词,记为DE;设与X相邻的前面的词语为Y,若Y为三字词,记为ABC,具体流程图如图1所示.

由图1可知,当E不是动词,需要利用统计学的互信原理对CD和DE进行优先级的判断,当CD的优先级大于DE时,切分结果为AB/CD/E,反之切分结果为ABC/DE.

本算法的实现是对Java开源社区的IkAnalyzer分词器进行了改进,使其能够处理链长为2的歧义字段.例如,乒乓球拍卖完了,采用IkAnalyzer进行切分,结果为:乒乓球/拍卖/完了.若采用本文算法,切分结果为:乒乓/球拍/卖/完了.改进后的算法的关键流程如图2所示.

图1 双向算法消除歧义流程图

图2 改进后的退一字组合法流程

1) 动词的判定.首先定义一个bool型变量single,用于记录当前匹配的单字A是否为动词,如果A为动词,记single为true(前提:通过调用“退一字组合法”程序段,已经判定出A和紧邻其前面的词语C的最后一个字D可以组合为新词E);反之,记single为false.接着,系统继续匹配下一个词语B,如果B为单字,且single为 true时,系统匹配相应词库判断B是否为助词,如果B是助词,则A依旧作为单字存入;反之,执行下一步的命令.

2) 优先级的判定.在数学运算中,乘除式总是先于加减式进行运算,因为在优先级的设置里,乘除式的优先级高于加减式.受此启发,首先在分词系统添加有关词语的优先级词库,然后在“退一字组合法”的基础上,添加词语优先级的判定算法.

3 结论

本设计词法的词库比较健全,分词算法运用了最新的技术以及各自特有的技术,并且其分词程序不只是简单地进行分词,还进行了词性标注的工作,这为后续对中文自然语言的处理提供了条件.在消除歧义方面,加入“动词的判定”和“优先级的判定”方法解决程序中所未能识别的歧义问题.如:乒乓球/拍卖/完了.

与基于动词的歧义消除算法相比,本文提出的歧义消除算法能够在O(n)的线性时间内对链长为1和2的交集型歧义字段进行更大程度的歧义消除,从而提高分词的精度,为文本挖掘(如搜索引擎的倒排索

引的建立)奠定了良好的基础.但算法还有一定的局限性,例如不能对组合型歧义字段进行歧义消除,对链长大于2的交集型歧义字段也不能有效地解决歧义,有待进一步深入研究.

参考文献:

[1] 陆公正,开金宇. 使用机械分词与特征扫描实现对甲骨卜辞的切分[J]. 苏州市职业大学学报,2013,24(4):2-6.

[2] 梁颖红. 紧凑结构多词表达抽取技术综述[J]. 苏州市职业大学学报,2013,24(3):2-6.

[3] 张培颖,李村合. 一种改进的上下相关的歧义字段切分算法[J]. 计算机系统应用,2006(5):46-48.

[4] 张春霞,郝天永. 汉语分词的研究现状与困难[J]. 系统仿真学报,2005,17(1):138-147.

[5] 余战秋. 中文分词技术及其应用初探[J]. 研究与开发,2004,32(6):80-82.

[6] 许高建,胡学钢,路遥,等. 提出了一种采用“动词优先”的歧义消除算法[J]. 安徽工业大学学报:自然科学版,2008,31(10):1622-1625.

[7] 谭琼,史忠植. 分词中的歧义处理[J]. 计算机工程与应用,2002,38(11):125-127.

[8] 朱小娟,陈特放. 词频统计中文分词技术的研究[J]. EIC,2007,14(3):78-79.

[9] 张江. 基于规则的分词方法[J]. 计算机与现代化,2005(4):18-20.

[10] 孙茂松,左世平,黄昌宁. 汉语自动分词词典机制的实验研究[J]. 中文信息学报,2000,14(1):1-6.

[11] 杨文峰,陈光英,李星. 基于PATRICIA tree的汉语自动分词词典机制[J]. 中文信息学报,2001,15(3):44-49.

[12] 邓曙光,曾朝晖. 汉语分词中一种逐词匹配算法的研究[J]. 湖南城市学院学报:自然科学版,2005,14(1):76-78.

(责任编辑:李 华)

[3] 谭丽莉. 城市房屋拆迁中公民参与机制研究[D]. 南京:南京理工大学,2013.

[4] 谭亚. 城市房屋拆迁补偿制度构建:现状、问题与对策[D]. 重庆:重庆大学贸易与行政学院,2009.

[5] 冯玉军. 权力、权利和利益的博弈——我国当前城市房屋拆迁问题的法律与经济分析[J]. 中国法学,2007(4):48-49.

[6] 彭小兵. 城市拆迁中的利益冲突与公共利益界定[J]. 公共管理学报,2009,6(2):76-84.

[7] 张琦. 城市拆迁各方主体利益关系研究[D]. 上海:上海交通大学,2012.

[8] 王军,汪晓华. 商业拆迁的权利与利益之辩[J]. 长春大学学报:社会科学版,2011,21(11):93-96.

[9] 钱飞. 我国城市房屋拆迁制度的反思与完善[D]. 上海:复旦大学,2008.

[10] 刘杰. 破解征地拆迁困局研究[D]. 成都:西南交通大学,2012.

[11] 李丽莉. 城市房屋拆迁中的物权保护[D]. 大连:大连海事大学,2013.

(责任编辑:沈凤英)

Research on the Algorithm of Eliminating Word Segmentation Ambiguity

GU Rui
(Department of Mobile Internet Technology,Suzhou Industrial Park Institute of Service Outsourcing,Suzhou 215123,China)

Abstract:Having introduced the theory of Chinese word segmentation algorithm,this paper proposes to improve“the back one word combination”by analyzing the categories of word segmentation ambiguity and its inevitability in order to eliminate it and enhance the precision of segmentation while maintaining the segmentation rate. As a result, it lays solid foundation for search engines to establish indexes.

Key words:Chinese word segmentation;ambiguity elimination;ambiguity disposal;ambiguous words

作者简介:谷 瑞(1982-),男,河南信阳人,讲师,硕士,主要从事移动云计算研究.

收稿日期:2015-08-28;修回日期:2015-09-20

中图分类号:TP393

文献标志码:A

文章编号:1008-5475(2015)04-0025-03