当前位置: 首页 > news >正文

RRF(Reciprocal Rank Fusion,倒数排序融合)

RRF(Reciprocal Rank Fusion,倒数排序融合)

摘要

倒数排序融合 RRF 是一种简单的方法,用于结合多个 IR(Information Retrieval) 系统的文档排名,始终比任何单独的系统产生更好的结果。

通过使用 RRF 来结合几个TREC实验的结果,并建立一个 元学习器,该元学习器 对 LETOR 3 数据集的排名优于任何先前的方法,从而证明了这一结果。

1.倒数排序融合

虽然监督学习排名方法最近获得了很多关注,但无监督方法很有吸引力,因为它们不需要训练示例。

我们发现,当 RRF 用于结合 IR 方法(包括学习排名)的结果时,几乎总是在最佳组合结果的基础上有所改进。

RRF 只是根据简单的评分公式对文档进行排序。

给定集合 D 作为被排序的的文档和一个排名集合 R (每个都是 1…|D| 的排序),我们计算

R R F s c o r e ( d ∈ D ) = ∑ r ∈ R 1 k + r ( d ) RRF_{score}(d\in D)=\sum_{r\in R}\frac1{k+r(d)} RRFscore(dD)=rRk+r(d)1

  • 其中 k = 60 在试点调查期间固定,在随后的验证期间不改变。

我们选择这个公式的直觉来自这样一个事实,即虽然排名靠前的文件更重要,但是低排名文档的重要性不会像使用指数函数那样消失。

常数 k 减轻了离群系统的高排名的影响


2.举例

待排序数据

排序 1 : [a, b, c, d]

排序 2 : [c, b, a, d]

打分过程,默认 k=60

排序 1 : a → 1/60 , b → 1/61, c → 1/62, d → 1/63

排序 2 : c → 1/60 , b → 1/61, a → 1/62, d → 1/63

聚合

a = 1/60 + 1/62 = 61/1860

b = 1/61 + 1/61 = 2/61

c = 1/60 + 1/62 = 61/1860

d = 1/63 + 1/63 = 2/63

  • a≈0.0327956
  • b≈0.0327868
  • c≈0.0327956
  • d≈0.0317460

排序结果

a, c, b, d

c, a, b, d


这里出现了 a 和 c 的的平局,这中情况,就要考虑另外的方法来解决这些事了。

http://www.lryc.cn/news/480125.html

相关文章:

  • 移动开发(七):.NET MAUI使用RESTAPI实现查询天气笔记
  • 企业数据无缝对接:从旺店通到金蝶云的入库单管理案例
  • 青少年编程与数学 02-003 Go语言网络编程 19课题、Go语言Restful编程
  • 系统架构设计师论文:论区块链技术及应用
  • 放电电阻是什么
  • 项目模块十七:HttpServer模块
  • Spire.PDF for .NET【页面设置】演示:获取 PDF 文件中的页数
  • 火语言RPA流程组件介绍--点击软件元素
  • c++程序设计速学笔记2基础数据结构
  • 搜维尔科技:SenseGlove案例-利用VR触觉技术培训机组人员
  • OpenCV视觉分析之目标跟踪(10)估计两个点集之间的刚性变换函数estimateRigidTransform的使用
  • Python 虚拟环境创建
  • STL-list容器的使用
  • java中线程与集合的面试题
  • 第十五章 IRIS 进程之间的通信
  • 设计者模式之策略模式
  • STM32H750 COMP模拟比较器
  • openresty入门教程:rewrite_by_lua_block
  • Java 并发编程学习笔记
  • 【SpringMVC】——Cookie和Session机制
  • [产品管理-60]:产品的情感化设计与常用工具:感性工学、情感分析、神经网络法、微软反应卡、突发情绪法
  • uniapp 小程序 周选择器
  • Android笔记(三十二):封装一个毫秒级别倒计时View
  • [产品管理-60]:马斯洛需求层次与产品的情感化设计
  • Python接口自动化测试自学指南(项目实战)
  • ESLint 使用教程(三):12个ESLint 配置项功能与使用方式详解
  • 如何将 EDB 文件导入 Ansys HFSS 和 Ansys Q3D
  • HbuildderX运行到手机或模拟器的Android App基座识别不到设备 mac
  • 智慧流控 力行天地 | 同元软控受邀参加第十三届全国流体传动与控制学术会议
  • Python日志分析与故障定位