首页 > 解决方案 > Elasticsearch 中的相关搜索词

问题描述

我正在寻找一种方便的方法来搜索与术语相关的单词。例如,如果我搜索“洗衣机”这个词,我应该得到相关的搜索词,例如“烘干机”,得分较低,谢谢洗衣机结果,这意味着洗衣机文件必须首先出现,然后是烘干机文件。我该怎么做这个功能?

标签: elasticsearch

解决方案


你需要建立一个同义词词典。幸运的是,我们现在有机器学习模型,比如“word2vec(神经网络)”,可以做到这一点。您可以尝试为此使用开源gensim包。

模型的输入将是大量带有洗衣机和烘干机一词的文本/信息/文章。一旦您对此进行了训练,您就可以找到与“洗衣机”相关的最接近的词,并将这些词用作字典之类的同义词。

在查询时,查找此字典并使用比实际术语更低的同义词权重/提升来扩展查询。


推荐阅读