ベンチマーク汚染 — 「高スコア」を疑う技術
ベンチマークの高スコアが実力なのか暗記なのかを見分けるための記事。汚染の3つの型、n-gram重なり・埋め込み近傍・メンバーシップ推論という検出手段とその限界、カナリア文字列と時系列分割の仕組みを1から解説し、論文を読むときの警戒点をチェックリストにまとめる。
Rethinking Benchmark and Contamination for Language Models with Rephrased Samples
一次資料 — この記事の根拠
この解説の公開 2026-09-03
Rethinking Benchmark and Contamination for Language Models with Rephrased SamplesarXiv:2311.04850論文ページ·PDFA Careful Examination of Large Language Model Performance on Grade School ArithmeticarXiv:2405.00332論文ページ·PDF
Detecting Pretraining Data from Large Language ModelsarXiv:2310.16789論文ページ·PDF
Do Membership Inference Attacks Work on Large Language Models?arXiv:2402.07841論文ページ·PDF
LiveCodeBench: Holistic and Contamination Free Evaluation of Large Language Models for CodearXiv:2403.07974論文ページ·PDF
過去問を暗記した受験生の偏差値
模試で偏差値78を取った受験生がいます。実力かもしれません。でも前日にたまたま同じ問題冊子を手に入れていたなら、その78は学力ではなく記憶力の証明です。困るのは、答案用紙だけを見ても両者を区別できないことです。正解は正解として、同じ形で並んでいます。
大規模言語モデルの評価で起きているのは、まさにこれです。学習データはウェブの大規模クロール、評価に使うベンチマークはGitHubにも解説ブログにもデータセット共有サイトにも載っている。有名なベンチマークほどコピーが多く、次のモデルの学習データに入る確率が上がる。誰かの不正ではなく、「公開された問題で測る」という仕組みが必然的に生む結果です。
この記事では、その汚染(contamination)をどう検出し、どこまでしか検出できないのかを扱います。
汚染には三つの型がある
一括りにされがちですが、実害の大きさで三つに分けると議論がはっきりします。
入力だけの汚染は、問題文はコーパスにあるが正解はない状態です。影響は小さめですが、ゼロではありません。「この文体の問題は選択肢Cが多い」といった、中身と無関係な癖まで拾えるからです。
入力と正解の汚染が本命です。問題と答えがセットで入っていれば、モデルは推論せずに思い出せます。解説記事も提出用リポジトリもたいてい問題と正解を並べて載せるので、この型が最も起こりやすい。
タスク形式の汚染は微妙な三つ目です。問題そのものは無いが、出題フォーマットや指示文のテンプレート、採点されやすい回答の形が大量にある状態。スコアは上がりますが、上がっているのは「そのテストの受け方」の習熟度です。不正ではないけれど、測りたかった能力とはずれています。
共通するのは、汚染されたスコアは汚染されたテストの上でだけ高いことです。同じ能力を問う別の問題に持っていくと落ちる。この性質が検出の足場になります。
暗記と汎化は、グラフの上で分かれる
汚染したモデルの挙動は、教科書に出てくる過学習とよく似ています。訓練データ上の成績はいくらでも上がるのに、見たことのないデータへの成績はどこかで頭打ちになり、やがて下がる。
普通の過学習と違うのは、乖離が見えないことです。過学習は訓練誤差とテスト誤差を並べれば分かります。汚染は、その「テスト誤差」だと思っていたものが実は訓練誤差だった、という状況です。目盛りが壊れているので、グラフを眺めても異常は出ません。基礎は過学習と評価設計にあります。
とはいえ外から何も見えないわけではありません。暗記には症状が出ます。問題文を少し書き換えると急に解けない。選択肢の順を入れ替えると点が落ちる。答えは合っているのに途中式が破綻している。最後が特に分かりやすい兆候です。推論して解いたなら過程と結論は整合するはずで、結論だけ正しく過程がでたらめなのは、思い出した答えに理由を後付けした形だからです。
なぜ構造的に避けられないのか
「気をつければ防げる事故」と思うと対策を見誤ります。三つの力が同時に押しています。データの規模 — 数兆トークンの中身を人が読んで確認することは不可能で、除外を自動化した瞬間に「文字列としては一致しないコピー」がすり抜けます。ベンチマークの人気 — 良いものほど引用・再配布・翻訳されるので、役に立つベンチマークほど早く壊れます。リーダーボードの圧力 — 学習データが完全にきれいでも、スコアを見ながら配合やプロンプトを何十回も調整すれば、テストの情報は人間を経由してモデルに流れ込みます。
だから問いは「汚染を防げるか」ではなく「どこまで検出できるか」になります。検出手段は突き詰めると二種類しかありません。コーパスの側を調べて一致を探すか、モデルの側を突いて崩れ方を見るかです。前者は学習データが公開されているときにしか使えず、後者は証拠としての強さに限界がある。両方の性質を知って初めて、論文の「汚染チェック済み」という一文がどの程度のことを言っているのか見積もれます。
コメント
コメントにはログインが必要です