SmartChineseAnalyzer 源码分析

Please Visit: http://ift.tt/1ajReyV



Chinse Tokenizer: SmartCN - Multi-Language Analysis in Solr

http://ift.tt/1aIdvem

这里有三个步骤,第一步是生成SegGraph,第二步则是创建BiSegGraph,第三步寻找最短路径作为结果。关于这里的两个图,可参考ICTCLAS的算法介绍中的相关部分。大致上,第一个图是所有可能的词,第二个图则是词与词之间可能的结合(有向图的路径)。这两个图中结点都有权重属性。后一个图的权重是根据两个词组合的频率经过平滑算法得出的。寻找最短路径其实就是在寻找最佳词语组合。



lucene smartcn原理(图文)

http://ift.tt/1iXJWHE

smartcn的核心:coredict用来存词,用来扩展单字。

Smartcn分词三步:1)原子切分;2)找出原子之间所有可能的组词方案;3)N-最短路径中文词语粗分三步。

Bigramdict用来存跳转频率。最后用最短路径算法求最佳切分方式。Bigramdict怎么来的,从训练语料里统计出来的。最短路径求解体现了一定的语义分析,代价就是Bigramdict需要训练。



Smartcn不能扩展词库,因为Bigramdict中没有对应的关联,如果要扩展得两个一起


http://www.it165.net/pro/html/201312/8171.html
2.smartcn为Lucene4.6版本自带(之前版本也有),中文分词不错,英文分词有问题,Lucene分词后变成了Luncn;
3.IKAnalyzer分词后的碎片太多,可以和人工分析效果做对比;
4.从自定义词库的角度考虑,因为smartcn在Lucene4.6中的版本,目前不支持自定义词库,成为致命缺陷,只能放


from Google Plus RSS Feed for 101157854606139706613 http://ift.tt/1aIdvem

via LifeLong Community

No comments:

Post a Comment