【HBZ分享】ES的评分score机制的原理

score类型

  1. 基础评分boost,默认2.2,
  2. 逆向文档频率值(IDF):表示该词再文档中(ES中)出现的次数越多,表示越不重要,评分越低
  3. 关键词在文档中出现的频率(TF):表示该词在文档中出现的频率,频率越高表示越重要,评分越高
    注意: IDF是出现次数越多,则评分越低, 而TF是出现次数越高,则评分越高,一正一反

score评分机制的计算

  1. boost × idf × tf
  2. 字段的权重 × 逆向文档频率的值 × 关键词在文档中出现的频率值

ES查询时带上评分计算

复制代码
加上explain 和mysql查看索引使用情况是同一个词
GET /test_index/_search?explain=true

如何自定义评分机制

  1. 权重配置: 通过指定boost基础评分,来定制总评分, 查询请求如下,需要指定boost,来定制哪个词查询基础分更大,即相同频率下该次就会评分更高,会放在前面

    GET /test_index/_search
    {
    "query": {
    "bool": {
    "should": [
    {
    "match": {
    "summary": {"query": "boot", "boost": 1} // 指定查boot的基础评分boost = 1, 不指定boost则默认2.2
    }
    },
    {
    "match": {
    "summary": {"query": "java", "boost": 3} // 指定查boot的基础评分boost = 3, 不指定boost则默认2.2
    }
    },
    {
    "match": {
    "summary": {"query": "cloud", "boost": 1} // 指定查boot的基础评分boost = 1, 不指定boost则默认2.2
    }
    },
    {
    "match": {
    "summary": {"query": "spring", "boost": 1} // 指定查boot的基础评分boost = 1, 不指定boost则默认2.2
    }
    },
    ]
    }
    }
    }

  2. 公式定制化: ES提供了一些内置评分函数(BM25), 根据需要进行参数调整,或者使用自定义评分函数来实现

  3. 自定义评分插件

相关推荐
key_3_feng19 小时前
MCP协议:解锁AI模型与外部世界的高效协作
大数据·人工智能·mcp
科技小花19 小时前
AI重塑与全球合规:2026年主流数据治理平台差异化解析
大数据·运维·人工智能·数据治理
Matrix7019 小时前
Kafka 单节点测试环境部署实战
大数据·kafka
程序消消乐19 小时前
第一章:Claude Code 记忆系统——架构总览与四种记忆类型
大数据·架构·agent·claude code
小小AK19 小时前
旺店通与轻易云集成平台的无缝数据对接方案
大数据
QYR_Jodie20 小时前
从科研投入与技术迭代驱动到稳增扩容:全球小角度X射线散射仪2025年0.7亿,2032年达0.85亿,2026-2032年CAGR3.0%
大数据·人工智能
蓝眸少年CY21 小时前
Hbase - 入门到实战
大数据·数据库·hbase
拾光向日葵21 小时前
南京林业大学2026年硕士研究生跨门类调剂政策详解
大数据·人工智能·物联网
财经资讯数据_灵砚智能21 小时前
基于全球经济类多源新闻的NLP情感分析与数据可视化(日间)2026年4月7日
大数据·人工智能·python·信息可视化·语言模型·自然语言处理·ai编程
大树8821 小时前
【无标题】
大数据·运维·服务器·人工智能