一句话定义:Leaderboard Hacking(榜单攻击)指模型团队不去真正提升模型的通用能力,而是针对某个公开排行榜的评测方式做定向优化,让排名比真实水平更好看。
排行榜的常见构造是三段:一套固定的题、一个自动评分器(很多时候是另一个模型做 LLM-as-a-judge,或者干脆是精确匹配)、一批人类偏好投票。题目固定、规则公开,它就从"测量工具"变成了"可以优化的目标"。这就是 Goodhart 定律说的:当一个指标成为目标,它就不再是好指标。
打个生活化的比方:一家餐厅刷点评。菜没变好,但老板知道评分主要看前一百条评价,于是请人写好评、送小菜换五星、把容易触发差评的菜从菜单上撤掉。分数涨了,真实体验没变。榜单攻击就是模型界的这套操作。
三种常见手法
样本选择与污染(data contamination):把公开评测题,或者风格高度接近的题,混进训练数据。模型不是学会了,是"见过答案"。更隐蔽的做法是拿公开题生成大量同风格合成数据,绕过直接的题目匹配检测。
提示词包装(prompt wrapping):针对评测的输入格式做特化。固定 system prompt、补 few-shot 示例、强制先写推理过程、按评分器的偏好调整输出风格——更长、更多小标题、语气更笃定。人类评审和自动评审都吃这一套,而用户日常提问时并没有这些包装。
策略性提交(selective submission):同一个训练流程产出多个检查点、多个随机种子,挑在公开集上分数最高的那个提交。这在统计上属于多重比较:榜上第一名,可能只是运气最好的那一次。
和相邻概念的区别
| 概念 | 谁在钻空子 | 是否刻意 | 典型表现 |
|---|---|---|---|
| 榜单攻击 | 提交方(人) | 通常是刻意的 | 只报最好的检查点 |
| 数据污染 | 训练流程 | 可能无意 | 评测题混进训练集 |
| 奖励作弊(reward hacking) | 模型自身 | 无意的涌现行为 | 钻评分函数的漏洞 |
评测方怎么防
留私有留出集(private holdout),定期换题;不公开全部题目和评分细则;用滚动更新的动态题库;报告多次运行的方差和置信区间,而不是一个单点分数;做污染检测,比如改写题干、加扰动、看模型对错误选项是否异常敏感;要求提交方说明数据来源并允许抽查复现。人类偏好评测则用盲评、成对比较、随机化展示顺序,压住"风格讨喜"的干扰。具体规则各家不同,以官方页面为准。
对普通人的意义
看到榜单分数,先问三句:这是什么题?评分器是谁?提交方有没有机会提前见过题?这三问答不上来,排名就只能当参考。最靠谱的做法还是拿自己的真实任务跑一遍小规模对比——你的场景,才是你唯一在意的榜单。
