基本 中級

合成データ

Synthetic Data

現実の記録ではなく、プログラムや AI で人工的に作ったデータのことです。個人情報を避けたい場合や、不足しているデータを補いたい場合に、AI の学習や評価に使われます。

別の呼び方人工データ、合成データ生成

例実際の顧客情報を使わずに済むよう、LLM で架空の問い合わせ文を作って評価用データにした。

詳しく

合成データ(Synthetic Data)とは、実際の人や出来事から集めたのではなく、ルールに基づくプログラムや生成 AI によって人工的に作られたデータです。AI の学習や評価、テストに使われます。

なぜ使うのか

  • データが足りない:まれな事故や故障のように、現実ではめったに起きない場面は、集めること自体が難しいです。
  • プライバシーの保護:患者の記録や顧客情報をそのまま使えない場合に、統計的な性質だけを似せた架空のデータで代用できます。
  • コストと速度:人手でラベル付けや収集をするより、速く安く大量に作れることがあります。
  • 偏りの調整:不足している集団や場面のデータを意図的に増やし、バランスを整えられます。

作り方の例

  • ルールで作る:ゲームエンジンで道路を描き、自動運転用の画像と正解ラベルを同時に作る。
  • 既存モデルに作らせる:LLM に「こういう問い合わせメールを100通書いて」と頼み、分類器の学習用データにする。
  • 蒸留:大きく高性能なモデルの出力を教材にして、小さなモデルを学習させる。蒸留は合成データの代表的な使い道です。
  • 推論モデルの出力を使う:数学やコードなど正しさを機械的に確認できる分野で、正解した解答だけを残して学習に再利用する。

具体例

カスタマーサポートの返信 AI を作る際、実際の顧客メールには個人情報が含まれます。そこで、LLM に架空の問い合わせ文を大量に書かせて評価用データを作れば、本物の顧客情報を使わずに動作確認ができます。

注意点とよくある誤解

  • 品質が一番の課題:生成したデータに誤りや不自然さがあれば、それをそのまま学ぶことになります。確認して取捨選択する工程が必要です。
  • 偏りの複製:元にしたモデルの偏りやクセが、合成データにも引き継がれます。
  • 多様性の不足:似たものばかりが並びやすく、現実の幅広さを再現できないことがあります。
  • モデル崩壊:AI が作ったデータだけで、世代を重ねて学習させると、性能が劣化して多様性が失われるおそれが指摘されています。人間が作った本物のデータを混ぜるなど、設計が必要です。
  • プライバシーの保証ではない:元のデータの特徴を強く写し取った合成データは、元の個人を推測される可能性が残ります。

関連する考え方

training-data は学習に使うデータ全般、model-collapse は合成データの弊害、distillation は大きなモデルから教わる方法、evals は評価用データの作り方に関わります。

あわせて知りたい言葉

「基本」の言葉をすべて見る