`
coolpep
  • 浏览: 77662 次
社区版块
存档分类
最新评论

搜索引擎的中文分词技术

阅读更多

搜索引擎的中文分词技术

中文自动分词是网页分析的基础。在网页分析的过程中,中文与英文的处理方式是不同的,这是因为中文信息与英文信息有一个明显的差别: 英文单词之间有空格,而中文文本中词与词之间没有分割符。这就要求在对中文网页进行分析之前,先要将网页中的句子切割成一个个的词的序列,这就是中文分词。中文自动分词涉及到许多自然语言处理技术和评价标准,在搜索引擎中,我们主要关心中文自动分词的速度和准确度。分词准确性对搜索引擎来说十分重要,但如果分词速度太慢,即使准确性再高,对于搜索引擎来说也是不可用的,因为搜索引擎需要处理数以亿计的网页,如果分词耗用的时间过长,会严重影响搜索引擎内容更新的速度。因此,搜索引擎对分词的准确性和速度都提出了很高的要求。

目前,中文自动分词比较成熟的技术是基于分词词典的机械分词方法。这种方法是按照一定的策略将要分析的汉字串与词典中的词条进行匹配。根据匹配策略的不同,机械分词方法又有如下几种算法: 正向最大匹配算法、逆向最大匹配算法、最少分词算法等。这种方法的优点是分词的速度快,准确度有一定的保证,但对未登录词的处理效果较差。实验结果表明: 正向最大匹配的错误率为1/169左右,逆向最大匹配的错误率为1/245左右。另一种比较常用的中文自动分词方法是基于统计的分词方法,这种方法是对语料中的字组频度进行统计,不需要切分词典,因此也称为无词典分词方法。但该方法经常把不是词的常用字组当成词,对常用词的识别精度较差,时空开销也比较大。在搜索引擎领域的实际应用中,一般将机械分词方法与统计分词方法相结合,先进行串匹配分词,然后使用统计方法识别一些未登录的新词,这样既发挥了匹配分词速度快、效率高的优势,又利用了统计分词中新词自动识别和自动消除分词歧义的特点。

分词词典是影响中文自动分词的一个重要因素,其规模一般在6万条词左右,词典太大或太小都是不合适的; 辞典太小,有些词切分不出来,辞典太大,切分过程中起义现象将大大增加,同样影响分词的精度。因此,分词词典中词条的选择是非常严格的。对于不断出现新词的网络领域,仅仅使用6万条词左右的分词词典是不够的,但随意向分词词典中加入新词将导致分词精度下降,一般的解决方法是使用辅助词典,其规模在50万词条左右。另外,中文自动分词的难点在于分词歧义的处理和未登录词的识别,如何处理这两个问题一直是该领域研究的热点。

1、歧义处理
歧义是指可能有两种或者更多的切分方法。例如: “表面的”这个词组,因为“表面”和“面的”都是词,那么这个短语就可以分成“表面+的”和“表+面的”。这种称为交叉歧义。像这种交叉歧义十分常见,“化妆和服装”可以分成“化妆+和+服装”或者“化妆+和服+装”。由于没有人的知识去理解,计算机很难知道到底哪个方案正确。

交叉歧义相对组合歧义来说是还算比较容易处理,组合歧义就必须根据整个句子来判断了。

例如,在句子“这个门把手坏了”中,“把手”是个词,但在句子“请把手拿开”中,“把手”就不是一个词; 在句子“将军任命了一名中将”中,“中将”是个词,但在句子“产量三年中将增长两倍”中,“中将”就不再是词。这些词计算机又如何去识别?

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

对歧义现象的处理方法一般采用类似于动态规划的算法将歧义问题的求解转化为一个优化问题的求解。在求解过程中,一般使用词频或概率等辅助信息求得一个最大可能的分词结果,这个结果在某种意义下是最佳的。

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

未登录词中除了人名以外,还有机构名、地名、产品名、商标名、简称、省略语等都是很难处理的问题,而且这些又正好是人们经常使用的词,因此对于搜索引擎来说,分词系统中的新词识别十分重要。目前,对未登录词的处理一般采用统计的方法,首先从语料中统计出出现频率较高的字组,然后按照某种规则把它们作为新词添加到辅助词典中。

目前,中文自动分词技术在搜索引擎中已经得到广泛应用,分词准确度已经达到96%以上,但是在对大规模网页进行分析处理的时候,现有的中文自动分词技术还存在许多不足,例如上面提到的歧义问题和未登录词的处理问题等。因此,国内外的科研院校,如北大、清华、中科院、北京语言学院、东北大学、IBM研究院、微软中国研究院等都一直关注并研究中文自动分词技术,这主要是因为网络上的中文信息越来越多,对网络上的中文信息的处理必将成为一个巨大的产业和广阔的市场,存在无限的商机。但是,中文自动分词技术要想更好地服务于网络中文信息的处理并形成产品,还要在基础研究方面和系统的集成方面做许多工作。

分享到:
评论

相关推荐

    搜索引擎技术 中文分词搜索引擎程序

    冒死分享别人的搜索引擎技术,搜索引擎介绍.不错的资源,和大家分享.

    php搜索引擎中文分词例子

    说明:本技术用于搜索引擎中文分词 程序使用自建词库,存储15多万(免费版10万左右)词,未压缩词库仅1.13M 程序自动过滤了诸如:█♀♂卍※ 平均每个词查找词库次数为2 使用分词类中的add_word方法可以很轻易扩展词库,...

    c#中文分词类库 可用来做搜索引擎分词 准确率90% 支持Lucene.net

    c#中文分词类库 可用来做搜索引擎分词 准确率90%,提供Lucene。net的支持

    中文搜索引擎的分词技术百度的分词技术分析

    主要讲解了中文分词技术原理 <br>和 百度的分词技术分析

    中文分词技术 源代码 对于搜索引擎爱好者相当有用

    用于解析文章内容的分词技术,只需要懂得如何调用即可,附源代码

    毕业设计 基于Ansj中文分词技术的关键词抽取+爬虫的搜索引擎源码+部署文档+全部数据资料(优秀项目)

    毕业设计 基于Ansj中文分词技术的关键词抽取+爬虫的搜索引擎源码+部署文档+全部数据资料(优秀项目)毕业设计 基于Ansj中文分词技术的关键词抽取+爬虫的搜索引擎源码+部署文档+全部数据资料(优秀项目)毕业设计 ...

    中文搜索引擎技术-解密分词技术.rar

    价值5000元SEO网站推广软件SEO学习资料打包促销\价值5000元SEO网站推广软件SEO学习资料打包促销\seo学习资料\seo学习资料\中文搜索引擎技术-解密分词技术.rar

    全文检索服务中文分词技术

    IKAnalyzer是一个开源的,基于java语言开发的轻量级的中文分词工具包。 庖丁中文分词库是一个使用Java开发的,可结合到Lucene 应用中的,为互联网、企业内部网使用的中文搜索引擎分词组件。

    搜索引擎技术基础.ppt

    1、搜索引擎技术来源于全文检索系统,搜索引擎是全文检索技术最重要的一个运用. 2、搜索引擎在数据总量,最大并发处理能力,单次查询速度方面,都远远强大于全文检索系统. 3、搜索引擎为了最求最高的查询速度,在搜索...

    spark实现财经新闻搜索引擎(正文提取、中文分词、倒排索引构建、执行搜索)

    财经新闻搜索引擎 从财经新闻网页数据开始,进行正文提取、中文分词、倒排索引构建、执行搜索和UI。 要求技术:MapReduce或Spark;执行搜索和UI采用Spark或Java 步骤: (1)新闻正文提取,采用正则表达式提取指定...

    大数据时代背景下的搜索引擎解决方案-大数据搜索引擎原理分析及实现

    着重介绍了机器 学习在搜索引擎中的应用,包括中文分词、 聚类、分类等核心的机器学习算法及大数据给 搜索引擎带来的新特性,结合目前大数据分 析的主流工具,在搜索引擎中构建知识图谱,以 及进行日志反馈学习机制...

    中文搜索引擎技术

    内含: 中文搜索引擎技术揭密:系统架构.doc 中文搜索引擎技术揭密:网络蜘蛛.doc 中文搜索引擎技术揭密:排序技术.doc 中文搜索引擎技术揭密:中文分词.doc

    搜索引擎核心技术总体介绍

    搜索引擎关键技术总体介绍,共分为一、搜索引擎总体介绍;二、爬虫技术介绍;三、中文分词和排序算法介绍;四、查询/存储技术、Cache Server介绍;五、内部、外部监控系统介绍;六、移动通信运营商搜索引擎独特优势

    横瓜垂直搜索引擎V3.2-横瓜Windows平台的垂直搜索引擎

    横瓜垂直搜索引擎分词速度约为 2500万字/分钟,约占99.984%的关键词检索时间小于0.001秒。横瓜垂直搜索引擎的PC硬件配置, 仅需要700M内存、空闲硬盘10G、文件系统NTFS。横瓜垂直搜索引擎采用横瓜分布式Map数据库技 ...

    垂直搜索引擎的设计与实现

    论文研究了搜索引擎的相关技术,通过分析基于查询串方式的搜索引擎和分类目录式搜索引擎的整体结构,设计了垂直搜索引擎的系统结构,并对其中涉及的关键技术:触b搜集器、信息抽取技术、中文分词和检索技术进行了深入...

    基于Java的搜索引擎Nutch中文搜索技术研究

    摘要:Nutch是一个优秀的基于Java的开放源码搜索引擎,为了使它能够支持中文搜索,本文在分析了Nutch结构的基础上,采用词表分词技术和前向匹配分词算法对中文信息进行分词,以JavaCC脚本实现上下文相关文法中文分析...

    基于Nutch中文分词的研究与实现

    作为舆情监测系统的一部分,本文的目标是基于Nutch,同时,结合目前最常用中文分词技术,根据不同的中文分词方法,实验并得出不同分词方法在性能以及使用环境上的优缺点,以此为舆情监测系统选择合适的中文分词方法...

    极速分词免费Windows版

    经过连续多届国际中文分词评测,由字构词的分词方法获得了压倒性优势,极速分词采用由字构词技术路线,同时优化了分词速度,使得极速分词引擎具备了分词速度快和分词精度高的双重优势。 免费版性能指标 分词速度:...

    走进搜索引擎(上) 梁斌 编著 上中下

     第一节什么是搜索引擎  第二节搜索引擎的发展简史  搜索引擎的发展历史  第三节搜索引擎大事快览  第四节国内著名搜索引擎  百度(www.baidu.com)  中搜(www.zhongsou.com)  天网(e.pku.edu.cn...

Global site tag (gtag.js) - Google Analytics