MMR-Benchv1.0
English

結果與撤回

第一個亮眼的數字是錯的,而我們說了。

MMR-Bench 最早的結果看起來非常漂亮。那是資料洩漏。把它撤回,是這個專案歷史上最承重的一件事,所以它留在紀錄上。

v1.0 回歸

執行:69 項通過,2 則警告。警告是封存的 v0.2 模型測試裡既有的 PyTorch Transformer nested-tensor 警告。

授權

於乾淨的 runner 上、從全新 checkout 重現:69 項通過、2 則警告,憑證驗證與重播兩項也都通過。

v1.0 的實驗計畫依序跑了十二步 —— 從汰換不安全的求值、經過語意修正,到憑證試驗。

  1. 以 AST 白名單取代不安全的通用 Python 求值。
  2. 修正 ^ROUND 與 1900 / 1904 日期語意。
  3. 重跑全部 v0.1–v0.9 測試。
  4. 執行 30 次隨機輸入突變。
  5. 執行 20 次次方運算試驗。
  6. 執行 20 次進位捨去試驗。
  7. 執行 20 次 1904 日期試驗。
  8. 對四份代表性的 XLSX 稽核簽署。
  9. 驗證簽章與完全重播。
  10. 竄改十份憑證負載,要求全數被拒。
  11. 拿十份憑證去重播錯誤的來源檔,要求全數被拒。
  12. 確認沒有任何一份憑證授權了公式寫入。

夾具實測結果

十一個夾具,每一個都是為了造出三來源之間某一種特定關係而建的。橋接欄計的是外部引擎在結構化參照被展開之前讀不進去的公式數。

夾具可直接載入經橋接結果
正確結構化 XLSX1251 筆三方一致
僅具名稱、已正規化的 XLSX051 筆三方一致
過期快取1249 筆一致,2 筆快取過期
公式漂移1245 筆一致,6 筆下游快取過期
過期快取的安全副本1249 筆一致,2 筆快取依政策不存在
漂移的安全副本1245 筆一致,6 筆快取依政策不存在
2^3 衝突0快取與外部引擎皆 8,MMR 為 1
ROUND0僅外部引擎支援的結果
1900 日期0外部引擎與快取一致
1904 日期0外部引擎結果相差 1,462 天
1/00試算表錯誤類別一致

2^3 那一列就是逼出 v1.0 求值器重寫的缺陷:Excel 的 ^ 傳到 Python 變成了 XOR,於是 =2^3 回傳 1,而活頁簿與外部引擎都說 8。它是被協定抓出來的,不是靠人讀程式碼讀出來的 —— 這正是「持有三份讀數而不是一份」的意義。

ROUND 現在遵循 Excel 的「四捨五入且遠離零」規則,所以 ROUND(2.675, 2) 是 2.68。1904 的落差固定為 1,462 天,而且那是外部引擎的問題、不是活頁簿的問題 —— 協定把它記為引擎限制,並禁止任何寫入。

授權

在三十份輸入突變活頁簿上,MMR 與外部引擎對 100% 的公式一致,因引擎分歧而產生的覆核候選為零。

v0.1 的撤回

第一版釋出時回報標準準確率 100%,在九十度旋轉測試下掉到約 44.5%。那不是模型的成績。資料生成器把右/下固定成遞增方向、左/上固定成遞減方向,於是光看方向 token 就能答對 —— 模型從頭到尾不必讀矩陣。

修法是隨機決定路徑極性,並對同一個矩陣建立成對查詢:(X, d, y) 搭配 (X, opp(d), 1−y)。方向本身不再充分,模型必須真的去讀那條被標示的路徑。

修正後的校準實跑,8×8 矩陣、詞彙值域 16、路徑長度 5:

模型參數量標準旋轉 90°路徑命中率
Row-major,無方向16,18650.00%50.00%22.25%
Row-major+方向 token16,18659.00%54.00%22.25%
MMR,共享四方向15,45983.50%79.25%100.00%
2D CNN26,37854.50%48.00%22.25%

對上最強的基準線,標準測試 +24.5 個百分點、旋轉測試 +25.25 個百分點,而且參數量還略少。真正有意思的是最後一欄:只有 MMR 真的找得到那條被標示的路徑。

這次校準顯示了什麼

在這個合成的方向順序任務上,共享權重的多向遍歷讀得到線性化序列讀不到的結構。

不可外推至

真實 Excel 活頁簿,或一般 AI 任務。這是一次在生成資料上的校準。

安全修復政策

自 v0.4 起,修復門檻一直是寫死的數字,而不是臨場判斷。

候選
結構異常分數達 0.31 以上才產生。
自動修復
只在異常分數 ≥ 0.40 結構修復信心 ≥ 0.65 時執行。
其餘一律
送人工覆核。
來源工作表
永不覆寫。修復寫進副本。
模型分數
只作為佐證,永遠不是唯一授權來源。
僅覆核

這些門檻只在 v0.4 的合成分布上評估過。它們不是適用於任意生產環境活頁簿的認證門檻。

否證標準

v0.5 的實驗計畫事先寫死了什麼算失敗。出現以下情況,就不認為這個方法已被一般性地解決:

  • 叢集式錯誤形成了與正解競爭的局部多數。
  • 移除樣式後產生了錯誤的修復。
  • 匿名化改變了結構性決策。
  • 乾淨的活頁簿被修改。
  • 無法從同儕公式重建出精確的修復。