使い方・開発 中級
データ汚染
Data Contamination
モデルの評価に使うテスト問題や答えが、学習データに混ざってしまうことです。問題を事前に見ていると、本来の実力より高い点数が出てしまい、評価が信頼できなくなります。
別の呼び方ベンチマーク汚染、テストデータの漏えい、リーク
例公開ベンチマークの高得点は、データ汚染の可能性があるため、自社の問い合わせ履歴で作った評価セットでも確かめた。
詳しく
データ汚染とは、評価用のデータが学習データに紛れ込み、テストの点数が実力を正しく表さなくなる現象です。試験問題と模範解答を事前に入手して勉強した生徒が高得点を取っても、応用力があるとは言い切れないのと同じです。
なぜ起きるのか
LLM は Web 上の膨大な文章で学習します。ところが、ベンチマークの問題や解答は、論文、解説記事、掲示板、GitHub などに公開されています。これらが収集対象に含まれていれば、モデルは評価の前に問題を「見て」しまいます。学習データは巨大で、全体を完全に点検するのは現実的ではないため、意図せず混入することが少なくありません。問題文がそのまま入っていなくても、言い換えられた類似問題や、解説付きの解答が含まれるだけで影響が出ます。
具体例
あるモデルが、公開された数学の問題集で非常に高い点数を取ったとします。しかし、少しだけ数字や設定を変えた新作の問題を解かせると、正解率が大きく下がった。このような場合、問題を理解して解いたのではなく、答えを記憶していた可能性があります。
対策の考え方
- 非公開のテストを使う:公開していない問題で評価する。ただし、使い続けると広まるおそれがあります。
- 新しい問題を継続的に出す:学習の締め切り日(知識のカットオフ)より後に作られた問題で測る。
- 問題を作り変える:数値や表現を変えた版で、成績が落ちないかを見る。
- 重複の検出:学習データと評価データの文章の重なりを機械的に調べる。
利用者が気をつけること
- ベンチマークの順位を、そのまま自分の仕事での性能とみなさないでください。汚染がなくても、評価の内容と業務が違えば結果は変わります。
- 提供元が汚染対策をどこまで行ったかは、公開情報で分かる範囲に限られます。
- 最も確実なのは、自社の実際のデータで小さな評価(eval)を作ることです。
関連する考え方
評価の信頼性は、ベンチマークの設計とセットで考えます。また、合成データや Web 由来の学習データが増えるほど、混入を管理するのは難しくなります。LLM-as-a-Judge のような評価手法でも、評価者モデル自体が偏っている可能性を意識する必要があります。
見分けにくさ
汚染は、提供元自身も完全には把握できないことがあります。評価の点数が急に伸びたときは、モデルの改善だけでなく、評価データが混入していないかも疑う姿勢が大切です。複数の異なるテストで一貫して良い結果が出ているかを見ると、判断の材料になります。
あわせて知りたい言葉
- ベンチマークAI モデルの能力を比べるために使う、共通の問題集と採点方法のことです。モデルの発表時に点数が示されますが、点数だけで実際の使いやすさが決まるわけではありません。
- 評価(eval)AI の出力がどれくらい目的に合っているかを、決めたテストケースと基準で測ることです。モデルやプロンプトを変えたときに、良くなったか悪くなったかを判断する根拠になります。
- 学習データAI モデルに学習させるために使う、文章・画像・音声などの大量のデータです。モデルの得意・不得意や偏りは、何を学習したかに大きく左右されるため、質と中身が重要です。
- 学習データの時点モデルの学習に使ったデータがいつまでのものかを示す時点です。それ以降の出来事は、検索や資料を渡さない限りモデルは知らないため、答えが古くなります。最新情報が必要なときは検索や資料の提示が有効です。
- LLM-as-a-JudgeAI が出した答えの良し悪しを、別の LLM に採点させたり比較させたりして評価する方法です。人手では時間のかかる文章の質の確認を、大量に素早く行うために使われます。