中文分词和二元分词综合对比
为了测试中文分词和二元分词的差异,现将初步的测试数据做了对比。
采用中文分词每1M产生1.55M的索引文件,膨胀率1.55;每1M用时大约10秒;采用二元分词每1M产生2.21M的索引文件,膨胀率2.21;每1M用时大约7秒;
从搜索结果来看,两者可以大致相同数量的搜索结果(显示结果根据相关度排列顺序不同)。
对文本进行中文分词的目的是要提高文档检索的相关性,由于相关性的算法(如下图)涉及到很多因素,所以对二元切分和中文分词切分显示结果到底谁更相关(人理解的意义相关?),还无法得出结论。
相关度算法:
但有一点可以肯定,采用中文分词多花的解析中文时间可以带来丰厚的回报:索引文件和Term数量的大大减少。
可参考本文最后表格的图片对比。图中的数据是出现频率第100至120个Term情况,二元分词产生了大量的没有意义的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 我要去桂林