`
hupy
  • 浏览: 188849 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

分析百度的中文分词结果

阅读更多

本结果是基于20000次以上的搜索分析百度而的来的,如有不当请指正,希望我们能够一起来揭开百度分词的面纱。

在大家的心目中可能百度的分词是极其复杂的,他代表了中国分词领域的最高水平,其实不然,简单最好,裸体最美,当我们拨下百度的衣服,既然会发现百度的分词是如此的简单,可能正应了一个名人的某一句话:当用户输入查询关键字的时候我们要准确的知道用户在想什么!这正是百度所追求的,他把所有的工作都放在了处理用户查询关键字的时候。

本分析结果也是无意得到的。www.sj110.com搜价110是Handsome man Eunge带领下的一个项目,因我是pwqzc老鼠,老鼠吗,就是打点小洞,所以我负责词库这一块,为了词库的精确,在处理词库的时候经常查询百度,查多了,想多了,问题就出来了,竟然发现对百度的分词稍微有了点了解,这个是我无意撞上的,就如一个送水的汉子,碰上了一个要水的少妇,而这个少妇的男人三年前出门至今未归,此MM鸡渴难耐,于是和那个送水的汉子发生了不该发生的事,呵呵,都是撞上的。

下面是我的一些分析结果,凡是我可以肯定的,我都注明了。

1.百度的蜘蛛爬到的文档索引入库的时候是只进行了简单的分词处理(我可以肯定),也就是只是简单的把中文单个字单个字的分开,要证明这点很简单,你只需要搜索“地”或者“书”或者“脑”。。。。。。等单个词就可以了,当然,你也可以找一些莫名其妙的两个字或者三个字组合在一起搜索百度看,你就会明白他入库的时候只进行了简单的把单个中文分开的处理。他把复杂的分词逻辑放到了处理用户输入查询关键字的时候。仔细一想,其实这样做能够最大限度的消除歧义!!!

2.当用户输入两个字和三个字的词进行搜索的时候百度也没有进行任何处理的(我可以肯定),也只是把他们简单的按照单个字分开,然后查询的时候条件是这两个字或者这三个字必须连接在一起,中间没有任何其他的字。要证明这点也很简单,大家只要输入任意两个字的词或者三个字的词进行搜索就可以了,甚至你可以搜索“甘新哦”,“春天气”,“哦人无”等毫无意义的词进行查询,看是不是出来的搜索结果要么是没有找到任何内容,要么是包括你输入了的任何字,而且这些字都是连接在一起的,虽然这些字他们之间的组合是毫无意义,这也同时证明了百度在索引入库的时候是只进行了简单的按照单个中文分开。

3.百度如何处理四个字?我们输入“李宇春天”搜索,结果是被分成了“李宇”和“春天”,这给我们带来了两个疑问:第一,如果李宇春已经收录到了词典里面,那么肯定肯定百度是正向分词。第二,如果李宇春没有被收录到词典里面,那么可能是正向分词也可能是逆向分词。那么到底是那种呢?我们先判断百度处理查询关键子的时候是逆向分词还是正向分词。我们再输入“笔畅通行”来搜索他被分成了“畅通”,我想笔畅应该不会被收进词典,按此分析应该是正向分词;我们再输入“笔畅通知”,很明显被分成了“笔畅”和“通知”,这看起来是逆向分词的结果,如果是正向的话那也会被分成“畅通”的;我们再输入“桃李宇春”搜索,结果被分成了“桃李”和“宇春”,这看起来象正向分词,当然这也不能够证明就是逆向,因为如果李宇春没有收进词典,这逆向分词也会得到同样的结果。那么百度到底是正向还是逆向呢?我们抛开名字吧,因为我们还不感肯定象李宇宙春之类的词是不是在百度的词典里面,现在我们输入“神彩票啊”,很明显被分成了“彩票”,再输入“光彩票啊”,很明显也被风成了“彩票”,再输入“啊中国家”,结果被分成了“国家”,再搜索 “啊国家庭”,被风成了“家庭”,我们再输入“风岁月亮”搜索,被分成了风岁和月亮,再输入“风岁月球”,被分成了“分”,“岁月”和“球”,再输入“风岁月份”,被分成了“分色”和“月份”,这样的结果看起来真的很让我们郁闷!!!极度郁闷!!更郁闷的是还在后头啊,我输入“笔畅通过”搜索,第一次的所有结果是全部把这四个字搜索出来,而且他们都是连接在一起的,而且这四个字之间没有任何其他的字!!但是我们过几分钟再次搜索,结果竟然截然不同!!! “笔畅通过”被分成了“畅通”!!!!这里我不敢乱下结论,如果是我,那我应该怎么样去处理四个字的关键字呢?

一,首先取这四个字去匹配词典,如果匹配成功,则查询条件如ABCD,返回的结果必须包含ABCD,且ABCD必须连接在一起,中间没有任何其他字,在这里我首先假设索引入库的时候是只进行了简单的按照单个字切分,且搜索的时候能够判断索引文件里的A/B/C/D等文字中间有没有其他的文字。

二,如果一匹配不成功,则截取前面两个字匹配词典,如果匹配成功,则如ABCD分成AB/CD,查询结果必须包含AB和CD,AB之间不能够有其他文字,CD之间也不能够有其他文字,AB和CD之间可以出现其他文字;查询结果可以包含ABCD全部连接在一起四个字之间没有其他文字的结果,且其排序优先于AB/CD。

三,如果二匹配不成功,则截取最后面两个字匹配字典,如果匹配成功,采取和上面二一样的做法。

四,如果三匹配不成功,则截取中间两个字匹配词典,如果匹配成功,则如ABCD查询的结果里面必须BC,且BC之间没有其他文字,结果也可以包含BCD,结果也可以包含ABC,结果也可以包含ABCD,结果排序优先规则(从最优开始):ABCD全部连接在一起的结果------BCD全部连接在一起的结果或ABC全部连接在一起的结果------BC全部连接在一起的结果。

五, 如果四匹配不成功,则可以肯定他是地名人名或者其他专有名词或者这四个字连起来没有任何意义,则采用一的方法。

暂时写到这吧,其他的慢慢来

 

来源:http://www.cnblogs.com/pwqzc/archive/2006/04/17/376832.aspx

分享到:
评论

相关推荐

    百度中文分词词库

    "百度中文分词词库"是一个专门用于分词的资源,它包含了大量的词汇及其组合方式,为精确地将连续的汉字序列分割成具有语义意义的词语提供了基础。 首先,我们要理解什么是中文分词。由于中文句子没有明显的空格来...

    baidu.rar_ baidu_dictionary_中文分词_中文分词 词典_分词词典

    在没有上下文的情况下,中文的连续字符序列可能有多种分词方式,词典提供了一种规则,帮助确定最合理的分词结果。百度的中文分词词典因其广泛的应用和高准确率而备受推崇,它包含了大量的常用词汇和专有名词,覆盖了...

    jieba+百度分词词库

    《jieba+百度分词词库:中文分词与情感分析的应用》 在现代的自然语言处理(NLP)领域,中文分词是一项基础且关键的任务。jieba,作为一个广泛使用的开源Python库,为中文文本处理提供了强大的支持。它以其高效、...

    百度分词技术详细解析

    总的来说,百度分词技术是其搜索帝国的重要基石,不断优化的分词系统确保了百度在中文信息处理领域的领先地位。随着人工智能的发展,我们可以期待百度在分词技术上取得更多突破,推动整个行业向前发展。

    jieba+百度分词词库(60万+)

    《jieba+百度分词词库(60万+)》是一个专门为中文文本处理设计的资源包,它结合了jieba分词库与百度分词词库的优势,为中文信息处理提供了一个强大的工具。jieba是一个广受欢迎的Python库,专用于中文分词,而百度...

    baidu.rar_baidu_中文 词库_中文信息处理_分词_词库

    总的来说,百度分词词库是中文信息处理领域的重要工具,它的存在极大地推动了中文文本分析技术的发展。通过合理利用这个词库,开发者能够构建出更高效、准确的中文处理系统,服务于各种应用场景,如搜索引擎优化、...

    自然语言处理分词_中文分词词库整理百度分词词库.txt

    在本文件中提到的“百度分词词库.txt”,表明了该词库是百度公司为了实现其自然语言处理系统中的中文分词而整理的。百度作为中国的互联网公司巨头,其搜索引擎业务使得其在自然语言处理技术上积累了大量的资源和经验...

    基于百度云的自然语言处理-分词-示例

    通过学习这个示例,开发者不仅可以了解百度云自然语言处理API的基本用法,还能深入理解分词、词法分析和命名实体识别在实际应用中的操作流程。这对于开发依赖于自然语言处理技术的应用,比如聊天机器人、文本分类...

    有关百度中文分词系统分析.doc

    有关百度中文分词系统分析.doc

    百度(baidu)分词算法分析

    百度的分词算法是通过对查询字符串的分析和处理来实现的,包括对中文字符串的分割、对英文单词的处理等步骤。通过这些步骤,百度可以更好地理解用户的查询意图,并提供更加accurate的搜索结果。

    C#中文分词源码

    在IT领域,中文分词是自然语言处理(NLP)中的关键步骤,它涉及到将连续的汉字序列切分成有意义的词语单元,这对于信息检索、文本分析、机器翻译等多个应用场景至关重要。"C#中文分词源码"是一个专门针对C#编程语言...

    中文分词词库大全词库

    5. **自然语言理解(NLU)**:在NLU任务中,如问答系统、对话管理等,精确的分词结果是理解文本语义的基础。 ### 结论 该中文分词词库大全词库包含了丰富的地名与机构名信息,对于从事NLP研究和开发的人员来说是非常...

    百度seo分词技术 seo seo优化 seo分词技术

    分词技术是指将连续的汉字序列切分成有意义的词语单位,这是中文信息处理的基础步骤。搜索引擎在索引网页内容时,首先会进行分词,以便更准确地理解文本内容并建立索引。对于SEO来说,正确地进行分词可以影响关键词...

    百度分词词库

    从给定的文件信息来看,标题“百度分词词库”和描述“据说是百度分词词库~”以及标签“分词、百度、词库”都指向了关于百度分词技术的相关内容。分词是自然语言处理(NLP)中的一个基础且重要的环节,尤其是在中文...

    中文分词中文切词分词

    - **输出模块**:输出最终的分词结果。 ##### 8.2 具体模块设计 每个模块的具体设计包括: - **输入模块**:支持多种文本格式的读取。 - **预处理模块**:去除无用符号、数字等。 - **分词模块**:集成多种分词算法...

    lucene.NET 中文分词

    中文分词是将连续的汉字序列切分成具有语义的词语的过程,是自然语言处理(NLP)中的基础步骤。在Lucene.NET中,为了支持中文分词,通常需要结合第三方分词器,如IK Analyzer、HanLP、jieba.NET等。这些分词器具备...

    百度分词算法分析.rar

    联合条件随机场(CRF)进一步优化了标签序列的预测,确保了整体分词结果的连贯性。 五、优化与挑战 面对海量的互联网数据和不断涌现的新词,百度分词算法需要具备实时更新、高并发处理和高效学习的能力。同时,...

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

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

Global site tag (gtag.js) - Google Analytics