DGP系统中分词技术的实现

2013-09-17 12:30:26张丽春周新志
通信技术 2013年1期
关键词:分词词典双向

张丽春, 周新志

(四川大学 电子信息学院,四川 成都 610064)

0 引言

DGP就是《气田地面工程设计规定》体系(DGP,Code for Design of Gasfield Group Project),DGP 要实现的功能是将各类繁多数量庞大的相关文件数据进行统一的管理,以方便用户查找和下载打印,便于实现知识共享,实现对气田地面工程的设计技术标准和工作标准进行系统地管理。因为像图书馆查阅的方式已经达不到方便快捷的查询与使用,必须要建立一个像 DGP一样的能够提供便捷的服务来满足用户的需要。DGP需要完成搜索与管理功能,具体表现在需要实现用户登陆系统,文件搜索、浏览、下载、打印,文件上传、删除、更新,文件的管理,系统的管理等功能[1]。要实现这些功能需要用到很多的技术,其中非常关键的一项技术,也是影响 DGP系统性能至关重要的一项技术就是分词技术。

分词技术是搜索引擎针对用户提交查询的关键串进行的查询处理,后根据用户的关键串用各种匹配方法进行的一种技术,是一个搜索引擎好坏的关键[2]。中文分词技术,指的是将一个汉字序列切分成一个一个单独的词,也就是将连续的字序列按照一定的规则重新组合成词序列的过程。因为中文的词没有一个形式上的分界符,而英文有空格作为单词之间的分界符,所以中文比英文的要更复杂、更困难[3]。

现有的分词技术有三大类:基于词频度统计的分词方法、基于字典词库匹配分词方法、基于知识理解的分词方法。三种分词技术分别有各自的特点:统计分词方法的优点在于可以发现所有的切分歧义并且容易将新词提取出来,但是分词速度太慢了;基于字典词库匹配分词方法速度比较快,但对词典的依赖性较大,且不能根据文档上下文的语义特征来切分词语,在实际使用时,难免会造成一些分词错误,为了提高系统分词的准确度,可以采用正向最大匹配法和逆向最大匹配法相结合的分词方案,即双向匹配法;基于知识理解的分词方法的分词效率应该是最好的,但是目前还处于完善阶段[4]。

在此,综合现有的分词技术的优缺点,确定将最大匹配法进行改进之后运用于DGP系统之中,并讨论最大匹配法在DGP系统里的实现问题。

1 最大匹配法的思路及改进

最大匹配法是需要建立一个“充分大”的机器词典,也就是建立一个关键词库[5],其中包含所有可能出现的词,将需要分词的字符串按照一定的方法与词典中的词条进行逐条匹配,直到找出匹配的词则匹配成功[6]。这类方法简单、分词效率高。

最大匹配法的特点就是从最长的词开始匹配,可以提高查询的速度,提高工作效率。最大匹配法又分为正向最大匹配法和逆向最大匹配法。正向最大匹配法的基本思路如下:

2)从词典中查找最大长度匹配词的值M=MAX_Length,“窗口”的起始位置为待匹配句子的第一个字,记为j=0。

3)当n j- 大于等于M且M大于等于1时,则从j的位置开始向后截取长度为M的子串进行匹配,若匹配不成功则进入步骤 4,若匹配成功则进入步骤5;当n j- 小于M且M大于等于1时,进入步骤6;当M小于1时,进入步骤7。

4) 1j j= + ,进入步骤3。

5)将匹配成功的分词取出,j jM= + ,进入步骤3。

6)M值减1, j=0,进入步骤3。

7)匹配结束[7]。

用流程图来描述如图1所示。

逆向最大匹配法与正向最大匹配法相差无几,只是逆向最大匹配法是从词串的最后一个字开始取i个字与词典作匹配而已。

在正向和逆向最大匹配法中,都是运用了“窗口”的思想。首先选取了最大长度M,确定窗口的大小,从最前端的第一个字开始依次往向挪动“窗口”截词与词典中的词进行匹配。如果匹配成功,那么将词典中匹配的关键词取出,继续向后匹配,如果整个句子都没匹配成功,那么将M的值减一,即是将窗口的大小减小一个字,依照之前的方法进行挨个匹配,直到将待匹配的句子全部与词典中的词匹配并截取出来,整个匹配任务便完成了[8]。

图1 正向最大匹配法流程

举例看一下最大匹配法的分词效果:

假使有句子 A:“有意见分歧”,B:“天然气管理部门”,使用正向和逆向最大匹配法对其进行切分,分别得到“有意、见、分歧”,“天然气、管理部门”和“有、意见、分歧”,“天然气、管理部门”。从语义上来看,可以看到句子 A使用逆向最大匹配法分词是正确的,句子B两种方法得到的结果是一样的,都是正确的。因此,为了提高分词的准确性,应该考虑将正向、逆向最大匹配法结合的方式进行分词。在具体分词的时候,如果两种分词方法得到的匹配结果相同,则认为分词正确,否则,按最小集处理。使用双向最大匹配法可以大大提高分词的准确率。

但是双向最大匹配法也给分词带来了一些难题,因为从时间效率上来讲,双向最大匹配法肯定要比单向的匹配法效率要低些,但是为了准确率,必须牺牲一点时间效率。在这样的情况下,考虑到可以从另外的地方进行改进,为DGP系统搜索节约出一部分的时间。因为最大匹配法有一个特点是“长词优先”[9],而在分词的时候,是将切分的句子与词典中的词一一匹配的,那么可以考虑将词典里的词按相同长度的词分成一个词块,在分词匹配的时候,根据待匹配的词的长度,也就是M值,确定目前应与哪个长度的词块里的词进行匹配。这样就避免与不同词长度的词块匹配浪费很多时间,达到了提高搜索效率的目的。

2 双向匹配法在DGP系统中的运用效果

DGP系统中的文件主要是一些标准规范、技术规格书、参考资料等等,内容十分丰富。在这里可以看一下双向匹配法在DGP系统中的运用效果。

如图2、图3所示,在DGP系统中只要输入关键字就能查出所有的相关的标准文献,并没有其它无关的信息出现,说明双向匹配法让DGP系统搜索的准确率大大高,而且在实际操作的时候,反应速度是很快的,完全能够满足用户的实际需要。这说明,在DGP系统中,运用双向匹配法能够很好地达到高效查找资料的目的,并提高搜索准确率,使得DGP系统得到优化。

图2 双向匹配法在DGP系统中的运用图例(1)

图3 双向匹配法在DGP系统中的运用图例(2)

3 结语

通过对分词技术的分析,并且根据DGP系统的分词需要,分析出使用双向最大匹配法是最适合DGP系统的分词方法。并了解到双向最大匹配法在分词的时候的难点是:在进行分词时会在一定程度上会使 DGP的分词效率稍微有点降低,使搜索变慢,在这样的情况下,提出对词典进行适当地整理,将词典内的词按词长分块,以提高DGP系统分词效率,为搜索节约了时间,并且提高了搜索的准确率,达到了优化DGP系统的目的。

[1] 赵诗阳.DGP系统中基于库的垂直检索技术的优化[D].四川:四川大学,2011.

[2] 黄春毅.一种自适应搜索引擎的构建研究[J].情报检索,2006(02):163-164.

[3] 罗小虎.基于蚁群算法的汉语自动分词的研究与实现[D].江苏:苏州大学,2004.

[4] 向晖,郭一平,王亮.基于Lucene的中文字典分词模块的设计与实现[J].现代图书情报技术,2006(08):46-50.

[5] 吴瑞,周雪广.网上不良信息过滤系统研究[J].信息安全与通信保密,2005(08):104-106.

[6] 王科,高常波,翟雪峰,等.汉语分词的主要技术及其应用展望[J].通信技术,2003(06):12-15.

[7] 邹松.垂直搜索引擎中文分词技术的算法研究[J].计算机技术与发展,2012,22(02):131-133,137.

[8] 郭辉,苏中义,王文,等.一种改进的 MM分词算法[J].微型电脑应用,2002,18(01):13-15.

[9] 田占霄,韩宪忠,王克俭.一种改进的长词优先逆向最大匹配分词没消歧策略[J].河北农业大学学报,2009,32(04):100-102,107.

[10] 李航宇.有限域上的圆锥曲线的数乘运算(英文)[J].信息安全与通信保密,2007(08):64-65,69.

[11] 杜虎强,梁卫星,周杰.AKF与EFRLS在动态目标跟踪性能上的比较[J].通信技术,2009,42(11):208-210.

猜你喜欢
分词词典双向
双向度的成长与自我实现
出版人(2022年11期)2022-11-15 04:30:18
米沃什词典
文苑(2019年24期)2020-01-06 12:06:50
结巴分词在词云中的应用
智富时代(2019年6期)2019-07-24 10:33:16
评《现代汉语词典》(第6版)
词典例证翻译标准探索
值得重视的分词的特殊用法
一种软开关的交错并联Buck/Boost双向DC/DC变换器
一种工作频率可变的双向DC-DC变换器
电源技术(2015年9期)2015-06-05 09:36:07
基于双向预测的图像去噪
河南科技(2014年19期)2014-02-27 14:15:24
高考分词作状语考点归纳与疑难解析