你不会是程序猿吧?

IK分词的问题

Elasticsearch | 作者 code4j | 发布于2018年05月15日 | 阅读数:3564

 
先说背景:我有一个词,叫:好妈妈,这个词原本词库没有的,我想通过添加这个词以及minshouldmatch的搜索方式,从而让 带有“好妈妈“的文档排的靠前一些。
 
然后说问题:
但是发现添加了这个词以后分词结果好像和原来不一样了,原来的分词结果有【好,妈妈,妈,妈】,加了好妈妈以后只有:【好妈妈,妈妈,妈,妈】,好 这个词就没了,求解答
 
 
已邀请:

laoyang360 - 《一本书讲透Elasticsearch》作者,Elastic认证工程师 [死磕Elasitcsearch]知识星球地址:http://t.cn/RmwM3N9;微信公众号:铭毅天下; 博客:https://elastic.blog.csdn.net

赞同来自:

确认下用的什么分词,如果是ik,确认下是ik_smart还是ik_max_word,分别验证下。

hapjin

赞同来自:

这个应该与分词器采用的分词算法有关。ik 是基于规则或者叫词典进行分词的,把 "好妈妈" 作为一个词添加到词典之后,同样的一句话,分词产生的结果与原来不一样的了,也即:'好' 不再被 分割成 单独的一个词了。
 
可以参考下HanLP这个项目,作者写了一本书,第2、3章讲了中文分词的原理(规则分词--->统计分词)
 

要回复问题请先登录注册