Re Reference AI

技術

合成データとは

Synthetic Data

実データの代わりに、モデルやシミュレーションによって人工的に生成される学習用データ

データ学習

ひとことで言うと

本物のデータの代わりに、AIやプログラムを使って人工的に作り出す学習用の練習問題データ。

概要

合成データは、人手で収集・アノテーションした実データの代わりに、既存のLLMや生成モデル、シミュレーション、ルールベースの手法などを使って人工的に生成される学習用データを指す。 LLMの指示チューニングにおいては、既存の強力なモデルに多様な指示と応答のペアを大量に生成させ、それを別のモデルの教師データとして使う手法が広く使われており、比較的少ないコストで大量かつ多様な学習データを用意できる。 実データの収集が難しい、または個人情報保護の観点から利用が制限される領域(医療記録など)において、実データの統計的な性質を模した合成データを代替として使う用途もある。 一方で、合成データの生成に使ったモデル自身の誤りや偏りが合成データにそのまま反映され、それを学習した後続モデルの性能や多様性が徐々に劣化していく「モデル崩壊」と呼ばれる現象が懸念点として指摘されている。

背景

高品質な学習データを人手で大量に収集・アノテーションするには多大なコストと時間がかかり、特にLLMの指示チューニングに必要な多様な指示・応答ペアを人手だけで揃えることは難しい。 合成データは、既存のモデルや生成的な手法を使ってデータ生成そのものを自動化することで、この制約を緩和する目的で活用されている。

歴史

2020年代前半: GPT-3などの強力なLLMを使い、指示チューニング用のデータセットを合成する手法(Self-Instructなど)が研究・実践される。 2023年: AlpacaやOrcaなど、既存の強力なモデルの出力を教師データとして使う「蒸留」的な合成データ活用が広がる。 2020年代中盤: 合成データを多用した学習の副作用として「モデル崩壊」現象が学術的に議論されるように。

利点

  • 人手によるデータ収集・アノテーションと比べて、低コストかつ短時間で大量のデータを用意できる
  • 個人情報保護などの理由で実データを直接使えない領域でも、統計的性質を模したデータを代替として使える
  • 特定のエッジケースやレアケースを狙って生成するなど、データの分布を意図的に制御しやすい

欠点

  • 生成に使ったモデルの誤りやバイアスがそのまま合成データに反映され、後続モデルに引き継がれるリスクがある
  • 合成データばかりで学習を繰り返すと、モデルの出力多様性や性能が徐々に劣化する「モデル崩壊」が懸念されている
  • 実世界のデータ分布と乖離した合成データを使うと、実運用での性能が想定より低くなることがある

比較

  • 知識蒸留強力なモデルの出力を教師データとして使う合成データの活用法は、知識蒸留と近い発想を持つ
  • 指示チューニング合成データは、指示チューニング用の指示・応答ペアを効率的に用意する手段として広く使われている
  • データポイズニング合成データの質の問題は意図的な攻撃ではないが、データポイズニングと同様に学習データの質がモデルの挙動に影響する点で関連する

関連用語

指示チューニング知識蒸留ファインチューニングSelf-Instruct

よくある質問

モデル崩壊とは?

AIが生成した合成データばかりを学習に使い続けると、元の実データが持っていた分布の裾野(まれなパターン)が失われ、生成結果の多様性や品質が世代を追うごとに徐々に劣化していく現象。

合成データは実データの完全な代替になる?

コストや個人情報保護の面で有用だが、実世界の分布を厳密には再現しきれないため、実データと組み合わせて品質を検証しながら使うことが推奨される。

参考文献

関連Zenn記事