做好优化要懂得分词

来源:互联网 发布:aes加密算法原理java 编辑:程序博客网 时间:2024/06/13 09:21

分词准确性对搜索引擎来说十分重要。即使准确性再高,但如果分词速度太慢。对于搜索引擎来说也是不可用的因为搜索引擎需要处置数以亿计的网页,如果分词耗用的时间过长,会严重影响搜索引擎内容更新的速度。因此对于搜索引擎来说,分词的准确性和速度,二者都需要达到很高的要求。目前研究中文分词的大多是科研院校,清华、北大、中科院、北京语言学院、东北大学、 IBM 研究院、 微软 中国研究院等都有自己的研究队伍,而真正专业研究中文分词的商业公司除了海量科技以外,几乎没有了科研院校研究的技术,大部分不能很快产品化,而一个专业公司的力量终究有限,看来中文 分词技术 要想更好的服务于更多的产品,还有很长一段路。

信息的飞速增长。 Googl 百度、中国搜索等大型搜索引擎一直是人们讨论的话题。随着搜索市场价值的不时增加,使搜索引擎成为人们查找信息的首选工具。越来越多的公司开发出自己的搜索引擎,阿里巴巴的商机搜索、 8848 购物搜索等也陆续面世,自然,搜索引擎技术也成为技术人员关注的热点。

搜索引擎技术的研究。从最早的 Archie 后来的 Excite 以及 altvista overtur google 等搜索引擎面世,国外比中国要早近十年。搜索引擎发展至今,已经有十几年的历史,而国内开始研究搜索引擎是上世纪末本世纪初。许多领域,都是国外的产品和技术一统天下,特别是当某种技术在国外研究多年而国内才开始的情况下。例如 操作系统 字处理软件、 浏览器 等等,但搜索引擎却是个例外。虽然在国外搜索引擎技术早就开始研究,但在国内还是陆续涌现出优秀的搜索引擎,像百度( http://www.baidu.com 中搜( http://www.zhongsou.com 等。目前在中文搜索引擎领域,国内的搜索引擎已经和国外的搜索引擎效果上相差不远。之所以能形成这样的局面,有一个重要的原因就在于中文和英文两种语言自身的书写方式不同,这其中对于计算机涉及的技术就是中文分词。

什么是中文分词

众所周知。而中文是以字为单位,英文是以词为单位的词和词之间是靠空格隔开。句子中所有的字连起来才能描述一个意思。例如,英文句子 I am a student 用中文则为:一个学生 ” 计算机可以很简单通过空格知道 student 一个单词,但是不能很容易明白 “ 学 ” 生 ” 两个字合起来才表示一个词。把中文的汉字序列切分成有意义的词,就是中文分词,有些人也称为切词。一个学生,分词的结果是一个 学生。

中文分词和搜索引擎

中文分词到底对搜索引擎有多大影响?对于搜索引擎来说。因为在上百亿的网页中找到所有结果没有太多的意义,最重要的并不是找到所有结果。没有人能看得完,最重要的把最相关的结果排在最前面,这也称为相关度排序。中文分词的准确 否,经常直接影响到对 搜索结果 相关度排序。笔者最近替朋友找一些关于日本和服的资料,搜索引擎上输入 “ 和服 ” 得到结果就发现了很多问题。下面就以这个例子来说明分词对 搜索结果 影响,现有三个中文搜索引擎上做测试,测试方法是直接在 Googl http://www.google.com 百度( http://www.baidu.com 中搜( http://www.zhongsou.com 上以 “ 和服 ” 为关键词进行搜索: 分词技术 采用的美国一家名叫 Basi Technolog http://www.basistech.com 公司提供的中文 分词技术 百度使用的自己公司开发的 分词技术 中搜使用的国内海量科技( http://www.hylanda.com 提供的 分词技术 由此可见,就是由于分词的不准确所造成的通过笔者的解。中文分词的准确度,对搜索引擎结果相关性和准确性有相当大的关系。

前 20 条结果中有 14 条 和服一点关系都没有。第一页就有以下错误: 总共结果 507, Googl 上输入 “ 和服 ” 搜索所有中文简体网页。000 条。

通信信息报:瑞星以技术和服务开拓网络安全市场 ”

使用纯 HTML 通用数据管理和服务 - 开发者 - ZDNet ...

陈慧琳《心口不一》化妆和服装自己包办 ”

:: 外交部:中国境外领事维护和服务指南 ( 2003 年版 ) ...

产品和服务 ”

等等。第一页只有三篇是真正在讲 “ 和服 ” 结果。

前 20 条结果中有 6 条 和服一点关系都没有。第一页有以下错误: 总共结果为 287, 百度上输入 “ 和服 ” 搜索网页。000 条。

福建省晋江市恒和服装有限公司系独资企业 ”

关于商品和服务实行明码标价的规定 ”

青岛东和服装设备 ”

前 20 条结果都是 和服相关的网页。 总共结果为 26, 中搜上输入 “ 和服 ” 搜索网页。917 条。

这次搜索引擎结果中的错误。 Googl 中文

中文 分词技术

中文 分词技术 属于自然语言处置技术范畴。人可以通过自己的知识来明白哪些是词,对于一句话。哪些不是词,但如何让计算机也能理解?其处理过程就是分词算法。

现有的分词算法可分为三大类:基于字符串匹配的分词方法、基于理解的分词方法和基于统计的分词方法。

1 基于字符串匹配的分词方法 

这种方法又叫做机械分词方法。若在词典中找到某个字符串,依照一定的战略将待分析的汉字串 一个 “ 充分大的机器词典中的词条进行配。则匹配成功(识别出一个词)依照扫描方向的不同,串匹配分词方法可以分为正向匹配和逆向匹配;依照不同长度优先匹配的情况,可以分为最大(最长)匹配和最小(最短)匹配;依照是否 词性标注过程相结合,又可以分为单纯分词方法和分词 标注相结合的一体化方法。常用的几种机械分词方法如下:

1 正向最大匹配法(由左到右的方向)

2 逆向最大匹配法(由右到左的方向)

3 最少切分(使每一句中切出的词数最小)

还可以将上述各种方法相互组合。可以将正向最大匹配方法和逆向最大匹配方法结合起来构成双向匹配法。由于汉语单字成词的特点,例如。正向最小匹配和逆向最小匹配一般很少使用。一般说来,逆向匹配的切分精度略高于正向匹配,遇到歧义现象也较少。统计结果标明,单纯使用正向最大匹配的错误率为 1/169 单纯使用逆向最大匹配的错误率为 1/245 但这种精度还远远不能满足实际的需要。实际使用的分词系统,都是把机械分词作为一种初分手段,还需通过利用各种其它语言信息来进一步提高切分的准确率。

一种方法是改进扫描方式。优先在待分析字符串中识别和切分出一些带有明显特征的词,称为特征扫描或标志切分。以这些词作为断点,可将原字符串分为较小的串再来进机械分词,从而减少匹配的错误率。另一种方法是将分词和词类标注结合起来,利用丰富的词类信息对分词决策提供帮助,并且在标注过程中又反过来对分词结果进行检验、调整,从而极大地提高切分的准确率。

对于机械分词方法。这方面有专业的学术论文,可以建立一个一般的模型。这里不做详细论述。

2 基于理解的分词方法 

这种分词方法是通过让计算机模拟人对句子的理解。利用句法信息和语义信息来处理歧义现象。通常包括三个部分:分词子系统、句法语义子系统、总控部分。总控部分的协调下,达到识别词的效果。其基本思想就是分词的同时进行句法、语义分析。分词子系统可以获得有关词、句子等的句法和语义信息来对分词歧义进行判断,即它模拟了人对句子的理解过程。这种分词方法需要使用大量的语言知识和信息。由于汉语语言知识的笼统、复杂性,难以将各种语言信息组织成机器可直接读取的形式,因此目前基于理解的分词系统还处在试验阶段。

3 基于统计的分词方法 

从形式上看。因此在上下文中,词是稳定的字的组合。相邻的字同时出现的次数越多,就越有可能构成一个词。因此字 字相邻共现的频率或概率能够较好的反映成词的可信度。可以对语料中相邻共现的各个字的组合的频度进行统计,计算它互现信息。定义两个字的互现信息,计算两个汉字 X Y 相邻共现概率。互现信息体现了汉字之间结合关系的紧密水平。当紧密水平高于某一个阈值时,便可认为此字组可能构成了一个词。这种方法只需对语料中的字组频度进行统计,不需要切分词典,因而又叫做无词典分词法或统计取词方法。但这种方法也有一定的局限性,会经常抽出一些共现频度高、但并不是词的常用字组,例如 “ 这一 ” 之一 ” 有的许多的等,并且对常用词的识别精度差,时空开销大。实际应用的统计分词系统都要使用一部基本的分词词典(常用词词典)进行串匹配分词,同时使用统计方法识别一些新的词,即将串频统计和串匹配结合起来,既发挥匹配分词切分速度快、效率高的特点,又利用了无词典分词结合上下文识别生词、自动消除歧义的优点。

底哪种分词算法的准确度更高。不可能单独依靠某一种算法来实现,目前并无定论。对于任何一个成熟的分词系统来说。都需要综合不同的算法。笔者了解,海量科技的分词算法就采用 “ 复方分词法 ” 所谓复方,相当于用中药中的复方概念,即用不同的药才综合起来去医治疾病,同样,对于中文词的识别,需要多种算法来处理不同的问题。

分词中的难题

有了幼稚的分词算法。让计算机理解中文语言更是困难。中文分词过程中,否就能容易的解决中文分词的问题呢?事实远非如此。中文是一种十分复杂的语言。有两大难题一直没有完全突破。

 

1 歧义识别 

歧义是指同样的一句话。那么这个短语就可以分成 “ 外表的和 “ 外表的这种称为交叉歧义。像这种交叉歧义十分常见,可能有两种或者更多的切分方法。例如:外表的因为 “ 外表 ” 和 “ 面的都是词。前面举的和服 ” 例子,其实就是因为交叉歧义引起的错误。化妆和服装 ” 可以分成 “ 化妆 和服装 ” 或者 “ 化妆 和服 装 ” 由于没有人的知识去理解,计算机很难知道到底哪个方案正确。

交叉歧义相对组合歧义来说是还算比较容易处理。句子 “ 这个门把手坏了中,组合歧义就必需根据整个句子来判断了例如。把手 ” 个词,但在句子 “ 请把手拿开 ” 中,把手 ” 就不是一个词;句子 “ 将军任命了一名中将 ” 中,中将 ” 个词,但在句子 “ 产量三年中将增长两倍 ” 中,中将 ” 就不再是词。这些词计算机又如何去识别 ?

如果交叉歧义和组合歧义计算机都能解决的话。真歧义。真歧义意思是给出一句话,歧义中还有一个难题。由人去判断也不知道哪个应该是词,哪个应该不是词。例如:乒乓球拍卖完了可以切分成 “ 乒乓 球拍 卖 完 也可切分成 “ 乒乓球 拍卖 完了如果没有上下文其他句子,恐怕谁也不知道 “ 拍卖 ” 这里算不算一个词。

2 新词识别 

新词。但又确实能称为词的那些词。最典型的人名,专业术语称为未登录词。也就是那些在字典中都没有收录过。人可以很容易理解句子 “ 王军虎去广州了中,王军虎 ” 个词,因为是一个人的名字,但要是让计算机去识别就困难了如果把 “ 王军虎 ” 做为一个词收录到字典中去,全世界有那么多名字,而且每时每刻都有新增的人名,收录这些人名自身就是一项巨大的工程。即使这项工作可以完成,还是会存在问题,例如:句子 “ 王军虎头虎脑的中,王军虎 ” 还能不能算词?

新词中除了人名以外。而且这些又正好是人们经常使用的词,还有机构名、地名、产品名、商标名、简称、省略语等都是很难处理的问题。因此对于搜索引擎来说,分词系统中的新词识别十分重要。目前新词识别准确率已经成为评价一个分词系统好坏的重要标志之一。

中文分词的应用

目前在自然语言处置技术中。许多西文的处置方法中文不能直接采用,中文处置技术比西文处置技术要落后很大一段距离。就是因为中文必需有分词这道工序。中文分词是其他中文信息处置的基础,搜索引擎只是中文分词的一个应用。其他比如机器 翻译 MT 语音合成、自动分类、自动摘要、自动校对等等,都需要用到分词。因为中文需要分词,可能会影响一些研究,但同时也为一些企业带来机会,因为国外的计算机处置技术要想进入中国市场,首先也是要解决中文分词问题。中文研究方面,相比外国人来说,中国人有十分明显的优势。

原创粉丝点击