大規模言語モデルにおけるデータ汚染分野の包括的な調査と「LLMSanitize」
3つの要点
✔️ 大規模言語モデルにおける汚染検出の分野を初めて包括的にレビュー
✔️ 汚染をデータ汚染とモデル汚染に分類し、各カテゴリの既存研究を整理
✔️ 汚染検出方法を共有できるオープンソースのPythonライブラリ「LLMSanitize」を紹介
How Much are LLMs Contaminated? A Comprehensive Survey and the LLMSanitize Library
written by Mathieu Ravaut, Bosheng Ding, Fangkai Jiao, Hailin Chen, Xingxuan Li, Ruochen Zhao, Chengwei Qin, Caiming Xiong, Shafiq Joty
(Submitted on 31 Mar 2024)
Comments: 8 pages, 1 figure, 1 table
Subjects: Computation and Language (cs.CL)
code:
本記事で使用している画像は論文中のもの、紹介スライドのもの、またはそれを参考に作成したものを使用しております。
概要
人工知能の進化が急速に進む中、大規模言語モデルは、自然言語処理やコンテンツ自動生成、複雑な意思決定システム、自律エージェントなど、多岐にわたる分野で革新をもたらす重要なツールとなっています。これらのモデルは膨大なデータセットに基づいて学習され、人間が作成したものと区別がつかないほど自然な回答を生成することができます。しかし、データセットの完全性が損なわれると、モデルの有効性と信頼性に深刻な影響を及ぼします。
この分野では「汚染」が大きな問題になっています。この汚染には、評価データセットが学習セットに含まれることで評価結果が歪んでしまう「データ汚染」と、モデルが事前に評価データセットを見てしまう「モデル汚染」があります。これにより、モデルの性能評価が正確でなくなり、バイアスが生じる可能性があります。さらに、汚染データが入力のみか、入力とラベルの両方を含むかによって、「入力汚染」と「入力+ラベル汚染」に分類されます。モデル汚染の検出方法は、ローカルモデルへの完全アクセスが可能なホワイトボックス検出と、APIアクセスのみが可能なブラックボックス検出に分かれます。
汚染は技術的正確性だけでなく、倫理的および商業的な面でも課題を提起します。特に医療診断、法律相談、金融サービスなど、信頼性が求められる分野では、汚染データに依存するリスクが非常に大きくなります。企業が戦略的意思決定にAIを活用する中で、データの正確性の保証は非常に重要です。大規模言語モデルの出力の信頼性は投資家の信頼にも影響を与え、技術的優位性や財務的見通しにも関わります。
このような状況下では、大規模言語モデルにおける汚染検出の包括的な調査とリソースの共有が求めらます。この論文では、汚染の範囲と性質を明確にし、その発生源、種類、およびモデルの性能への影響を特定しています。また、これにより、汚染リスクを軽減する戦略の重要性を強調し、大規模言語モデルの展開が公平性と経済的持続可能性を確保することを目指しています。
この論文では、データ汚染に関連する方法と発見、モデル汚染の問題、現在および将来の課題、ベストプラクティス、さらに、染検出方法を共有できるオープンソースのPythonライブラリ「LLMSanitize」を紹介しています。
データ汚染のレビュー
データ汚染の検出は、学習データセットDと評価データセットDEが与えられた際に、D∩DEが空であるかどうかを確認することが目的です。これは、評価ベンチマークの性能が汚染データによって歪められないようにするために非常に重要です。
複数の大規模言語モデルの学習レポートでは、下流の評価データセットと事前学習セット間の汚染レベルを、最も基本的なデータ汚染評価手法である文字列マッチングを使用して評価しています。この手法には以下のようなものが紹介されています。
- GPT-2 (Radford et al., 2019)
- 評価セットからの8-グラムのうち、WebText学習セットに含まれる割合として汚染を計算。一般的な言語モデルデータセットのテストセットとWebTextデータセット間の重複は1-6%、平均で3.2%。
- GPT-3 (Brown et al., 2020)
- Common Crawl (C4) データセットと13-グラムの重複があるデータポイントを削除。大規模なデータ汚染が明らかになり、Wikipedia言語モデリングベンチマークやSQuAD 2.0などがほぼ完全に汚染されていることが示された。
- Dodge et al. (2021)
- C4データセットを調査し、NLPタスクの学習やテストデータセットの事前学習コーパスへの含有量を測定。汚染レベルは2%未満から50%以上。
- PaLM (Chowdhery et al., 2023)
- 汚染リスクのある10の評価データセットを特定し、70%以上の8-グラムが学習セットに含まれるかどうかでデータセットをクリーンなサブセットと汚染されたサブセットに分割。GPT-3と同様に、クリーンセットと汚染セットの間のパフォーマンスギャップは小さい。
- GPT-4 (Achiam et al., 2023)
- 評価データポイントからランダムに抽出した50文字の部分文字列が学習セットの部分文字列である場合に重複と見なし、評価セットと事前学習データ間の汚染度を測定。汚染がゼロショット結果に与える影響はほとんどなし。
- Llama-2 (Touvron et al., 2023)
- トークンを使用して汚染を測定し、評価サンプルと学習セットの両方に10トークン以上のトークンn-グラムとして現れる場合に汚染を定義。汚染レベルは汚染されたトークンの割合で測定。
- Li (2023b)
- CommonCrawlから一致するページとBing APIからのクエリとのMETEORスコアを計算し、0.75を超えるものを汚染と見なす。汚染レベルは1%から47%。
- Deng et al. (2023)
- 事前学習データセットからトップ10の文書を検索し、13-グラムのかたまりに分割し、評価データポイントのかたまりとの重複を計算。結果として、TruthfulQAは事前学習データセットと高い重複を示す。
単純な文字列マッチングは、パラフレーズされたサンプルには効果がありません。しかし、埋め込み間のコサイン類似度を計算することは、語彙の変更に対してより堅牢な代替手段となります。この手法には以下のようなものが紹介されています。
- Lee et al. (2023)
- Open-Platypusデータセットで、学習アイテムに対してコサイン類似度が80%を超えるテスト質問を削除して汚染を防ぐ。
- Phi-1 (Gunasekar et al., 2023)
- コードスニペット間の埋め込みベースの検索が効果的であり、n-グラムの重複は失敗することを示す。
- Riddell et al. (2024)
- 文字列マッチングと埋め込み類似性を組み合わせたハイブリッドアプローチを提供。広く使用されているコード生成ベンチマークが事前学習セットにより汚染されていることを示す。
文字列マッチングは大規模言語モデルによって生成された合成学習データを検出するのに苦労する可能性があり、埋め込みを使用したセマンティック類似性検索では適切な類似性しきい値を選択するのが難しいのが現状です。そこで、堅牢性を向上させるために、大規模言語モデル自体を利用して汚染を検出する方法が提案されています。この手法には以下のようなものが紹介されています。
- Yang et al. (2023b)
- リフレーズサンプルの存在により、汚染チェックが難しくなる。埋め込み類似性検索と大規模言語モデル(GPT-4)を組み合わせて検出。
- Zhu et al. (2023)
- 汚染除去パフォーマンスを評価するためのベンチマークClean-Evalを紹介。GPT-3.5とLlama-2のパフォーマンスがClean-Evalデータで低下することを示し、汚染を確認。
これらの研究は、データ汚染検出のための多様なアプローチを提供し、評価ベンチマークの信頼性を向上させるための重要なステップとなっています。
モデル汚染のレビュー
モデル汚染とは、学習セットDMで学習されたモデルMを評価データセットDEに適用し、DM∩DE が空であるかどうかを確認することが目的です。学習中に評価データに曝露されることで、モデルの一般化能力に影響が生じ、その性能が人工的に向上する可能性があります。データ汚染と比較して、学習セットはモデルに依存しており、GPT-3.5やGPT-4のように不明な場合もあります。
まず、パフォーマンス分析を通じてモデル汚染を評価する研究をレビューしています。Mを異なるタイムスタンプの評価データセットに適用し、事前学習時に存在しなかったデータセットを含めています。これにより、汚染を防ぎます。これらのデータポイントでのパフォーマンスの低下は、汚染を示唆します。
- Roberts et al. (2023)
- GPT-4とGPT-3.5-Turboのコード生成タスクにおける効果を、特定のカットオフ日以前および以後のデータセットを用いて比較分析。CodeforcesやProject Eulerのようなコーディング問題プラットフォームへの曝露の可能性と、テストケースの合格率との間に有意な正の相関があることを発見。
- Li & Flanigan (2023)
- 大規模言語モデルでのタスク汚染を検出するための4つの革新的な方法を提示。これらの方法には、学習データ検査、タスク例の抽出、メンバーシップ推論、および年代別分析が含まれます。これらの手法は、大規模言語モデルの信頼性を高めるための包括的なツールキットを提供。
- Jiang et al. (2024b)
- 各種公的データセットを用いて、言語モデルの事前学習におけるデータ汚染の包括的評価を実施。データ汚染の程度とモデル性能との間にU字型の関係があることを発見し、既存のn-グラムベースの汚染定義が不十分であることを示唆。より堅牢な汚染検出方法の必要性を強調。
大規模言語モデルのモデル汚染を検出する直感的な方法は、制御されたプロンプト設定で出力を慎重に分析することです。汚染されたデータに対する出力は、学習データと非常に類似しているか、完全に一致する場合があり、モデルの信頼度が非常に高い場合があります。
また、モデルの記憶を分析する際、研究者はモデルが完全に記憶した学習データに焦点を当て、これを下流タスクで汚染を特定するために利用します。
- Elangovan et al. (2021)
- NLPタスクで一般的なランダムデータシャッフリングが学習セットとテストセットの重複を考慮していないことを指摘。この重複がデータ漏洩とパフォーマンスメトリクスの過大評価を引き起こす。テキストの類似性を評価するためのバッグオブワードアプローチを採用し、漏洩の識別と緩和のための基礎的な方法を提供。
- Lee et al. (2021)
- データセットの重複除去の大きな利点を検証し、重複除去がデータの完全な記憶の発生を10倍に削減し、学習とテストの重複を緩和し、モデルの精度の過大評価を防ぐ。データサイズを最大19%削減し、学習効率を向上させ、モデルの困惑度を維持または改善することで、迅速に高い精度を達成。データ品質やモデル性能を損なうことなく、学習プロセスを合理化し、環境的および経済的に持続可能なモデル開発に貢献。
- Magar & Schwartz (2022)
- 複数のベンチマークにわたる汚染の証拠を発見し、GPT-3のようなモデルの性能に影響を与えていると指摘。汚染の影響を定量化するための新しいアプローチには、一般的なデータとタスク固有のデータを混ぜてモデルを学習し、見たことのあるインスタンスと見たことのないインスタンスでの性能を比較して記憶と利用を測定する方法を提案。この方法論は、記憶と利用の微妙な関係を強調しており、特定のデータ構成で学習された大規模モデルが汚染データに対して異なる感度を示す可能性があることを示唆。
- Gemma Team Google DeepMind (2024)
- 整合性のあるモデルが対敵攻撃に対して記憶した学習データを朗読する脆弱性があることを強調。Anil et al. (2023) と同様の方法を用いて、Gemmaの事前学習モデルのコーパスから10,000件の文書にわたる発見可能な記憶を分析。この分析では、モデルの生成したテキストがソースと正確に一致する「正確な記憶」と、10%の編集距離閾値で測定される「おおよその記憶」を区別。分析結果は、GemmaモデルがPaLMやPaLM-2モデルと同程度の記憶率を示していることを明らかにしている。
他にも、研究者たちは、大規模言語モデルによるデータの完成を引き出す精巧なプロンプト技術を開発しており、出力が実際の学習データに疑わしいほど近い場合、汚染を示している可能性があります。RLHF中の大規模言語モデルの整合性により、データの完成を求める標準プロンプトは失敗することがあると報告されています (Ouyang et al., 2022b)。
- Nasr et al. (2023)
- ChatGPTを含む大規模言語モデルのデータ抽出攻撃に対する脆弱性を明らかにし、重大なプライバシー問題を提起。学習データ外の入力でプロンプトを行うことで、ChatGPTが学習データの一部を再現し、個人レベルの機密情報を含むことを示す。この研究は、記憶されたデータの発信を減らすことを目的とした整合性技術で学習されたモデルでも、かなりの量の機密情報を漏洩する可能性があることを示し、より強固な防御の開発を求めています。この研究の影響は広範囲に及び、大規模言語モデルの展開に内在するプライバシーの脆弱性に対処する重要性を強調。
- Weller et al. (2023)
- 効果的なプロンプト戦略を通じて、大規模言語モデルをより事実に基づいた内容生成に向ける可能性を強調。特定のコーパスからの引用を促す「According to」のような指示フレーズを追加することで、引用情報精度(QUIP)スコアで測定されるグラウンディングの改善が見られた。この方法は、さまざまなドメインやコーパスでその汎用性と有効性を示し、大規模言語モデルの記憶された知識を利用してより正確で信頼性のある応答を生成する可能性を示す。
- 効果的なプロンプト戦略を通じて、大規模言語モデルをより事実に基づいた内容生成に向ける可能性を強調。特定のコーパスからの引用を促す「According to」のような指示フレーズを追加することで、引用情報精度(QUIP)スコアで測定されるグラウンディングの改善が見られた。この方法は、さまざまなドメインやコーパスでその汎用性と有効性を示し、大規模言語モデルの記憶された知識を利用してより正確で信頼性のある応答を生成する可能性を示す。
さらに、尤度に基づく手法は、学習中に該当するデータが見られた場合、モデルは次のトークン予測をより高い信頼度で行う傾向があるという事実を利用しています。
- Min-K% Prob (Shi et al., 2024)
- 大規模言語モデルのロジットまたは次のトークンの確率分布へのホワイトボックスのアクセスを前提。テストサンプルXを与えられた場合、この方法はXのすべてのトークンを通して大規模言語モデルを実行し、予測された確率が最も小さいk%のトークンを追跡。その後、これらの最低確率の平均を計算し、この平均が高すぎる場合はXが汚染されていると見なす。
- Oren et al. (2023)
- 評価データセットDEに対する大規模言語モデルの尤度を分析するための独自のアプローチを採用。DEおよびDEのシャッフルバージョンで推論を実行。シャッフルされていないデータセットでの大規模言語モデルの対数確率がシャッフルバージョンと統計的に異なる場合、それは汚染を示す。この方法は、評価データセットが事前学習セットに含まれている場合、同じデフォルトの順序で存在する傾向があるという前提に基づく。
- Li (2023a)
- 記憶されたベースラインとクリーンなベースラインに対してベンチマークサンプルのパープレキシティを比較。主要な読解理解および要約ベンチマークにおいて、最近のモデルにおける顕著な記憶を発見しているが、複数選択式ベンチマークでは汚染の証拠が少ないことが示す。この方法は、厳密な汚染分析を行うためのツールをコミュニティに提供し、より正確で信頼性のあるモデル評価を可能にする。
- Dong et al. (2024)
- 新しい尤度ベースの汚染検出方法論であるCDD(出力分布による汚染検出)およびTED(出力分布による信頼性のある評価)を提案しています。CDDは、大規模言語モデルの出力分布の尖りを観察することでデータ汚染を検出し、ブラックボックス方式で実行。これは既存のアプローチに対して、Accuracy、F1スコア、およびAUCメトリクスで21.8%〜30.2%の相対的な平均改善を提供する重要な進歩を表す。TEDは、評価メトリクスに対するデータ汚染の影響を軽減するために大規模言語モデルの出力分布を修正し、さまざまなシナリオおよび汚染度にわたってデータ汚染に起因する性能向上を大幅に削減。
また、大規模言語モデルはモデル汚染検出における新しいパラダイムも確立しています。Golchin & Surdeanu (2023b)は、ガイド付きプロンプティングを提案しています。これは、大規模言語モデルにデータを完了させる標準的なプロンプトとは異なり、データセット名などの追加情報も含まれます。汚染は、標準的なプロンプティングとガイド付きプロンプティングの性能差の平均値、またはインコンテキスト学習を使用しているGPT-4がガイド付き完了において正確な一致または二つの近似一致を見つけた場合に評価されます。この後者の方法は、汚染を識別するのに非常に高い精度(92%〜100%)を示します。さらに、この調査はAG News (Zhang et al., 2015)、WNLI (Levesque et al., 2012)、およびXSum (Narayan et al., 2018) のようなデータセットにおける汚染の普及を強調し、大規模言語モデルアプリケーションにおけるデータの整合性に対処する必要性を強調しています。
さらに、この著者は、ブラックボックスの大規模言語モデルの汚染検出のためのData Contamination Quiz(DCQ)評価フレームワークも発表しています。調査対象の大規模言語モデルには、元のデータセットからの真実のテキスト、GPT-4からの3つのパラフレーズ、および「なし」という選択肢を含む5つの完了オプションが提示されます。大規模言語モデルが正確な答えを選ぶ場合、それは記憶によるものであると仮定されており、著者はこのDCQフレームワークがガイド付きプロンプティング方法よりも汚染ケースを見つけることを示しています。
新しい評価ベンチマーク
汚染のない評価を提供するために、次のような新しいデータセットが導入されています。
- LatestEval (Liら, 2023b)
- 最新のテキストを活用して動的な読解評価を作成するベンチマーク。最新のテキストを収集し、重要な情報を抽出し、その情報に基づいてテンプレート埋め込みや大規模言語モデルを用いて質問を作成するという3つのステップがある。
- 最新のテキストを活用して動的な読解評価を作成するベンチマーク。最新のテキストを収集し、重要な情報を抽出し、その情報に基づいてテンプレート埋め込みや大規模言語モデルを用いて質問を作成するという3つのステップがある。
- WIKIMIA (Shiら, 2024)
- 2023年以降に作成されたWikipediaのイベントで構成された動的ベンチマーク。ChatGPTを活用してパラフレーズされた評価用の例を作成するパラフレーズ設定も導入されており、CleanEval (Zhuら, 2023)でも同様の手法が使われている。
- 2023年以降に作成されたWikipediaのイベントで構成された動的ベンチマーク。ChatGPTを活用してパラフレーズされた評価用の例を作成するパラフレーズ設定も導入されており、CleanEval (Zhuら, 2023)でも同様の手法が使われている。
- KIEval (Yuら, 2024)
- 大規模言語モデルを搭載した「インタラクター」を組み込んだインタラクティブな評価フレームワーク。マルチラウンドの対話でフォローアップ質問を行い、汚染に強い評価を実現。評価者は、モデルの回答が単なる記憶によるものか、より複雑な会話で知識を適用する深い理解を示しているかを判断。
- 大規模言語モデルを搭載した「インタラクター」を組み込んだインタラクティブな評価フレームワーク。マルチラウンドの対話でフォローアップ質問を行い、汚染に強い評価を実現。評価者は、モデルの回答が単なる記憶によるものか、より複雑な会話で知識を適用する深い理解を示しているかを判断。
- LiveCodeBench (Jainら, 2024)
- LeetCode、AtCoder、CodeForcesから新しい問題を継続的に収集し、汚染のないコード生成ベンチマーク。一部のモデル(DeepSeekなど)は、新しいLeetCode問題でのパフォーマンスが低下し、汚染の兆候を示唆。
- LeetCode、AtCoder、CodeForcesから新しい問題を継続的に収集し、汚染のないコード生成ベンチマーク。一部のモデル(DeepSeekなど)は、新しいLeetCode問題でのパフォーマンスが低下し、汚染の兆候を示唆。
- Termite (Ranaldiら, 2024)
- 検索エンジンを介した公開アクセスが暗号鍵でロックされた新しいテキストからSQLへのデータセット。手作業で作成されたデータベースで構成され、それぞれに約5つのクエリがペアリングされている。Spiderデータセット (Yuら, 2018) の特性に一致するように設計されていますが、残念ながらSpiderデータセットはGPT-3.5で高い汚染の兆候を示唆。
さらに、Alzahraniら(2024)は、既存のベンチマークにわずかな摂動を加えるだけでリーダーボード上のモデルランキングに影響を与える可能性があると指摘し、より良い評価ベンチマークの必要性を訴えています。
今後の課題
機械学習の研究の急速かつ絶え間ない変化を考えると、大規模言語モデルにおける汚染検出の将来的な方向性は、広範な方法論や技術的側面を含む可能性があります。この論文では、いくつかの重要な焦点となる論点を挙げています。
1つ目はリアルタイム汚染検出システムです。データストリームを継続的に監視し、汚染イベントが発生した際にユーザーに警告を発するリアルタイムのデータ汚染検出システムは、金融(Fresardら, 2011)やヘルスケア(Gaoら, 2022)など、データの完全性が極めて重要であり、モデルの信頼性が欠かせない分野で特に重要です。インターネットに日々膨大な新しいデータがアップロードされることを考えると、この課題を解決するには大きな技術的ブレークスルーが必要です。
2つ目は、汚染検出の回避です。Dekoninckら(2024)は、いくつかの既存の汚染検出方法を回避する非常に効果的な方法を示しています。Evasive Augmentation Learning (EAL) は、ベンチマークをGPT-4でパラフレーズし、そのパラフレーズデータで大規模言語モデルをファインチューニングする手法です。
3つ目は、倫理的および法的データフレームワークです。大規模言語モデルの学習に使用するデータの収集、使用、管理を統治するための包括的な倫理的および法的フレームワーク(Chang, 2021)の必要性があります。これには、データプライバシー、同意、および使用に関する方針やプロトコルが含まれ、不道徳なソースからの汚染データの組み込みや、広く使用される事前学習のデータソース(例:CommonCrawl)の汚染を防ぐのに役立ちます。個人のプライバシーを損なうことなく汚染検出技術を開発することが重要です。
LLMSanitizeライブラリ
大規模言語モデルにおける汚染検出の進展を促進するために、オープンソースのPythonライブラリ「LLMSanitize」を構築し、公開しています。LLMSanitizeは、データ汚染とモデル汚染の両方のユースケース、入力/ラベル汚染をサポートします。ライブラリを使用するための最小限の擬似コードは次の構造です。
ユーザーは、データ汚染のためのトレーニング、評価データセット、モデル汚染のための大規模言語モデルと評価データセットを指定する必要があります。データセットと大規模言語モデルは、HuggingFace Hubで利用可能であることが期待されており、具体的にはtransformers(Wolf et al., 2020) およびdatasets (Lhoest et al., 2021) ライブラリに依存しています。
モデルベースのユースケースに対する効率的な大規模言語モデルの推論は、vLLMライブラリ (Kwon et al., 2023) を使用して処理されます。他に制御する主要なパラメータには、処理する評価データポイントの数、および各汚染検出方法に固有のハイパーパラメータが含まれます。
LLMSanitizeの評価もされています。前述の3つの最近人気のあるモデル汚染方法、guided prompting (with ROUGE-L)、sharded likelihood、Min-K% Probを、広く使用されている4つの7Bサイズの大規模言語モデル(Llama2、Qwen-1.5、Mistral、Gemma)に適用します。各大規模言語モデルのチャットボットバージョンを使用し、HuggingFace OpenLLM Leaderboardの6つのデータセット、ARC(Clark et al., 2018)、HellaSwag(Zellers et al., 2019)、MMLU(Hendrycks et al., 2020)、TruthfulQA(Lin et al., 2021)、Winogrande(Sakaguchi et al., 2021)、GSM8K(Cobbe et al., 2021)で汚染を測定します。各テストセットから100データをサブサンプリングしています。
最後に、比較のために2024年3月のBBCニュース記事を用いて、汚染のないデータで尤度ベースの結果を報告しています。guided prompting (with ROUGE-L)、sharded likelihood、Min-K% Probの順に結果は以下の通りです。
特に、HellaSwagベンチマーク(Zellers et al., 2019)は、方法とLLMに関係なく、強い汚染の兆候を示しています。このように、LLMSanitizeは汚染検出の強力なツールであり、今後の研究や実務での利用が期待されます。
まとめ
大規模言語モデルは急速に進化し、学習に使用されるデータも増大していますが、その性能はデータ汚染によって偏りやすくなります。この論文では、大規模言語モデルにおける汚染検出の現状を詳しく調査し、体系的に整理しています。また、さまざまなモデルやデータセットで汚染を迅速に検出するための汎用ツールである新しいPythonライブラリ「LLMSanitize」を紹介しています。
この詳細な調査と提案されたツールは、今後の大規模言語モデルがデータやモデルの汚染問題に対処する際の基盤となることが期待されます。
この記事に関するカテゴリー