多语言展示
当前在线:460今日阅读:23今日分享:25

ElasticSearch学习--中文分词器ik的配置与使用

前面介绍的ElasticSearch中多个内置分词器对中文文本的分词效果都无法应对生产环境,使用插件安装的 icu analyzer 的效果也差强人意(相关信息可以参考如下经验引用),本篇经验继续分享另一个相对而言更好用的中文分词器 ik 。 0ElasticSearch学习--分词器的介绍和使用(一)0ElasticSearch学习--分词器的介绍和使用(二)
工具/原料

ElasticSearch, Kibana

方法/步骤
1

首先在网上搜索并下载ElasticSearch对应的 ik 分词器插件,下载后解压,并将目录拷贝到ElasticSearch根目录下的 plugins 子目录中。

2

重新启动 ElasticSearch 服务,在启动过程中,你可以看到正在加载'analysis-ik'插件的提示信息,服务启动后,在命令行运行 elasticsearch-plugin list 命令,确认 ik 插件安装成功。

3

在 kibana 中测试 ik 分词器,并就相关分词结果和 icu 分词器进行对比。ik 目前提供了两种分词器 ik_max_word 和 ik_smart  ik_max_word : 细粒度分词,会穷尽一个语句中所有分词可能ik_smart :  粗粒度分词,优先匹配最长词 图1示,ik_max_word 对“共青团员”的分词效果,分了4个细粒度的词 图2示,ik_smart 对“共青团员”的分词效果,只有1个词

4

ik 与 icu 两个中文分词器的效果对比图1示:icu分词器对“说的确实在理”的分词效果图2示:ik细粒度分词器 ik_max_word 对“说的确实在理”的分词效果图3示:ik粗粒度分词器 ik_smart 对“说的确实在理”的分词效果从最终分词效果上看,ik 两个分词器都比 icu 略好,但也存在切词位置不当的问题。

推荐信息