SkyLightAnalyzer(天亮分词器)小结

    一直以来想写个自己的中文分词器,从2013年5月份写了基于二分插入、双数组算法实现的中文粗分词,之后由于各种原因未能进一步完善达到一个标准分词器的水准,自上周从公司离职后,历经一周的努力,并在ansj分词的辅助参考下,终于取得了不错的突破,希望有对这块感兴趣的同学可以在此互相交流。

     现在分词达到的基本要求是:

  

1、基于双数组结构实现的机械分词

2、词条删除与增加、以及对已有词条的缓存读写。

3、词意消歧的处理,包括n-gram和词性的总词频数的两个因子,效果已达到。

4、词性标注在词意消歧的基础上,用viterbi算法取最优路径,达到预定效果。

5、分词准确率约为94%以上,分词速率为50万字/秒,暂味在此着重优化,还有很大提升空间,到100万字是肯定有把握的。

6、新词发现放于下阶段去实现。


有想法的同学可以和我联系,我也会不定期的将开源版本放到  http://github.com/erliang20088。

下一段会写将SkyLightAnalyzer分词器放到最新版的Lucene4.5中的接口设计与实现。

你可能感兴趣的:(java,算法,中文分词器)