中文信息检索引擎中的若干技术-centerforcombinatorics.docVIP

中文信息检索引擎中的若干技术-centerforcombinatorics.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
中文信息检索引擎中的若干技术-centerforcombinatorics

中文信息检索引擎中的若干技术 吴栋 滕育平 (南开大学组合数学研究中心 核心数学与组合数学教育部重点实验室 关键词 信息检索 搜索引擎 分词技术 检索技术 1 引言 随着社会的不断进步,特别是在互联网迅猛发展的今天,人们在不断地接触形形色色的信息,同时也要对这些信息进行过滤,从而提取出对自己真正有用的内容。为了达到这个目的,人们开发出了众多的检索引擎,有针对Web进行搜索的Goolge、百度等,也有针对各行业开发的专题检索系统。目前,国内的每个行业、领域都在飞速发展,这中间产生了大量的中文信息资源,为了能够及时准确的获取最新的信息,中文检索引擎是必然的产物。中文检索引擎与西文检索引擎在实现的机制和原理上大致雷同,但由于汉语本身的特点,必须引入对于中文语言的处理技术,而中文分词技术就是其中很关键的部分。 2 中文检索引擎的基本原理 常见的中文检索引擎主要完成两方面的任务: 1.信息的规范化。将搜集来的信息按照一定的方式进行组织管理,使之成为可以高效检索的信息库。 2.信息的检索和表达。以索引好的信息库作为信息基础,利用信息库已被索引的特点,实施快速检索,同时根据用户的需求将检索结果进行输出。 其中,信息的规范化包括分词和索引(以及资料的搜集和整理)、更新(维护)两部分;信息的检索包括搜索、结果输出两部分。整个信息处理和检索过程如图1所示: 3 中文分词技术 3.1 汉语的特点 词是最小的、能独立活动的、有意义的语言成分。英语文本是小字符集上的已充分分隔开的词串,而汉语文本是大字符集上的连续字串。如果不切词(按字检索),当检索德国货币单位马克时,就会把马克思检索出来,而检索华人时会把中华人民共和国检索出来。进行切词,大大提高检索的准确率。《信息交换用汉字编码字符集--基本集》统计结果表明,单纯使用正向最大匹配的错误率为1/169,单纯使用逆向最大匹配的错误率为1/245。 一层存储所有单字。第二层保存所有的双字词和多字词的前两个字(因为,也许会出现ABC为词,但AB不是词的情况),并对两者做不同标记(t/f)。每一个可成词的单字对应一系列第二层结点,用来存储所有以该字为词首的双字(包括上述两种情况)。并且,在这里,针对每一个双字,需要记录以该双字为词首的所有词的最大长度,实际中,可以保存除去该双字部分的最大长度(记为n)。第三层存储以某一双字为首的所有词。为了减少存储空间,只存储除去该双字以外的部分(如上图所示)。每一层各结点需按某种次序排列,可使用hash、二分查找等方法进行查询。采用这种层次的存储结构,可以很快把查询词的工作缩小到一个很小的范围内,有利于分词效率的提高。 3.3.2 匹配方法(MM方法) 由于词库中的最大词长通常大于所切分出的词长,为了提高切分的效率,不采用逐次减一个字的方法,而是使用正向逐一增长的方法。 假设对一个句子C1C2……进行分词处理,算法描述如下: 1) 两个字(开始时为C1C2),在词典中查询C1C2是否存在 2) 不存在,则C1为单字词,一次分词结束,返回1。 3) 存在,判断C1C2是否为词,并从词典中获取该词下层节点汉字的最大长度,设为n 4) 若n=0,一次分词结束,保存结果。 5) 否则,i=2,转6)。 6 ) i=i+1,若i=n+3,转8);否则,转7)。 7) 再取一个字(此处为Ci),判断第三层中是否有以C3……Ci开始的字(不需要恰好匹配,只要匹配开始的i个字就可以了)。 8) 若存在,分词结束,返回最近一次能够恰好匹配的C3……Cj(ji),并与C1C2组合成词。如果是C1C2,则根据C1C2的标记判断是双字词还是分为两个单字词。 9) 否则,转6)。 3.3.3 歧义词处理 汉语中的歧义结构主要有两种:交集型歧义和组合型歧义。据统计,汉语中的交集型歧义字段约占全部歧义字段的90%。所以,处理好交集歧义字段在很大程度上能保证一定的分词精度。鉴于汉语中多数的词组、短语为偏正结构,中心词在后,而修饰词在前,故而在进行歧义校正时,我们让交集歧义字优先与右边的子段组成词,而其余的字段则尽可能的向左组词。 设C1C2……Cn是连续型交叉歧义字段,具体的歧义校正策略如下: A.主导策略 1) 指针移向Cn,调用分词算法对以Cn为首字的词进行查找。 2) 若句子中Cn可以和后面的字构成词(设Cn……Cm为构成的最长词),则对Cn进行标记。 3) 移向Cm,继续对Cm进行处理,方法类似于2),直到找到没有歧异的词为止。 4) 不妨设Cm与其后的字不成词,此时让Cn优先与右边的子段组成词,即切分Cn……Cm为一词。 5) 对Cn之前的部分做最大正向匹配,歧义处理结束。 B.辅助策略 在汉语中许多字是多义字,由于上下文环境的不同,这些字既可以作为只具语法意义或

文档评论(0)

maritime5 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档