Elasticsearch:搜索相关性

这里写目录标题

一、相关性的概述

在搜索引擎中,描述一个文档与查询语句匹配程度的度量标准。

二、自定义评分策略

Elasticsearch5之前的版本,评分机制或者打分模型是基于TF-IDF实现的。从Elasticsearch5之后,默认的打分机制改成了Okapi BM25。

1、TF-IDF算法

  • TF是词频:检索词在文档中出现的频率越高,相关性也越高。
  • IDF是逆向文本频率:每个检索词在索引中出现的频率,频率越高,相关性越低。
  • 字段长度归一值:检索词出现在一个内容短的title要比同样的词出现在一个内容长的content字段权重更大。

2、BM25算法

和经典的TF-IDF相比,当TF无限增加时,BM25算分会趋于一个数值。

三、自定义评分策略

1、Index Boost:在索引层面修改相关性

Index Boost这种方式能在跨多个索引搜索时为每个索引配置不同的级别。所以它适用于索引级别调整评分。

实战举例:一批数据里有不同的标签,数据结构一致,要将不同的标签存储到不同的索引(A、B、C),并严格按照标签来分类展示(先展示A类,然后展示B类,最后展示C类),应该用什么方式查询呢?

具体实现:借助indices_boost提升索引的权重,让A排在最前,其次是B,最后是C。

2、boosting:修改文档相关性

boosting可在查询时修改文档的相关度。boosting值所在的范围不同,含义也不同。

  • 若boosting值为0~1,如0.2,代表降低评分。
  • 若boosting值>1,如1.5,则代表提升评分。
    适用于某些特定的查询场景,用户可以自定义修改满足某个查询条件的结果评分。

3、negative_boost:降低相关性

若对某些返回结果不满意,但又不想将其排除(must_not),则可以考虑采用negative_boost的方式。

原理如下:

  • negative_boost仅对查询中定义为negative的部分生效。
  • 计算评分时,不修改boosting部分评分,而negative部分的评分则乘以negative_boost的值。
  • negative_boost取值为0~1.0。

4、function_score:自定义评分

该方式支持用户自定义一个或多个查询语句及脚本,达到精细化控制评分的目的,以对搜索结果进行高度个性化的排序设置。适用于需进行复杂查询的自定义评分业务场景。

5、rescore_query:查询后二次打分

二次评分是指重新计算查询所返回的结果文档中指定文档的得分。Elasticsearch会截取查询返回前N条结果,并使用预定义的二次评分方式来重新计算其得分。但对全部有序的结果集进行重新排序的话,开销势必很大,使用rescore_query可以只对结果的子集进行处理。该方式适用于对查询语句的结果不满意,需要重新打分的场景。

四、多字段搜索场景优化

1、最佳字段(Best Fields): 多个字段中返回评分最高的

当字段之间相互竞争,又相互关联。例如:对于博客的title和body这样的字段,评分来自最匹配字段。

2、多数字段(Most Fields):匹配多个字段,返回各个字段评分之和

处理英文内容时的一种常见的手段是,在主字段(English Analyzer),抽取词干,加入同义词,以匹配更多的文档。相同的文本,加入字段(standard Analyzer),以提供更加精确的匹配。其他字段作为匹配文档提高相关度的信号,匹配字段越多则越好。

3、混合字段(Cross Fields):跨字段匹配,待查询内容在多个字段中都显示

对于某些实体,例如人名,地址,图书信息。需要在多个字段中确定信息,单个字段只能作为整体的一部分。希望在任何这些列出的字段中找到尽可能多的词。

相关推荐
美狐美颜sdk41 分钟前
直播APP开发技术架构解析:从音视频流到第三方美颜SDK接入的完整方案
大数据·人工智能·音视频·美颜sdk·美颜api
Capricorn19881 小时前
知芽研究问题看板无法推进?从孵化区到笔记的机制排查指南
大数据·论文阅读·人工智能·笔记·学习方法·论文笔记
凡科网小帆1 小时前
2026小程序商城平台哪家强,小程序商城平台选型怎么做
大数据·小程序·小程序商城平台
睿本云2 小时前
从“有数据”到“会用数据”,一次标签体系的升级能带来的改变
大数据·人工智能
牛奶咖啡132 小时前
大数据Hadoop运维应用实践——Hadoop平台常见问题与故障汇总、系统调优、网络规划与硬件存储选型
大数据·hadoop·hadoop集群操作系统调优·hadoop集群运维问题汇总·hadoop集群硬件规划·大数据平台网络规划·大数据平台硬件存储选型
MEIXIFU12 小时前
便利店实际经营面积怎么选最合适
大数据·人工智能·物联网·生活·迭代加深
观远数据3 小时前
AI+BI时代的数据合规三重门:传输、存储、消费如何一体化管控
大数据·数据分析
观远数据3 小时前
先进制造业BI价值交付:三个车间数据场景与它们的ROI账本
大数据·人工智能
星辰_mya3 小时前
国内气象数据平台业务规则——自用
大数据·人工智能
jikemaoshiyanshi3 小时前
2026 AWS 中国峰会有哪些 AI Agent 专题演讲?按团队场景分层指南
大数据·人工智能