返回 经典机器学习 思维导图
中文·English
📊 经典机器学习ID: mrr-gauc

MRR 与 GAUC

MRR & GAUC
🎯核心定义
两个工业级排序/推荐指标。平均倒数排名 MRR=1QqQ1rankqMRR = \frac{1}{|Q|} \sum_{q \in Q} \frac{1}{rank_q}, 其中 rankqrank_q 是 query qq 结果列表中第一个相关条目的位置, 无相关结果时该项贡献 0; MRR 范围 (0,1](0, 1]。数值例: 3 个 query 的首个相关分别在第 1、3、5 位, 则 MRR=13(1+13+15)=13×1.5330.511MRR = \frac{1}{3}(1 + \frac{1}{3} + \frac{1}{5}) = \frac{1}{3} \times 1.533 \approx 0.511
📌核心概述
GAUC (Group AUC): 对每个用户单独计算 AUC, 再按用户样本量加权平均, GAUC=uwuAUCuuwuGAUC = \frac{\sum_u w_u \cdot AUC_u}{\sum_u w_u}, 通常 wuw_u 取用户 uu 的曝光/样本条数。数值例: 用户 A 有 80 条样本、AUCA=0.7AUC_A = 0.7, 用户 B 有 20 条样本、AUCB=0.6AUC_B = 0.6, 则 GAUC=80×0.7+20×0.6100=56+12100=0.68GAUC = \frac{80 \times 0.7 + 20 \times 0.6}{100} = \frac{56 + 12}{100} = 0.68, 而两个用户的简单平均只有 (0.7+0.6)/2=0.65(0.7 + 0.6)/2 = 0.65
💡使用场景
搜索/问答/知识库检索的“首个命中”评估用 MRR; 推荐系统精排 (阿里 DIN 论文) 用 GAUC 评估用户级排序质量; 面试常追问二者的区别、手算与工业选型。
解决的核心痛点
MRR 只关心第一个相关结果的位置——搜索场景用户几乎只看第一屏, 多个相关结果与后续位置的细节不重要, MRR 把注意力集中在“第一个命中够不够快”; 全局 AUC 在推荐场景被头部活跃用户主导 (用户分布头重脚轻), 少数大用户的排序好就能拉高全局 AUC, 掩盖大多数用户的体验问题; GAUC 在用户粒度上评估并把每人的贡献按样本量加权, 更贴近“每人一个模型”的个性化视角, 对长尾用户更公平。
🎯5 个高频面试考点 (Exam Points)
1
手算 MRR: 3 个 query 的首个相关位置为 1、3、5, 求 MRR; 无相关结果的 query 贡献多少?
2
MRR 与 NDCG 的区别: 为什么 MRR 只看首个相关位置, 与“搜索用户只看第一屏”有什么关系?
3
为什么推荐场景用 GAUC 而不是全局 AUC? 用户分布头重脚轻如何误导全局 AUC?
4
手算 GAUC: 用户 A 80 条样本 AUC 0.7, 用户 B 20 条样本 AUC 0.6, 求 GAUC 并说明与简单平均的差异?
5
工业排序评估如何选型: 召回阶段、精排阶段各用什么指标? 为什么 DIN 论文用 GAUC?
📖 关联深度指南:📄 ml-math-and-eval-metrics
更新于 2026-08-12
🎯
检验攻克程度:针对「MRR 与 GAUC」专属刷题排雷
做单选排雷题、推导选项机制,答错自动收录进专属错题本。
🚀 开始本考点专项刷题
上一个知识点NDCG下一个知识点概率校准

🔗 更多 经典机器学习 知识点卡片

AdaBoost 算法手推Bagging 与随机森林HMM 参数学习 Baum-WelchGBDT 负梯度拟合