AI・機械学習
上級

Decontaminationフィルタリング(デコンタミネーションフィルタリング)

LLMの学習データからベンチマークや評価データと重複するテキストを検出・除去する前処理工程。N-gramマッチングやハッシュベースの類似度判定を用いて、学習データの汚染を事前に防止する。

0 回閲覧
0 いいね

Decontaminationフィルタリングとは

Decontaminationフィルタリングは、LLMの学習データパイプラインにおいて、ベンチマークや評価データセットとの重複を検出・除去する前処理工程である。「除染」を意味するDecontaminationの名の通り、学習データから評価データの「汚染」を取り除く操作を行う。

この工程は、学習済みモデルのベンチマーク結果の信頼性を担保するために不可欠である。GPT-3以降の主要なLLMの技術レポートでは、decontamination手順とその結果が記載されるのが標準的になっている。

主要なフィルタリング手法

Decontaminationには複数のアプローチがあり、それぞれ精度と計算コストのトレードオフがある。

手法原理精度計算コスト代表的な使用例
N-gramマッチ連続N単語の完全一致で検出高中GPT-3/GPT-4 (13-gram)
MinHash + LSH文書のハッシュ署名による近似重複検出中低RedPajama, Dolma
Suffix Array最長共通部分文字列の効率的検出最高高C4 データセット
埋め込みベース意味的類似度による検出中〜高最高研究用途
Bloom Filter確率的データ構造による高速メンバーシップ判定中(偽陽性あり)最低大規模前処理のプレフィルタ

N-gramマッチの詳細

最も広く使われている手法がN-gramマッチである。GPT-3のレポートで採用され、以降の多くのモデルで標準的に使われている。

手順:

  1. 評価データセットの各サンプルからN-gram集合を抽出する
  2. 学習データの各文書からN-gram集合を抽出する
  3. 両者の交差(共通N-gram)を検出する
  4. 重複率が閾値を超える文書を学習データから除外する

Nの選択: Nが小さいと偽陽性(無関係なテキストの誤除去)が増え、Nが大きいと偽陰性(パラフレーズされた汚染の見逃し)が増える。実務上は8〜13が使われることが多い。

N=8:  偽陽性↑ 偽陰性↓ → 保守的(安全側)
N=13: 偽陽性↓ 偽陰性↑ → 緩い(見逃しのリスク)

GPT-4の技術レポートでは13-gramが使用され、各ベンチマークに対する汚染率と、汚染除去前後のスコア差が報告されている。

パイプラインへの組み込み

実際のLLM学習パイプラインでは、decontaminationは以下の位置に組み込まれる。

Webクロール → 言語フィルタ → 品質フィルタ → 重複除去(dedup)
  → ★Decontamination★ → トークン化 → 学習

重複除去(deduplication)は学習データ内部の重複を除去する工程であり、decontaminationは学習データとベンチマークデータ間の重複を除去する工程である。両者は目的が異なるが、同じツール(MinHash等)を共有できる場合が多い。

課題と限界

Decontaminationフィルタリングにはいくつかの根本的な限界がある。

パラフレーズへの脆弱性: 問題文が言い換えられた場合、N-gramマッチでは検出できない。例えば「What is the capital of France?」が「France's capital city is...」に変形されると、13-gram一致は発生しない。

間接汚染の検出困難性: ベンチマーク問題の解説記事や、問題を引用した論文は、問題そのものとはN-gram重複が低いため除去されにくい。しかし、モデルは解説から正答を学習できる。

ベンチマークの網羅性: 新しいベンチマークが次々と作成されるため、全てのベンチマークに対してdecontaminationを実行するのは非現実的。主要なベンチマーク(MMLU・HumanEval・GSM8K等)に限定するのが一般的。

過剰除去のリスク: 厳しい閾値を設定すると、ベンチマークと偶然類似しているだけの有用な学習データまで除去してしまう。特にN=8のような短いN-gramでは、一般的な表現が一致しやすい。

主要モデルでの採用状況

モデルDecontamination手法N-gram長対象ベンチマーク
GPT-3N-gramマッチ13主要ベンチマーク全般
GPT-4N-gramマッチ13MMLU, HellaSwag, WinoGrande等
LLaMA 2N-gramマッチ + MinHash10主要ベンチマーク全般
Mistral非公開-非公開
Gemini非公開(レポートに記載あり)-主要ベンチマーク

FAQ

Q1: Decontaminationを実施すれば汚染問題は解決するか?

完全な解決にはならない。N-gramマッチは直接的な重複のみを検出し、パラフレーズや間接的な汚染は見逃す。Decontaminationはリスク軽減策であり、動的ベンチマークの採用や独自評価セットの準備と組み合わせることが推奨される。

Q2: Decontamination後にスコアはどの程度下がるか?

モデルとベンチマークによるが、GPT-4のレポートではMMLUで汚染除去後も大きなスコア低下は見られなかったと報告されている。一方、小規模モデルでは5〜10ポイントの低下が見られるケースもある。汚染の影響が大きいほどスコア低下も大きい。

Q3: 自社でDecontaminationを実施するにはどうすればよいか?

オープンソースのツールとしてBigScienceのdecontamination scripts、EleutherAIのlm-eval-harness内の汚染分析機能、datasketchのMinHash実装などが利用できる。学習データ規模に応じてMinHash(大規模向け)かN-gramマッチ(中規模向け)を選択する。