论文 | 信息检索结果Ranking的评价指标《RankDCG: Rank-Ordering Evaluation Measure》

本文主要是介绍论文 | 信息检索结果Ranking的评价指标《RankDCG: Rank-Ordering Evaluation Measure》,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

未经允许,不得转载,谢谢~~

一 文章简介

为什么要提出这个新的评价算法?

  1. 我们都知道ranking过程对于信息检索的结果是非常重要的,那么我们就需要有一些算法能评价ranking的结果到底如何。
  2. 现有用来评价ranking的常用算法有:Kendall's τ, Average Precision(AP) , Mean Average Precision(MAP),Discounted Cumulative Gain (DCG), nDCG.
  3. 跟简单的分类任务只需要一个accuracy不一样,尽管已经有了那么多的ranking measures,但仍然存在一些问题。
  4. 尤其是在解决“对那些具有相同等级分布和倾斜等级分布多个关系的离散值元素进行排序任务时”;
  5. 所以本文基于nDCG算法提出了RankDCG,并提出一些标准来测试这些算法,实验发现只有本文的RankDCG满足全部的要求。

二 排序问题描述

  1. Ordering:用网页检索的例子来看就是要在接近无穷大的数据集中找到相应的信息并对它们进行相关性排序。
  2. 问题可以用数学的方式定义为:
    • A为一系列元素: A = [x1,x2,x3,...,xn];
    • f(x)度量了元素x与query的相关性,f(x)属于0-1;
    • 通常我们能在A中的n个元素找到m个相关的元素,并按相关性由高到低进行排序得到目标结果B;
    • B = [x|x ∈ A,f(x) > 0], 且 B = [ f(x1) > f(x2) > f(x3) > ... > f(xm) ];
  3. 在本文中考虑现实世界中经常出现的排序问题,例如推荐系统和用户排序;这跟上面提到的网页检索有一些不太一样的地方,包括:
    • 在这里每个元素都是相关的;
    • 待排序的都是离散值;
    • 会出现多个元素具有相同等级的情况;
    • 排序结果可能会出现只有非常少数的top result是相关的情况;
  4. 针对上述问题,重新定义了目标结果B的表示为: B = [f(x1) ≥ f(x2) ≥ f(x3) ≥ ... ≥ f(xn)],并对ranking measure提出了需要能够正确反映上述4点的要求。

三 现有评价方法

信息检索领域有多个方法来评价rank ordering的好坏,但是没有一个对上面描述的这种问题是完全适用的,接下来先看看目前常用的一些评价算法。

3.1 F-measure(F-score)

  1. 这是一个在IR中非常常见的评价指标;
  2. 同时考虑了检测精度p和召回率r;


  3. 但是不适用于所有元素都相关的情况,也没有将不同的ranks考虑在内,所以不适合作为rank-ordering的评价标准。

3.2 Average Precision and Mean Average Precision

  1. AP


  • 其中:P(k) = precision@k , ∆R(k) = |recall(k−1)−recall(k)|.
  • 其实理论上的AP应该等于绿色的precision-recall线的下方面积,而用近似计算就等于看成是一小块的长方形的面积之和,即为图中红色虚线的下方面积。
  1. MAP


  • 其中:Q 是query的集合,而q是单个的query,即对所有query的AP求平均。
  1. AP,MAP都可以评价rank-ordering问题;
  2. AP,MAP基于rank与rank之间没有关系的这个前提,没有考虑多个元素会是同一个rank的情况;
  3. AP,MAP对所有的rank values都是用相同的cost对待,没有考虑需要将更多的注意力放在少数几个high-rank的元素上。

3.3 Kendall’s τ

  1. 这个算法考虑了给定list和结果list之间元素对之间的匹配程度;


  2. c表示匹配的元素对的数量,d表示不匹配的元素对数量;
  3. 这个算法仍然没有考虑多个元素值相同rank,与非常少的top-k个相关元素分布情况。
  4. 关于这个算法这里给出一个具体的例子:


3.4 Discounted Cumulative Gain (DCG)

  1. 这个算法考虑了rank排序的问题,是目前文章中介绍过的唯一一个用了cost function的算法;
  2. 本文也是自己与这个算法做的改进;


  3. rel()指的是相关度度量函数,i 表示元素所在的位置;


  4. 这里有一个很不错的例子哦.
  5. 标准的DCG根据元素所在的位置不同给出不同的cost;
  6. 而文章作者认为[9,1,1]对于结果[1,9,1]与[1,1,9]应该是一样的(因为只有一个9是top-1,而且都出错了)

四 本文评价算法:RankDCG

  1. 从一个例子开始分析:
  2. 下面两张图为standard DCG与别人改进的DCG在各个元素上的cost图:


  3. 不足之处:这两个算法都将一般以上的cost放在了最高rank的元素上,这会导致整个评价算法引导ranking的走向找到top-rank的元素而不是做好ordering工作。
  4. 所以文章做的第一个工作:提出了新的rel()函数,具体体现为将原来的变成:

    具体步骤是:在L中有10个rank值,但是只有4个不同的rank,所以按照rank value对元素进行分组,得到4,那个第一个sublist的rankvalue就改成4,后面的sublist依次递减。

  5. 这样可以得都到以下的结果图,可以看到整个cost下降更均衡了。


  6. 现在这样其实还有一个问题,基于位置的折损函数cost会导致本来rank value一样的值最后得到的cost却是不一样的,例如最后4个1。
  7. 文章做的第二个工作就是将基于位置的折损改成新的折损系统,具体方法是对L‘的rank value做一个翻转,将值依次赋给各个sublist。最后得到:


  8. 这时候的cost图为:


  9. 最后也模仿DCG->nDCG的过程,做了一次归一化,即最终的RankDCG算法等于:


写在最后

写完了嘻嘻~~

简书不支持公式真的有点小小的不方便,所有的公式都来自论文presentation的截图。

最后,不是做信息检索的,这篇论文只是课程的一个报告,有理解不正确或者不到位之处欢迎大佬评论获或者私信谢谢ヾ(◍°∇°◍)ノ゙

      </div>

这篇关于论文 | 信息检索结果Ranking的评价指标《RankDCG: Rank-Ordering Evaluation Measure》的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/672552

相关文章

信息检索(52):From doc2query to docTTTTTquery

From doc2query to docTTTTTquery 摘要 发布时间(2019) 摘要 Nogueira 等人 [7] 使用简单的序列到序列转换器 [9] 进行文档扩展。我们用 T5 [8] 替换转换器,并观察到效率大幅提升。 doc2query [7] 是一种文档扩展形式,其理念是训练一个模型,当给定一个输入文档时,该模型会生成该文档可能回答的问题。然后

文华财经T8自动化交易程序策略模型指标公式源码

文华财经T8自动化交易程序策略模型指标公式源码: //定义变量 //资金管理与仓位控制 8CS:=INITMONEY;//初始资金 8QY:=MONEYTOT;//实际权益 8QY1:=MIN(MA(8QY,5*R),MA(8QY,2*R)); FXBL:=N1; DBKS:8QY1*N1;//计算单笔允许亏损额度 BZDKS:=MAX(AA-BB,N*1T)*UNIT; SZDKS:=MAX(

康奈尔大学之论文审稿模型Reviewer2及我司七月对其的实现(含PeerRead)

前言 自从我司于23年7月开始涉足论文审稿领域之后「截止到24年6月份,我司的七月论文审稿GPT已经迭代到了第五版,详见此文的8.1 七月论文审稿GPT(从第1版到第5版)」,在业界的影响力越来越大,所以身边朋友如发现业界有相似的工作,一般都会第一时间发给我,比如本部分要介绍的康奈尔大学的reviewer2 当然,我自己也会各种看类似工作的论文,毕竟同行之间的工作一定会互相借鉴的,我们会学他们

【论文精读】分类扩散模型:重振密度比估计(Revitalizing Density Ratio Estimation)

文章目录 一、文章概览(一)问题的提出(二)文章工作 二、理论背景(一)密度比估计DRE(二)去噪扩散模型 三、方法(一)推导分类和去噪之间的关系(二)组合训练方法(三)一步精确的似然计算 四、实验(一)使用两种损失对于实现最佳分类器的重要性(二)去噪结果、图像质量和负对数似然 论文:Classification Diffusion Models: Revitalizing

【python】python葡萄酒国家分布情况数据分析pyecharts可视化(源码+数据集+论文)【独一无二】

👉博__主👈:米码收割机 👉技__能👈:C++/Python语言 👉公众号👈:测试开发自动化【获取源码+商业合作】 👉荣__誉👈:阿里云博客专家博主、51CTO技术博主 👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。 python葡萄酒国家分布情况数据分析pyecharts可视化(源码+数据集+论文)【独一无二】 目录 python葡

论文阅读--Efficient Hybrid Zoom using Camera Fusion on Mobile Phones

这是谷歌影像团队 2023 年发表在 Siggraph Asia 上的一篇文章,主要介绍的是利用多摄融合的思路进行变焦。 单反相机因为卓越的硬件性能,可以非常方便的实现光学变焦。不过目前的智能手机,受制于物理空间的限制,还不能做到像单反一样的光学变焦。目前主流的智能手机,都是采用多摄的设计,一般来说一个主摄搭配一个长焦,为了实现主摄与长焦之间的变焦,目前都是采用数字变焦的方式,数字变焦相比于光学

【LLM之KG】CoK论文阅读笔记

研究背景 大规模语言模型(LLMs)在许多自然语言处理(NLP)任务中取得了显著进展,特别是在零样本/少样本学习(In-Context Learning, ICL)方面。ICL不需要更新模型参数,只需利用几个标注示例就可以生成预测。然而,现有的ICL和链式思维(Chain-of-Thought, CoT)方法在复杂推理任务上仍存在生成的推理链常常伴随错误的问题,导致不真实和不可靠的推理结果。

【python】python基于akshare企业财务数据对比分析可视化(源码+数据集+论文)【独一无二】

👉博__主👈:米码收割机 👉技__能👈:C++/Python语言 👉公众号👈:测试开发自动化【获取源码+商业合作】 👉荣__誉👈:阿里云博客专家博主、51CTO技术博主 👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。 系列文章目录 目录 系列文章目录一、设计要求二、设计思路三、可视化分析 一、设计要求 选取中铁和贵州茅

AIGC-Animate Anyone阿里的图像到视频 角色合成的框架-论文解读

Animate Anyone: Consistent and Controllable Image-to-Video Synthesis for Character Animation 论文:https://arxiv.org/pdf/2311.17117 网页:https://humanaigc.github.io/animate-anyone/ MOTIVATION 角色动画的

【Flink metric】Flink指标系统的系统性知识:以便我们实现特性化数据的指标监控与分析

文章目录 一. Registering metrics:向flink注册新自己的metrics1. 注册metrics2. Metric types:指标类型2.1. Counter2.2. Gauge2.3. Histogram(ing)4. Meter 二. Scope:指标作用域1. User Scope2. System Scope ing3. User Variables 三.