← 回總覽 · 13 篇研究

SIEVE 一晚五篇 · E · 旗艦題被自己殺掉

隔離會抖的題目能不能穩住排行榜:方法有效,但在真實資料上主張被自己推翻

Flaky-Item Quarantine: A Split-Sample, FDR-Controlled Removal Rule for Replicate-Unstable Benchmark Items, and When It Does (and Does Not) Stabilize a Leaderboard

誠實負面 · kill 條件觸發 評分 78–80 10 頁 留下 40,320 筆真實資料集

2026-06-18 · 4 模型 × 210 題 × 48 次重跑 = 40,320 筆真實 MMLU 正確性矩陣 · 溫度 0.7

PDF

原文:Flaky-Item Quarantine(旗艦題)

10 頁 · 178 KB · PDF

63 個 macro;預先註冊的頭條在真實 MMLU 上被推翻,論文照實報告。

開啟 →

這一篇是刻意設計來拿第一名的:跟 Codex 共同設計,特別針對前四篇踩到的四種失敗模式先做預防。結果它被自己在動工前寫下的停損條件殺掉了。我把它完整收進這個成果集,因為這正是整套方法論最重要的一次實測。

01這篇在問什麼

排行榜的名次穩不穩,跟題目會不會抖有多大關係?

一份排行榜的可信度,取決於它給出的順序穩不穩。如果照著它自己宣告的評測協議重跑一次,相鄰的模型就換位置,那這個排名有一部分是評測噪音的產物。

這篇隔離出其中一個可控來源:flaky item —— 在宣告的重複分布下(固定題目、固定計分、固定提示包裝、固定採樣溫度、種子=重複次數),模型答對與否接近擲硬幣的題目。

方法是分割樣本的精確二項式檢疫:先導重複用來選出「最可能暴露抖動」的模型,全新的保留重複拿來對一個事前設定的不穩定容忍度做精確二項式檢定,再用 Benjamini–Hochberg 控制偽發現率。虛無分布是從容忍度算出來的,絕不從被檢定的翻轉資料估計 —— 這正是它跟「把翻過的題目移掉」這種天真做法的差別。

02同一個方法,兩種底材:親眼看停損條件觸發

切到模擬看排名帶變穩;切到真實 MMLU 看它反而更亂。預先註冊的 50% 門檻就是在這裡失守的。

03結論:方法有效,主張被推翻

63 個 macro。這一節要分兩半讀。

前半:方法在模擬上完全成立

≤1.3%
模擬中的實測 FDR(目標 q=0.1)· \SimMaxFdr
92%
K=60 次重跑時的偵測力 · \SimPowerKSixty
66.6%
移除 flaky 題後,相鄰配對分數差變異的下降幅度 · \SimVarReduction
12.8×
一道擲硬幣題相對於一道穩定題貢獻的變異倍數 · \SimDomFactor

而且有一支「天下沒有白吃的午餐」破壞測試:當資料裡根本沒有 flaky 題時,方法不能製造出假的變異下降 —— 實測 0.2%,等於沒有。

後半:真實 MMLU 上,預先註冊的頭條被推翻

預先註冊的頭條主張是:移除 flaky 題可以讓排行榜的名次翻轉率下降至少 50%,而且贏過同預算的基準線。這條在真實資料上失敗了。

指標模擬(有利情境)真實 MMLU判定
被隔離題數50 題(設計植入)72 / 210(34.3%)
隔離集合稽核 FDR≤1.3%0.0%(72 題全數一致)方法有效
變異下降66.6%28.4%未達 50% 門檻
同預算基準線(丟最難的題)−24.8%(輸)29.9%(贏過我的方法)被基準線打敗
名次翻轉率23.1% → 18.9%(改善)6.8% → 28.6%(惡化)反向

原因很清楚:真實的 MMLU 排行榜本來就已經很穩(翻轉率只有 6.8%),在這種情況下移掉 34% 的題目,損失的統計力比省下的噪音更多。效益是情境相依的,不是普世的。

04產線:連資料都是自己跑出來的

這篇跟前四篇最大的差別 —— 它自己收了一份真實資料集。

前四篇用的是公開資料或模擬。這篇需要「同一題重跑很多次」的資料,而這種資料不存在,所以自己跑:4 個本機模型 × 210 道分層抽樣的 MMLU 題 × 48 次重跑,溫度 0.7,種子=重複次數(可重現)= 40,320 筆。全部在這台 M5 Max 上用 ollama 跑完。

環節工具備註
選題SIEVE 題庫(38 題排名)從既有題庫挑 S2 已過的候選,不是臨時想的
規格SPEC.md動工前先寫死主張、資料、統計、kill 條件
統計核心Python 標準函式庫不用 numpy / scipy —— 依賴越少,別人越容易重跑
測謊器test_*.py寫在方法本體之前
數字入稿scripts/make_macros.pyresults JSON → LaTeX macro,正文零手打數字
排版tectonic終端機直接編譯
對抗審查_orchestrator/codex_review.sh叫 Codex(GPT-5.5)當敵意審稿人
獨立複驗_orchestrator/verify_paper.shorchestrator 重跑測試、重編 PDF、掃關鍵字與引用

蒐集過程中踩到的坑(已寫進紀錄)

症狀

透過 ollama 呼叫 MLX 格式的模型時,回傳的內容是空的。

原因

這些模型預設會進入 thinking 模式,必須明確帶 think:false

處理

修好蒐集器並重跑。這條被記錄下來,因為它會讓任何人重現時同樣卡住。

這份資料集本身是這篇最有價值的遺產:一個 4 模型 × 210 題 × 48 次重跑的MMLU 正確性矩陣,可重現、可再利用於任何 benchmark 噪音或排行榜穩定性研究。

05關卡與交付物

gates/ 下 8 個檔案,含一個中途轉向紀錄。

G0

主張卡 + 拒稿信 + 停損條件

動工前寫下「若真實資料上達不到 50% 就判負」

PASS
G1

新穎性

獨立雙掃描器

PASS
G2

資料

自己跑 40,320 筆真實重跑矩陣

PASS
G3

設計轉向

`gates/G3_design_pivot.md`:中途設計調整的完整紀錄

已記錄
G3

統計測謊器

植入回收 + 白吃午餐破壞測試 + 超均勻 p 值檢查

PASS
G4

分析

模擬與真實資料分開報告

PASS
G6

最終判定

`gates/G6_final.md`:**停損條件觸發 → 誠實負面**

KILL 條件命中

G0 那一關是關鍵。停損條件是在還沒看到任何真實資料之前寫下的。如果等到看完資料再決定門檻,就會不自覺地把門檻挪到剛好能通過的位置。

06測謊器:確認方法沒有在無中生有

移除題目一定會讓變異下降,關鍵是有沒有下降得比亂移除更多。

基準線那一條最後就是它的死因 —— 在真實 MMLU 上,「丟掉最難的題」這個笨基準線(29.9%)贏過我的方法(28.4%)。如果沒有事前設定這個對照,論文會只報 28.4% 並宣稱成功。

07對抗審查:旗艦題是跟 Codex 共同設計的

這一篇的設計本身就是對抗式的產物。

在前四篇都被 Codex 抓到真問題之後,第五篇改變做法:先讓 Codex 當共同設計者,針對前四篇踩到的四種失敗模式(頭條用了理論管不到的規則、從被檢定的資料估虛無、把內建設定當發現、沒跟同預算基準線比)事先設防。

同時由 Codex 幫忙預先註冊停損條件 —— 也就是說,殺死這篇論文的那條規則,是設計階段就由對抗方寫下的。

然後它真的觸發了。這是整套方法論最有說服力的一次實測:停損條件不是裝飾。

最終評分 78–80,誠實負面。目標是超越 SAVE 的 89,沒有達成,這一句照實寫在總結報告的第一段。

08誠實限制與後續方向

底材選錯了

MMLU 是選擇題,本來就穩定(翻轉率 6.8%)。在一個已經很穩的排行榜上做穩定化,沒有空間可以改善。

正確的底材是什麼

推理型/代理型的 benchmark(GSM8K、SWE-bench 這一類),抖動嚴重且後果實際。方法與資料蒐集流程都已就緒,缺的是多小時的生成密集蒐集。

09產出物

~/Desktop/sieve-papers/E-flagship-quarantine/paper/main.pdf
10 頁論文
…/results/runs.jsonl
**40,320 筆真實 MMLU 多次重跑正確性矩陣**(可再利用)
…/eqr/
分割樣本檢疫實作
…/gates/G6_final.md
停損條件觸發的完整判定紀錄
~/Desktop/sieve-papers/_orchestrator/codex_flagship_consult.txt
與 Codex 的旗艦題共同設計紀錄

一晚五篇,目標是產出至少三篇強過既有兩篇的論文,並做出一篇打敗 SAVE 的第一名。誠實結論:沒有達成。最好的是 B 的 85,旗艦被自己的停損條件殺掉。但五篇都通過了獨立複驗,都可以被別人拿去用 —— 而一個捏造的 92 分不行。

← Judge Drift總覽ECG-Trust →

PAPER 09 · Flaky-Item Quarantine(旗艦)· SIEVE E