多路召回RRF倒数排序融合算法

RRF

  • Reciprocal Rank Fusion (RRF) 是一种简单有效的数据融合算法,是一种将具有不同相关性指标的多个结果集组合成单个结果集的方法。

痛点

  • 对于复杂一点检索系统来说,一般最好的排名是通过综合多路召回结果来实现的,例如将向量搜索的结果和标量搜索的结果进行合并。而在实践中,将多路召回综合成最终排名结果是比较具有挑战性的,难点在于每路召回的评分标准不一样(特别是来自不同数据源的召回结果),很难对每路score进行简单的加和计算来形成最终排名。RFF算法的优势在于不利用相关分数,而仅靠排名计算,简单有效。

算法

    • D – 文档集
    • R – 一组排名作为 1..|D| 的排列
    • k – 大于等于1的常数
  • 如上图,计算方式很简单,对常数k加上文档在结果集中的排名的倒数求和

优势

  • RFF算法的优势在于不利用相关分数,而仅靠排名计算,简单有效。

效果

  • 论文实验证明,召回效果优秀

思考

  • RRF本质上是将多路召回的结果按照排名映射到同一个值域空间,拉齐评分标准,作用类似机器学习里softmax函数

参考文献

柚子

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Index