IK 中文分词器

        IK 中文分词器,很少有直接下载使用的,都需要通过 github 下载源码,本地编译打包。就是 maven 工程中的 package 能力。
github 上提供的源码不是伴随 ES 的每个版本提供,一般只有分词器无效后,才提供新的版本。通常都是伴随 ES 的次版本号提供 IK 分词器版本。下载对应的 IK 分词器源码,本地 package 打包,生成 zip 压缩包,既是 IK 在 ES 中的分词器安装包。
https://github.com/medcl/elasticsearch-analysis-ik.git

⦁    安装IK 中文分词器

        ElasticSearch 是一个开箱即用的工具。插件安装方式也非常简单。
将 IK 分词器的 zip 压缩文件上传到两个Linux节点(es01和es02)中,并在 ElasticSearch 安装目录的 plugins 目录中手工创建子目录,目录命名为 ik。将 zip 压缩文件解压缩到新建目录 ik 中。重新启动ElasticSearch 即可。


上传中文分词器 zip 压缩文件到 ElasticSearch 应用目录中: 
elasticsearch-analysis-ik-6.8.4.zip 到/es01/app/


修改上传后的压缩文件的用户组和用户
chown -R es01.es01 elasticsearch-analysis-ik-6.8.4.zip


切换到es01用户在plugins目录下创建放IK 中文分词子目录:mkdir ik


移动压缩文件到 ik 插件目录中:
mv elasticsearch-analysis-ik-6.8.4.zip ik/


解压缩:
unzip elasticsearch-analysis-ik-6.8.4.zip


所有的分词器,都是针对词语的,不是语句的。拆分单元是词语,不是语句。

⦁    测试IK 分词器


这样中文分词器就安装好,重启ElasticSearch 测试,在启动  ./kibana

IK 分词器提供了两种 analyzer,分别是 ik_max_wordik_smart


ik_max_word: 
会将文本做最细粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,中华人民,中华,华人,人民共和国,人民,人,民,共和国,共和,国,国歌”,会穷尽各种可能的组合;


ik_smart: 
会做最粗粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,国歌”。
分出简单词汇:ik_smart
 

⦁    IK 配置文件

IK 的配置文件在 ElasticSearch 安装目录/usr/local/es02/plugins/ik/config中。

配置文件有:
main.dic :  IK 中内置的词典。  main dictionary。记录 了 IK 统计的所有中文单词。一行一词。文件中未记录的单词,IK 无法实现有效分词。
如:雨女无瓜。不建议修改当前文件中的单词。这个是最核心的中文单词库。就好像,很多的网络词不会收集到辞海中一样。


quantifier.dic : IK 内置的数据单位词典suffix.dic :IK 内置的后缀词典surname.dic :IK 内置的姓氏词典stopword.dic :IK 内置的英文停用词


preposition.dic :IK 内置的中文停用词(介词)


IKAnalyzer.cfg.xml :  
用于配置自定义词库的自定义词库是用户手工提供的特殊词典,类似网络热词,特定业务用词等。

ext_dict:
自定义词库,配置方式为相对于IKAnalyzer.cfg.xml文件所在位置的相对路径寻址方式。相当于是用户自定义的一个main.dic文件。是对main.dic文件的扩展。 

ext_stopwords:
自定义停用词,配置方式为相对于IKAnalyzer.cfg.xml文件所在位置的相对路径寻址方式。相当于是preposition.dic的扩展。

注意:IK的所有的 dic词库文件,必须使用 UTF-8字符集。不建议使用 windows自带的文本编辑器编辑。Windows中自带的文本编辑器是使用 GBK字符集 。IK不识别,是乱码。
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值