Benchmark 飽和的真正問題:不在測量,在驗證
TL;DR:GSM1k 研究指出 benchmark 飽和有一大塊是污染,不是真實能力提升。但比污染更值得想的是:我們從來沒有方法驗證模型「學會了一件事」,只有方法量它「在這個分布上會不會答」。每出一份更難的 benchmark,治理面其實沒前進。 每次新模型發表的 blog 我都會點開看一下,幾乎都長同一張表。GSM8k 99%、MMLU 92%、HumanEval 衝到接近 100。看久了會覺得這是某種 ritual,每代都會再比上一代好看一點。 可是把同一個模型放回真實工作裡,丟一份沒進 GitHub 的內部 codebase、丟一份它沒看過格式的會議筆記,它還是會犯那種會讓你嘆氣的錯。這件落差其實已經不是新聞了,奇怪的是每一輪 release blog 還是把分數寫成 state of the art,我每次看到都會有點 ???。我自己在這幾輪 release 之間,慢慢把這個怪怪的感覺磨成一個比較確定的想法:飽和大概不是測量問題,是我們一直沒解過的驗證問題。下面就是這個想法是怎麼長出來的,講起來有點繞,請容忍我一邊想一邊寫。 飽和到底是什麼意思 「分數沒地方爬了」就叫飽和。MMLU 在前沿模型上落在 88% 到 94% 這個窄帶,這個區間裡誰高誰低很大機率只是 noise。GSM8k 上前沿模型已經拿到 99% 上下,再進 0.5 個百分點也沒什麼故事可講。能力提升是真的,問題只是 benchmark 已經不在追蹤它本來要追蹤的那把尺了。 一把尺到頂的時候,你不會看到尺壞掉,你只會看到分數還在漲。刻度跟它後面那個能力之間在這個高度悄悄脫了鉤。直覺上下一步當然會想到「再做一把更長的尺」,這個直覺沒問題,只是這條路後面會撞到結構問題,我們等一下會繞回來。 用得上的證據:GSM1k Scale AI 在 2024 年做了一份 GSM1k 研究,重出 1,250 題、難度跟 GSM8k 對齊的小學數學題,然後重跑一輪。abstract 的數字很乾淨:表現最差的家族在 GSM1k 上掉了 13 個百分點。這個是會出現在所有摘要裡的那個 13。 我自己比較喜歡的是後面那個比較少人引用的數字,老實說第一次讀我也跳過了,第二次回去翻才看到:模型「生成 GSM8k 樣本的機率」跟「GSM1k 與 GSM8k 之間的分數落差」有 Spearman 相關,r² = 0.32。 ...