Elasticsearch电商搜索分词效果调优

分词是搜索中非常核心的一步,下面通过一个案例介绍在没有专业分词系统的情况下,如何做分词性能的调优。

假设有下面几个商品的名称:

  1. 女士香水
  2. 香精
  3. 矿泉水
  4. 古驰香水
  5. 蓝色经典男士淡香水
  6. 女士背包

当搜索 “女士香水“(只是其中一个例子)的时候,如果分词分的过细,分出:女士、香水,返回的排序结果会是:
这里写图片描述

很明显女士背包并不应该排在最前面。

如果使用ik_max_word分词会分的过细,这种方案召回率很高,但是准确率低;
如果使用ik_smart分词,则会分的过粗,这种方案召回率低,但是准确率高。

因此,分词的结果对搜索对准确度有很大对影响。

研发可以根据客户对准确率和召回率对要求做取舍。

推荐对解决方法:

1.扩充专有词库。可以根据业务抽取出来专有词库,把词库更新到ik对自定义词库中。
2. 准确率高,使用ik_smart分词;召回率高,使用ik_max_word分词。

关于如何解决搜索“女士香水“的时候不让“女士背包“也搜索出来,请讨论。