赞
踩
常用的中文分词器
Smart Chinese Analysis:官方提供的中文分词器,不好用。
IK Analyzer:免费开源的java分词器,目前比较流行的中文分词器之一,简单、稳定,想要特别好的效果,需要自行维护词库,支持自定义词典。
结巴分词:开源的python分词器,github有对应的java版本,有自行识别新词的功能,支持自定义词典。
Ansj中文分词:基于n-Gram+CRF+HMM的中文分词的java实现,免费开源,支持应用自然语言处理。
hanlp:免费开源,国人自然处理语言牛人无私奉献的。
对以上分词器进行了一个粗略对比:
分词器 | 优势 | 劣势 |
---|---|---|
Smart Chinese Analysis | 官方插件 | 中文分词效果惨不忍睹 |
IK Analyzer | 简单易用,支持自定义词典和远程词典 | 词库需要自行维护,不支持词性识别 |
结巴分词 | 新词识别功能 | 不支持词性识别 |
Ansj中文分词 | 分词精准度不错,支持词性识别 | 对标hanlp词库略少,学习成本高 |
Hanlp | 目前词库最完善,支持的特性非常多 | 需要更优的分词效果,学习成本高 |
截止到目前为止,他们的分词准确性从高到低依次是:
hanlp > ansj > 结巴 > IK > Smart Chinese Analysis
结合准确性来看,选用中文分词器基于以下考虑:
List item
官方的Smart Chinese Analysis直接可以不考虑了
对搜索要求不高的建议选用 IK 学习成本低,使用教程多,还支持远程词典
对新词识别要求高的选用结巴分词
Ansj和hanlp均基于自然处理语言,分词准确度高,活跃度来讲hanlp略胜一筹
IK Analyzer
截止目前,IK分词器插件的优势是支持自定义热更新远程词典。
IK分词器的劣势: ik_max_word是穷举所有可能词,导致搜索一些不相关的也会被搜到。
比如:
‘任性冲动过’分词结果居然有任性、性冲动、动过,那么搜’性冲动’就会把这个doc搜索到。
南京市长江大桥’,结果是南京市、市长、长江大桥,那么搜’市长’也会把这个doc搜索到。
IK分词器的github地址:
https://github.com/medcl/elasticsearch-analysis-ik
hanlp 中文分词器
hanlp中文分词器的官网为:
https://www.hanlp.com/
hanlp中文分词器的github地址为:
https://github.com/hankcs/HanLP
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。