13-综合排序:Function Score Query 优化算分
使用了 function_score 查询来根据某个字段的值对查询结果进行打分。以下是该查询的主要部分:
query: 包含了实际执行搜索的部分,在这里包括一个 multi_match 查询。
multi_match:用于在多个字段上执行相同的查询。
query:设置为 "popularity",表示要搜索包含这个短语的文档。
fields:指定了要在其中执行查询的字段列表,这里是 "title" 和 "content" 字段。
function_score:允许您通过将查询结果重新评分来自定义和影响每个文档的得分。
field_value_factor:基于字段的具体值来影响文档的得分。
field:指定了作为因子的字段,这里是 "votes" 字段。
modifier: 使用 "log1p" 函数,对字段的值应用 log(1 + value) 函数来调整得分。这种调整通常用于处理大量的小值,以平衡分数的影响。
factor: 设置了一个乘法因子为 0.1,用于进一步调整字段值对得分的影响力。
boost_mode: 设置为 "sum",表示将所有子查询的分数相加以计算最终得分。
max_boost: 设置了最大提升值为 3,即最终得分不会超过 3 倍。
换句话说,这个查询的目的是:
在 "title" 和 "content" 字段中搜索包含短语 "popularity" 的文档。
根据文档中 "votes" 字段的值,并对其应用log1p函数,使用乘法因子 0.1 进一步调整每个文档的得分。
最终得分由子查询得分和基于 "votes" 字段的加权因素相加,但不会超过 3。
random_score: 通过指定种子值 XXXX 来生成随机分数,影响每个文档的得分
DELETE blogsPUT /blogs/_doc/1
{"title": "About popularity","content": "In this post we will talk about...","votes": 0
}PUT /blogs/_doc/2
{"title": "About popularity","content": "In this post we will talk about...","votes": 100
}PUT /blogs/_doc/3
{"title": "About popularity","content": "In this post we will talk about...","votes": 1000000
}# 使用了 function_score 查询来根据某个字段的值对查询结果进行打分。以下是该查询的主要部分:
# query: 包含了实际执行搜索的部分,在这里包括一个 multi_match 查询。
# multi_match:用于在多个字段上执行相同的查询。
# query:设置为 "popularity",表示要搜索包含这个短语的文档。
# fields:指定了要在其中执行查询的字段列表,这里是 "title" 和 "content" 字段。
# function_score:允许您通过将查询结果重新评分来自定义和影响每个文档的得分。
# field_value_factor:基于字段的具体值来影响文档的得分。
# field:指定了作为因子的字段,这里是 "votes" 字段。
POST /blogs/_search
{"query": {"function_score": {"query": {"multi_match": {"query": "popularity","fields": [ "title", "content" ]}},"field_value_factor": {"field": "votes"}}}
}POST /blogs/_search
{"query": {"function_score": {"query": {"multi_match": {"query": "popularity","fields": [ "title", "content" ]}},"field_value_factor": {"field": "votes","modifier": "log1p"}}}
}# function_score: 允许您根据不同的因素自定义和调整文档的得分。
# field_value_factor: 基于字段的值来影响文档的得分。
# field: 指定了作为权重因子的字段,这里是 "votes" 字段。
# modifier: 使用 "log1p" 函数,对字段的值应用 log(1 + value) 函数来调整得分。这种调整通常用于处理大量的小值,以平衡分数的影响。
POST /blogs/_search
{"query": {"function_score": {"query": {"multi_match": {"query": "popularity","fields": [ "title", "content" ]}},"field_value_factor": {"field": "votes","modifier": "log1p" ,"factor": 0.1}}}
}# function_score: 允许您根据不同的因素自定义和调整文档的得分。
# field_value_factor: 基于字段的值来影响文档的得分。
# field: 指定了作为权重因子的字段,这里是 "votes" 字段。
# modifier: 使用 "log1p" 函数,对字段的值应用 log(1 + value) 函数来调整得分。这种调整通常用于处理大量的小值,以平衡分数的影响。
# factor: 设置了一个乘法因子为 0.1,用于进一步调整字段值对得分的影响力。
# boost_mode: 设置为 "sum",表示将所有子查询的分数相加以计算最终得分。
# max_boost: 设置了最大提升值为 3,即最终得分不会超过 3 倍。
# 换句话说,这个查询的目的是:
# 在 "title" 和 "content" 字段中搜索包含短语 "popularity" 的文档。
# 根据文档中 "votes" 字段的值,并对其应用log1p函数,使用乘法因子 0.1 进一步调整每个文档的得分。
# 最终得分由子查询得分和基于 "votes" 字段的加权因素相加,但不会超过 3。
POST /blogs/_search
{"query": {"function_score": {"query": {"multi_match": {"query": "popularity","fields": [ "title", "content" ]}},"field_value_factor": {"field": "votes","modifier": "log1p" ,"factor": 0.1},"boost_mode": "sum","max_boost": 3}}
}# random_score: 通过指定种子值 911119 来生成随机分数,影响每个文档的得分
# 使⽤场景:⽹站的⼴告需要提⾼展现率
# 具体需求:让每个⽤户能看到不同的随机排名,但是也希望同⼀个⽤户访问时,结果的相对顺序,保持⼀致(Consistently Random)
POST /blogs/_search
{"query": {"function_score": {"random_score": {"seed": 911119}}}
}

相关文章:
13-综合排序:Function Score Query 优化算分
使用了 function_score 查询来根据某个字段的值对查询结果进行打分。以下是该查询的主要部分: query: 包含了实际执行搜索的部分,在这里包括一个 multi_match 查询。 multi_match:用于在多个字段上执行相同的查询。 query:设置…...
鸿蒙应用App测试-专项测试(DevEco Testing)
注意:大家记得先学通用测试在学专项测试 鸿蒙应用App测试-通用测试-CSDN博客 注意:博主有个鸿蒙专栏,里面从上到下有关于鸿蒙next的教学文档,大家感兴趣可以学习下 如果大家觉得博主文章写的好的话,可以点下关注&am…...
RabbitMQ设置消息过期时间
RabbitMQ设置消息过期时间 1、过期消息(死信)2、设置消息过期的两种方式2.1、设置单条消息的过期时间2.1.1、配置文件application.yml2.1.2、配置类RabbitConfig2.1.3、发送消息业务类service(核心代码)2.1.4、启动类2.1.5、依赖文…...
大数据-209 数据挖掘 机器学习理论 - 梯度下降 梯度下降算法调优
点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…...
粒子群优化双向深度学习!PSO-BiTCN-BiGRU-Attention多输入单输出回归预测
粒子群优化双向深度学习!PSO-BiTCN-BiGRU-Attention多输入单输出回归预测 目录 粒子群优化双向深度学习!PSO-BiTCN-BiGRU-Attention多输入单输出回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现PSO-BiTCN-BiGRU-Attention粒子…...
排序算法简介
直接插入排序: 将第一个元素视为已排序的序列,其余元素视为未排序序列。 逐个处理:从第二个元素开始,逐个将当前元素插入到已排序序列的适当位置,直到所有元素都被插入。 插入过程:对于每个待…...
(没有跳过联网激活)导致使用微软账号激活电脑---修改为本地账户和英文名字
修改为本地账户和英文名字 前言微软账号,本地账号与用户名基本知识账户管理方式一方式2 查看账户的sid并且修改文件夹名字和系统变量修改注册表和建立软件路径超链接注意事项总结 前言 当没有联网激活新买的电脑时候,这个就不用看了 当你是联网激活的时…...
[论文粗读][REALM: Retrieval-Augmented Language Model Pre-Training
引言 今天带来一篇检索增强语言模型预训练论文笔记——REALM: Retrieval-Augmented Language Model Pre-Training。这篇论文是在RAG论文出现之前发表的。 为了简单,下文中以翻译的口吻记录,比如替换"作者"为"我们"。 语言模型预训练…...
flink 内存配置(五):网络缓存调优
flink 内存配置(一):设置Flink进程内存 flink 内存配置(二):设置TaskManager内存 flink 内存配置(三):设置JobManager内存 flink 内存配置(四)…...
set和map的使用
目录 1.关联式容器 2.键值对 3.set 3.1set的模版参数列表 3.2对set的修改 3.2.1insert 3.2.2 erase 3.2.3clear 3.2.4swap 3.2.5 find 3.3set的迭代器 3.4set的容量 4.map 4.1对map的修改 4.1.1insert 4.1.2erase 4.1.3swap 4.1.4clear 4.2map的迭代器 4.3opera…...
LCL三相并网逆变器simulink仿真+说明文档
背景描述: 详细解析了LCL三相并网逆变器的工作原理,强调了准PR比例谐振控制的重要性,讨论了电感、电容参数选择及保护电路设计。通过仿真结果展示了逆变器性能优化的方法,以提升系统效率和稳定性。 模型介绍: 整体模…...
从0开始深度学习(24)——填充和步幅
1 填充 在上一节中,我们的卷积步骤如下: 可以发现输入是 3 3 3\times3 33,输出是 2 2 2\times2 22,这样可能会导致原始图像的边界丢失了许多有用信息,如果应用多层卷积核,累积丢失的像素就更多了&#…...
CPU Study - Instructions Fetch
参考来源:《超标量处理器设计》—— 姚永斌 N-Way CPU 取指问题 如果CPU可以在每个周期内同时解码N条指令,则此类CPU为N-Way超标量处理器。 N-Way超标量处理器需要每个周期从I-Cache中至少取得N条指令,这N条指令成为一组Fetch Group。 为了…...
GJ Round (2024.9) Round 1~7
前言: 点此返回 GJ Round 目录 博客园可能食用更佳 Round 1 (9.10) A 洛谷 P10059 Choose 不难发现结论:记长度为 L L L 时对应的 X X X 最大值为 f ( L ) f(L) f(L),则 f ( L ) f(L) f(L) 单调不降 那么就可以考虑使用二分求出最小的…...
【CMCL】多模态情感识别的跨模态对比学习
abstract 近年来,多模态情感识别因其能够通过整合多模态信息来提高情感识别的准确性而受到越来越多的关注。然而,模态差异导致的异质性问题对多模态情感识别提出了重大挑战。在本文中,我们提出了一个新的框架——跨模态对比学习(…...
输入/输出系统
一、I/O 系统基本概念(了解即可) 1. 输入/输出系统 【总结】: “I/O” 就是 “输入 / 输出”(Input/Output),I/O 设备就是可以将数据输入到计算机,或者可以接收计算机输出数据的外部设备。 输…...
asp.net+uniapp养老助餐管理系统 微信小程序
文章目录 项目介绍具体实现截图技术介绍mvc设计模式小程序框架以及目录结构介绍错误处理和异常处理java类核心代码部分展示详细视频演示源码获取 项目介绍 以往流浪猫狗的救助网站相关信息的管理,都是工作人员手工统计。这种方式不但时效性低,而且需要查…...
部署istio应用未能产生Envoy sidecar代理
1. 问题描述及原因分析 在部署Prometheus、Grafana、Zipkin、Kiali监控度量Istio的第2.2章节,部署nginx应用,创建的pod并没有产生Envoy sidecar代理,仅有一个应用容器运行中 故在随后的prometheus中也没有产生指标istio_requests_total。通…...
使用YOLO 模型进行线程安全推理
使用YOLO 模型进行线程安全推理 一、了解Python 线程二、共享模型实例的危险2.1 非线程安全示例:单个模型实例2.2 非线程安全示例:多个模型实例 三、线程安全推理3.1 线程安全示例 四、总结4.1 在Python 中运行多线程YOLO 模型推理的最佳实践是什么&…...
ABAP 增强
一、增强 基于SAP源代码的增强:对SAP所预留的空的子过程进行编码,用户可以编辑此子过程,并在这个子过程中添加自定义的代码,以增加SAP标准程序的控制功能 PERFORM 基于函数的增强:SAP为此类出口提供了相应的函数&am…...
Windows热键侦探:一键揪出占用你快捷键的“元凶“
Windows热键侦探:一键揪出占用你快捷键的"元凶" 【免费下载链接】hotkey-detective A small program for investigating stolen key combinations under Windows 7 and later. 项目地址: https://gitcode.com/gh_mirrors/ho/hotkey-detective 你是…...
Gitee 企业版三大模块升级解读:项目模板、工作项流程与测试资产如何降低协作成本
作者:Gitee 企业版产品/研发协作团队 资料依据:Gitee 官方博客(2026年1月23日发布)、Gitee 帮助中心、Gitee 企业版功能说明文档 适读对象:项目经理、研发负责人、测试负责人、企业研发平台管理员 核心结论 Gitee 企…...
甲骨文免费服务器到手后,用Xshell连接不上?这份SSH密钥配置避坑指南请收好
甲骨文云SSH连接全攻略:从密钥解析到Xshell实战配置 密钥管理的核心逻辑与常见误区 初次接触甲骨文云免费实例的用户,90%的SSH连接问题都源于密钥处理不当。与常规密码登录不同,甲骨文云强制采用密钥对认证机制,这种设计虽然提升了…...
Asimov支持的开发依赖类型详解:从Node.js到Python、Go、Rust全覆盖
Asimov支持的开发依赖类型详解:从Node.js到Python、Go、Rust全覆盖 【免费下载链接】asimov Automatically exclude development dependencies from Apple Time Machine backups 项目地址: https://gitcode.com/gh_mirrors/as/asimov Asimov是一款能够自动将…...
论文写到头秃?书匠策AI这套“毕业论文急救包“我劝你现在就存好!
同学们,我做论文写作科普这么久,后台私信最多的一句话就是:"老师,我论文一个字都没动,还有救吗?" 有。今天就给你们安利一个我最近实测了一圈、觉得确实有点东西的工具——书匠策AI(…...
Unity渐变透明效果实现原理与生产级方案
1. 这不是调个Alpha值那么简单:为什么90%的Unity透明效果都“假”得明显 在Unity项目里做淡入淡出,很多人第一反应就是 renderer.material.color new Color(1,1,1,0.5f) ——改个alpha完事。我刚入行那会儿也这么干,直到上线前被美术揪着耳…...
茉莉花插件:Zotero中文文献管理的终极解决方案,5分钟打造高效科研工作流
茉莉花插件:Zotero中文文献管理的终极解决方案,5分钟打造高效科研工作流 【免费下载链接】jasminum A Zotero add-on to retrive CNKI meta data. 一个简单的Zotero 插件,用于识别中文元数据 项目地址: https://gitcode.com/gh_mirrors/ja/…...
Win10/Win11 HTTPS抓包证书信任失效的根因与全链路解决方案
1. 为什么HTTPS抓包在Win10/Win11上总卡在“证书不信任”这一步?你肯定试过:Charles启动、Proxy端口设好、手机连上同一Wi-Fi、HTTP请求能抓到,但所有HTTPS流量全是灰色的“unknown”或直接显示“Failed to connect to remote host”。点开看…...
Delft3D建模、水动力模拟方法及地表水环境影响评价:岸线绘制与导入、非结构化计算网格生成、水下地形数据处理等前处理操作;水动力与污染物对流扩散模拟的参数设置、边界条件设定及模型率定验证
查看原文>>>https://mp.weixin.qq.com/s/_CiPDK_oXaAGxVfu2qk6ew 前言 本文以地表水数值模拟软件Delft3D 4.03.00操作为主要内容,强调地表水水动力建模、基础资料的获取、边界条件设定、模型率定和验证、数据分析和处理等关键环节。通过对案例模型的实操…...
SpaceX披露IPO招股书:400亿美元数据中心交易、600亿美元收购Cursor,轨道AI计算挑战待解
拿下Anthropic算力大单:每月12.5亿美元,连付3年,双方均可叫停今年5月,SpaceX与Anthropic就访问COLOSSUS和COLOSSUS II两大大型数据中心的算力访问达成了云服务协议。根据协议,Anthropic同意在2029年5月之前每月向Space…...
