当前位置:   article > 正文

IK分词器

ik分词器

IK分词器是ES的一个插件,主要用于把一段中文或者英文的划分成一个个的关键字,我们在搜索时候会把自己的信息进行分词,会把数据库中或者索引库中的数据进行分词,然后进行一个匹配操作,默认的中文分词器是将每个字看成一个词,比如"我爱技术"会被分为"我","爱","技","术",这显然不符合要求,所以我们需要安装中文分词器IK来解决这个问题;

IK提供了两个分词算法:ik_smart和ik_max_word

ik_smart为最少切分,添加了歧义识别功能,推荐;

ik_max_word为最细切分,能切的都会被切掉;

示例:对“买一台笔记本” 进行分词

ik_smart分词结果:


ik_max_word分词结果:

  1. {
  2. "tokens" : [
  3. {
  4. "token" : "买一",
  5. "start_offset" : 0,
  6. "end_offset" : 2,
  7. "type" : "CN_WORD",
  8. "position" : 0
  9. },
  10. {
  11. "token" : "一台",
  12. "start_offset" : 1,
  13. "end_offset" : 3,
  14. "type" : "CN_WORD",
  15. "position" : 1
  16. },
  17. {
  18. "token" : "一",
  19. "start_offset" : 1,
  20. "end_offset" : 2,
  21. "type" : "TYPE_CNUM",
  22. "position" : 2
  23. },
  24. {
  25. "token" : "台笔",
  26. "start_offset" : 2,
  27. "end_offset" : 4,
  28. "type" : "CN_WORD",
  29. "position" : 3
  30. },
  31. {
  32. "token" : "台",
  33. "start_offset" : 2,
  34. "end_offset" : 3,
  35. "type" : "COUNT",
  36. "position" : 4
  37. },
  38. {
  39. "token" : "笔记本",
  40. "start_offset" : 3,
  41. "end_offset" : 6,
  42. "type" : "CN_WORD",
  43. "position" : 5
  44. },
  45. {
  46. "token" : "笔记",
  47. "start_offset" : 3,
  48. "end_offset" : 5,
  49. "type" : "CN_WORD",
  50. "position" : 6
  51. },
  52. {
  53. "token" : "本",
  54. "start_offset" : 5,
  55. "end_offset" : 6,
  56. "type" : "CN_CHAR",
  57. "position" : 7
  58. }
  59. ]
  60. }

添加自定义词语:

在许多情况下会有一些专业数据,例如:

  "于敏为祖国奉献一生", ik_smart分词后的结果是:

  "于","敏", "为","祖国","奉献", "一生";而于敏是人名,被拆分开来了,需要将其作为一个词语添加到词典中;

在IK目录下有config文件夹,用于存储词典;

创建一个文件:   mydict.dic , 在里面添加"于敏"

然后将文件名写入到IKAnalyzer.cfg.xml文件中:

保存后重启ES和Kibana

 注意:文件的数主和属组权限保持一致,不然会无法识别;

启动ES的过程中可以看到加载了自己定义的字典;

[INFO ][o.w.a.d.Dictionary       ] [A03-R28-I33-232-JCFB742.JD.LOCAL] [Dict Loading] /export/servers/elasticSearch/elasticsearch-7.15.1/plugins/ik/config/mydict.dic

再次运行可以看到“于敏”被作为一个词分出来了

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/966467
推荐阅读
相关标签
  

闽ICP备14008679号