Windows环境IK分词器安装教程

71 阅读2分钟

@[toc]

前言

分词是把一段中文或者别的划分成一个个的关键字,我们在搜索时候会把自己的信息进行分词,会把数据库中或者索引库中的数据进行分词,然后进行一个 匹配操作,默认的中文分词器是将每个字看成一个词,比如"中国人很喜欢吃油条",会被分为“中 国 人 很 喜 欢 吃 油 条”这几个字,而采用IK分词器 可以分为“中国人 很 喜欢 吃 油条”,看下上面分词后的结果,肯定是 ik 的分词结果比较符合中文。IK提供了两个分词算法:ik_smart和ik_max_word, 其中ik_smart为最少切分,ik_max_word为最细粒度划分。

安装

下载

github.com/medcl/elast…

elasticsearch-analysis-ik

解压到ES plugins文件夹下

image

重启ES

加载ik插件

检查插件

也可以通过ES自带的工具查看ik插件,命令行执行 ./elasticsearch-plugin list

elasticsearch-plugin进行插件查询

使用Kibana进行测试验证

测试 ik_smart(ik最简分词器)

ik_smart会将一句话拆分成几个词语

ik_smart分词器示例

测试ik_max_word

ik_max_word最细粒度的划分词,它除了将当前词分出来,还将这个句子中可能组合的词语都列出来,穷尽词库的可能

ik_max_word分词器示例

以上是两种分词模式,但是有时候还一些我们自定义的专有名词,它就分不了了,需要我们在配置文件中进行配置,如刻威舟吃油条,刻威舟是一个人名字,但是它却分成了三个字

自定义词语测试

ik分词器增加自己的配置

到ik插件的config下面的IKAnalyzer.cfg.xm里面进行配置,如下:

IKAnalyzer.cfg.xml示例

编写自己的配置文件,加到IKAnalyzer.cfg.xml里面,如下:

将kwz.dic加到IKAnalyzer.cfg.xml示例

重启es,在Kibana上进行验证,如下:

验证自定义词

可以看见,刚才“刻威舟”是分开的单词,现在“刻威舟”是一个词语,这就是自定义词的用法

更多技术干货欢迎关注微信公众号“风雨同舟的AI笔记”~

【转载须知】:转载请注明原文出处及作者信息