数据污染是指用来给大模型打分的评测题,提前混进了模型的训练数据。模型考前就见过原题,分数测的不再是能力,而是记忆力。这相当于考前偷看了答案:题没变,答题的人提前背过,分数虚高。评测有个前提——模型没见过考题,前提一破,榜单数字就不能直接当能力读。
考题是怎么混进训练数据的
污染大多不是故意作弊,而是规模的副产品:MMLU、GSM8K 这类评测为可复现而公开发布,题目答案本来就挂在网上;大模型的预训练语料又正从公开互联网抓取,题目混进去几乎不可避免。微调阶段也可能带入:指令数据里常有评测风格例题,有的团队还拿评测成绩挑版本,等于间接让考题参与训练决策。更隐蔽的是改写题:原题换个说法、换种语言,意思没变,词组比对就查不出来。GPT-4 技术报告披露过:所查 34 项学术与职业考试中,有 9 项超过两成题目与训练数据重叠。
数据污染和过拟合不是一回事
两者都让分数失真,错处不同。过拟合是把训练数据背得太死,换批新数据就露馅,错在学习方式;数据污染是评测数据本身进了训练集,错在评测前提。打个比方:过拟合是只会做练过的题型,数据污染是提前拿到了期末试卷;一个模型可以只占其一,也可以两者都占。容易混淆的还有大模型幻觉:幻觉编造不存在的内容,污染背下真实存在的考题,前者输出不可靠,后者分数不可靠。
分数虚高能被发现吗
检测分两头:训练前靠文本比对,GPT-3 用连续 13 个词筛查,GPT-4 改用 50 字符子串匹配,把撞上的剔出训练集;评测集里还会埋“金丝雀”字符串——一段随机标识,事后查它是否被记住,就知道数据是否被吞进去。训练后靠行为验证:换套同难度新题重考,分数明显下滑,旧分数就有水分。2023 年 GPT-4 刚发布时,研究者发现它在训练截断日前的 Codeforces 简单题 10 道全对,截断后同类题 10 道全错,这道“时间墙”就是污染最直观的证据。Scale AI 的 GSM1k 评测也一样:换成新出的同难度数学题,部分模型掉了 13%。
对普通人来说,不必自己跑检测,但要换一种读榜单的方式:别只看一个榜单总分,多看几个评测和真实任务表现;留意评测是否新的、动态更新的——题目长期不变的公开榜单最容易被污染,私有题库和动态评测更可信;看厂商是否披露污染率,敢把重叠比例写进报告的,比只报漂亮分数的更值得信。分数本身不是骗局,但人人都在为它优化时,它就不再是能力的纯粹度量。读任何基准测试榜单前,先问一句:这张卷子,模型见过没有?