跳到主内容
快讯直播
AI智模界
AI 词典

MRR 与 nDCG:排序质量的两把尺子

一句话定义:MRR(Mean Reciprocal Rank,平均倒数排名)看“第一个相关结果排多靠前”;nDCG(normalized Discounted Cumulative Gain,归一化折损累计增益)看“整个排序列表排得好不好”,尤其是否把更相关的内容放更前。

怎么理解

搜索、推荐、RAG 检索都会返回一个列表。MRR 对每个查询只认第一个相关结果:若它排第 1,得 1;排第 2,得 1/2;排第 5,得 1/5;一个都没有,得 0。把所有查询的得分平均,就是 MRR。它像点外卖:你只关心“第一家有这道菜的店”出现在列表第几位,后面还有多少家不重要。

nDCG 则给每个位置的结果打分。常见算法先算 DCG(Discounted Cumulative Gain,折损累计增益):DCG = Σ(2^{rel_i}−1)/log2(i+1)。rel_i 是第 i 位结果的相关性等级,比如 0 不相关、1 一般、2 高度相关;位置越靠后,分母越大,得分被“折损”。再除以理想排序的 DCG(IDCG,Ideal DCG),得到 nDCG = DCG / IDCG,通常在 0 到 1 之间,越接近 1 越好。它像整理书架:最相关的书要放最顺手的位置,而且不止第一本,后面几本也要按重要程度排好。

维度MRRnDCG
关注点第一个相关结果的位置整个列表的排序质量
相关性通常二值:相关/不相关可分等级:不相关/一般/高度相关
后续结果不看看,但越靠后权重越低
适用场景问答、导航、唯一答案搜索、推荐、多相关结果
取值0~1,越高越好0~1,越高越好

和相邻概念的区别

Precision/Recall 关心“找得准不准、全不全”,不关心第几位。Hit Rate@K 只看前 K 个里有没有相关结果,不关心排第几;MRR 关心第一个相关结果有多靠前。MAP(Mean Average Precision)也看排序,但通常按二值相关性计算;nDCG 能处理多级相关性,所以更适合“相关程度有高低”的场景。实际评估常写 nDCG@10、MRR@5,意思是只看前 10 或前 5 个位置。

实际意义

做搜索、推荐、RAG 的人,如果用户通常只要一个答案,优先看 MRR;如果用户会浏览一屏结果,nDCG 更能反映整体体验。普通职场人汇报排序效果时,别只说“准确率”,可以问一句:我们看的是第一个答案够不够前,还是整页排序够不够好?具体指标实现、截断位置和相关性标注规则,以业务目标和官方评估文档为准。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。