读懂模型基准测试
基准测试表格是营销门面,只是里面填的是真数字。怎么从中提取信号,以及为什么你自己的二十个样本胜过任何排行榜。
每次模型发布都附带一张表,显示它领先。那些数字通常是真的,但也是被挑选过的,而挑选本身就完成了大部分工作。
基准测试值得读,但值得带着一组具体的问题去读。
基准测试测什么
大致分四类:
知识与推理——跨学科的选择题。测的更多是记住的知识面,而不是推理。
数学——从小学应用题到竞赛题。可自动验证,所以打分可靠,也因此成了热门靶子。
代码——生成一个函数,跑测试。同样可自动验证。注意单元测试通过不等于代码写得好。
人类偏好——两两对比汇总成排名。测的是人更喜欢什么,这与质量相关,也与长度、排版和自信程度相关。
最后这个区分很重要:可自动验证的基准测的是正确性,偏好类基准测的是讨喜程度,两者会分道扬镳。
数字误导人的四个原因
污染
基准测试发布在互联网上,训练数据也来自互联网。在预训练时见过测试集的模型,是在回忆,不是解题。
各家实验室会做去污染,严谨程度不一,而且真正检测出来很难。实用的信号是:一个模型在成熟基准上得分很高,在难度相近的新写基准上却很差,那它就是在向你展示污染。
挑选
公开的表格只展示模型赢的那些基准。剩下的没有义务报告。一张基准选择古怪的表,值得多看一眼。
prompt 敏感度
分数会随 prompt 格式、few-shot 数量、答案抽取方法大幅变动。实验室报的是他们的最佳配置,而你用的是你自己的。拿两个模型自报的数字对比,就是在比两套不同的设置。
饱和与对靶优化
一个基准一旦成为头条指标,就会被人对着优化。训练数据配比向基准风格的样本倾斜。分数涨得比能力快,基准也就失去了区分度——这就是热门基准每隔几年就要换一轮的原因。
基准测试真正擅长什么
粗略分档。 区分小模型和前沿模型。可靠,因为差距摆在那。
缩小候选范围。 把十二个选项缩到三个值得测的。合理且有用。
跟踪领域进展。 某一类任务的能力有没有在提升。
发现特定强项。 一个模型在代码上遥遥领先、其他方面平平,那它很可能确实更擅长代码。
它们告诉不了你的事
它对你的任务行不行。 学术题目的聚合分数,说明不了它能不能分类你的客服工单。
它在你的 prompt 上表现如何。 指令遵循、格式遵守、拒答行为,这些才是你真正要搏斗的东西,而它们几乎没被测。
长上下文质量。 标称的上下文长度和基准分数,都抓不住长输入中间部分到底有没有被用上。
性价比。 贵五倍换来两分提升,是笔亏本买卖,但没有哪张表会告诉你。
多次运行的可靠性。 基准报的是平均值,而你的生产系统关心的是失败率。
替代方案
从你的业务里拿出二十个真实样本,带上期望输出,拿三个候选模型各跑一遍。
这比所有排行榜加起来信息量都大,而且一个下午就能做完。它还会成为你的评测集,而迭代 prompt 和更新模型本来就需要它。
行之有效的顺序是:基准测试缩小范围,你的样本做决定,评测集事后抓回归。
实操要点
优先看独立评测,而不是自报的表格(如果有的话)。
看清楚日期。 模型和基准都在动,半年前的对比可能已经什么都不是了。
先弄明白一个基准里装的是什么,再去信它上面的分数。有些测的东西和名字暗示的差得很远。
模型更新后重新测。 厂商会在稳定的版本名底下改模型,只有你的评测集能告诉你。
要点回顾
- 基准测试是真数字,但是为展示挑过的。
- 四种失真:污染、选择性报告、prompt 敏感度,以及针对指标本身的优化。
- 适合分档和缩小候选范围,对预测你自己任务上的表现毫无用处。
- 它们不测指令遵循、长上下文质量、性价比和可靠性。
- 自己的二十个样本胜过任何排行榜——还顺便成了你本来就需要的评测集。
下一篇: 专家混合