中文分词和二元分词综合对比

原创 2005年06月17日 13:12:00

中文分词和二元分词综合对比

 

           
    为了测试中文分词和二元分词的差异,现将初步的测试数据做了对比。关于二元分词可以参考车东先生的相关文章。
   

采用中文分词每1M产生1.55M的索引文件,膨胀率1.55;每1M用时大约10秒;采用二元分词每1M产生2.21M的索引文件,膨胀率2.21;每1M用时大约7秒;

从搜索结果来看,两者可以大致相同数量的搜索结果(显示结果根据相关度排列顺序不同)。    

对文本进行中文分词的目的是要提高文档检索的相关性,由于相关性的算法(如下图)涉及到很多因素,所以对二元切分和中文分词切分显示结果到底谁更相关(人理解的意义相关?),还无法得出结论。

相关度算法:

score(q,d) =

Σ

tf(t in d) * idf(t) * getBoost(t.field in d) * lengthNorm(t.field in d)

 * coord(q,d) * queryNorm(q)

t in q

 

 

       但有一点可以肯定,采用中文分词多花的解析中文时间可以带来丰厚的回报:索引文件和Term数量的大大减少。

可参考本文最后表格的图片对比。图中的数据是出现频率第100120Term情况,二元分词产生了大量的没有意义的Term

 

 

 

数据源大小(M

索引大小

膨胀率

Term个数

每兆Term个数

所用时间(秒)

/M

中文

14.20

22.50

1.584

76473.00

5385.42

105

7.394

二元

14.20

31.50

2.218

384488.00

27076.62

87

6.126

中文

4.73

7.54

1.594

84895.00

17948.20

50

10.570

二元

4.73

11.00

2.325

238064.00

50330.66

35

7.399

 

 

 

中文分词

二元分词

索引源大小

14.2M

14.2M

索引源内容

论坛某天全部发言

论坛某天全部发言

建立索引用时

105

87

索引文件大小

22.5M

31.5M

生成的Term

76473

384488   5.02倍)

文档数

6802

6802

搜索:XX

236 (搜索结果(条))

235(搜索结果(条))

XX

361

361

XX

769

768

XX

50

50

XX

41

41

XX

3

3

XX

0

0

最常出现的词:

Rank = 查询Text出现的次数

 

 

 

                                              作者:lhelper  我要去桂林

 

版权声明:本文为博主原创文章,在不删除、修改文章内容的情况下,可以自由转载。

相关文章推荐

wxWidgets中不断重绘矩形的方法

wxClientDC dc(tmpTmpstaticBitmap); wxPen pen(*wxBLACK, 1, wxDOT); dc.SetPen(pen); //以反逻辑函数绘制 ...

wxWidgets教程(3)- 窗口、对话框与控件

窗口简介 窗口、对话框与控件,其实都是一种窗体,窗口的特征一般有 1、客户区与非客户区。客户区不包括标题栏、菜单栏、状态栏和工具栏。 2、光标(wxCaret)与鼠标(wxCursor) 3、顶层窗口...
  • wyansai
  • wyansai
  • 2016年04月17日 19:04
  • 2343

Python分词模块推荐:jieba中文分词

一、结巴中文分词采用的算法 基于Trie树结构实现高效的词图扫描,生成句子中汉字所有可能成词情况所构成的有向无环图(DAG) 采用了动态规划查找最大概率路径, 找出基于词频的最大切分组合 ...

R语言︱文本挖掘之中文分词包——Rwordseg包(原理、功能、详解)

笔者寄语:与前面的RsowballC分词不同的地方在于这是一个中文的分词包,简单易懂,分词是一个非常重要的步骤,可以通过一些字典,进行特定分词。大致分析步骤如下: 数据导入——选择分词字典——分词...

中文分词实践(基于R语言)

背景:分析用户在世界杯期间讨论最多的话题。 思路:把用户关于世界杯的帖子拉下来,然后做中文分词+词频统计,最后将统计结果简单做个标签云,效果如下 后续:中文分词是中文信息处理的基础,分词之后,其实还有...

基于 Ansj 的 elasticsearch 2.3.1 中文分词插件

前言 这是一个elasticsearch的中文分词插件,基于Ansj中文分词。发起者Onni大神。 2.3.1插件安装 进入Elasticsearch目录运行如下命令 进入es目录执行...
  • zoubf
  • zoubf
  • 2016年07月12日 11:17
  • 1590

中文分词之Java实现使用IK Analyzer实现

IK Analyzer是基于lucene实现的分词开源框架,下载路径:http://code.google.com/p/ik-analyzer/downloads/list需要在项目中引入:IKAna...

用于Lucene的各中文分词比较

用于Lucene的各中文分词比较 作者: Claymore 时间: 2011-09-09 17:53:26 Arial Tahoma Verdana 宋体 楷体  字体减小 字体加大 ...

Python下的中文分词实现

Python下的中文信息处理的实现(一) 一 安装和测试Python下的中文分词工具 参考http://hi.baidu.com/fooying/item/6ae7a0e26087e8d7eb34c9...

总结:中文分词 Rworseg包的应用

前面安装了Rwordseg包,这个包的工作方式: “Rwordseg”在分词之前会去掉文本中所有的(中文)符号,这样就会造成原分开的句子前后相连,本来分开的两个字也许连在了一起。另外一个中文分词...
  • G090909
  • G090909
  • 2016年11月19日 22:04
  • 799
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:中文分词和二元分词综合对比
举报原因:
原因补充:

(最多只允许输入30个字)