码迷,mamicode.com
首页 > 其他好文 > 详细

关于目前分词的想法

时间:2014-06-27 07:07:34      阅读:203      评论:0      收藏:0      [点我收藏+]

标签:使用      问题   算法   一个   c   

目前分词性能比较差,只有1.65M/s,同事在没有改变主要算法的情况下做了一点优化调整,到3.52M/s,但对性能的提升仍然不够明显。我感觉亟须解决几个问题:

1.search时keyword分词也按多种粒度进行,然后分别sloppyphrase,最后or起来,由于大粒度分的词词频低,因此idf大,它们在排序时优先级更高,符合期望。现在只做一个粒度的切法,又要求在索引里面都能找到,感觉不太现实。改动之后的做法对索引时分词没有苛求,相对来说增加的开销也不会很大,可能就三个粒度的分词,只是如果排序没有考虑的话需要更高一些排序的做法。查全率、召回率都会更高。这样索引分词就专注在按不同粒度切好词即可,不用在切完之后再考虑合并之类复杂奇怪的逻辑,可以追求更高的性能。

2.统一使用trie树(或fst)做检索,trie树也可以定时更新,杜绝用hash做前缀查询,trie树相当于状态机性能更好。

3.建立性能、准确率、召回率的指标,目前算法比较复杂,如果有其他算法综合起来更优,可以替换。

4.目前increment gap没有考虑,不够严谨,可能会出错。


关于目前分词的想法,布布扣,bubuko.com

关于目前分词的想法

标签:使用      问题   算法   一个   c   

原文地址:http://blog.csdn.net/jollyjumper/article/details/34970039

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!