合成データとは、実世界のイベントから収集されたものではなく、コンピュータ アルゴリズムによって人工的に生成される情報のことです。AI のフライト シミュレータのようなものだと考えてください。パイロットが実機を危険にさらすことなくシミュレートされたコックピットで操縦を学ぶように、AI モデルはユーザーのプライバシーを危険にさらすことなく、シミュレートされたデータを使用してパターンを認識することを学習できます。
重要な違いは、合成データは実際のデータの統計的特性(平均、相関関係、分布など)を模倣するものの、実在の人物に関する特定可能な情報は含まないことです。見た目や振る舞いは実データに似ていますが、特定のレコードを作成する過程に実際の人間は関与していません。
合成データの生成は、単なるコピー&ペーストではありません。高度な ML モデルを使用して実際のデータの「形状」を理解し、その形状に適合する新しいオリジナルのサンプルを作成することを意味します。
すべての合成データが同じように作成されるわけではありません。プライバシーと精度のどちらを重視するかによって、異なるタイプを選択できます。
このデータは完全にゼロから生成されています。元のユーザーデータは含まれていないため、合成レコードと実在の人物との間に 1 対 1 のマッピングは存在しません。特定の個人に紐づくものではないため、最高レベルのプライバシー保護が実現できます。ただし、AI のトレーニングに十分活用できる精度を確保するには、厳密な検証が必要です。
データセットを有用なものにするために、一部の実際のデータを保持する必要がある場合もあります。部分的に合成されたデータとは、実際のデータセットを基にしつつ、名前、社会保障番号、住所などの機密情報のみを合成値に置き換える手法です。その他のデータはそのまま保持されます。このアプローチは、プライバシーと高い有用性のバランスを取ることができますが、完全に合成されたデータと比較すると、再識別のリスクがわずかに高くなります。
このアプローチでは、実際のレコードと合成レコードを組み合わせて、データの「スーパーセット」を作成します。これは、小規模な実際のデータセットを補完するためによく用いられます。たとえば、通常の銀行取引に関するデータは豊富にあるものの、不正取引に関するデータはほとんどない場合、合成の不正行為レコードを生成して、実際のレコードと混ぜることができます。これにより、まれなイベントを「アップサンプリング」して、AI モデルが学習するのに十分な例を確保できます。
実際のデータは精度の基準となるものですが、収集にコストがかかり、多くの場合、整備されていなかったり、不完全であったりします。また、GDPR や HIPAA などのプライバシー法によって厳しく制限されています。実世界のデータの収集には数か月または数年かかることもあります。
一方、合成データは、スケーリングのコストを抑えることができます。数百万件のレコードを数時間で生成できます。完全にラベル付けされており(コンピュータが作成したため、生成内容を正確に把握しています)、設計段階からプライバシーに配慮されています。さらに、合成データはバランス調整が可能で、実世界のデータ収集でよく見られる自然なバイアスを取り除くこともできます。
機能 | 実際のデータ | 合成データ |
費用 | 高い(収集とラベル付け) | 低い(コンピューティング能力のみ) |
速度 | 遅い(数か月/数年) | 高速(数時間/数日) |
プライバシー | より制限が厳しい(個人情報(PII)リスク) | より安全(個人情報(PII)なし) |
精度 | 高い(現実を反映) | 変動(モデルの品質による) |
機能
実際のデータ
合成データ
費用
高い(収集とラベル付け)
低い(コンピューティング能力のみ)
速度
遅い(数か月/数年)
高速(数時間/数日)
プライバシー
より制限が厳しい(個人情報(PII)リスク)
より安全(個人情報(PII)なし)
精度
高い(現実を反映)
変動(モデルの品質による)
自動運転車やロボット工学の分野では、実世界の情報を収集するのに時間がかかるため、合成データに大きく依存しています。実際に何百万マイルもの走行データを記録したとしても、物理的なテストだけでは、あらゆる個別の事故のシナリオを網羅することはできません。仮想の運転環境を生成することで、エンジニアは何十億マイルにもおよぶシミュレーション道路で車両をトレーニングできます。たとえば、子どもが突然道路に飛び出すといった危険な状況を、物理的なリスクを伴うことなくテストできます。
医療データは非常にプライベートなものであり、共有が困難です。合成データを使用すると、研究者は実際の疾患の統計パターンを模倣した架空の患者記録を作成できます。これにより、病院は HIPAA に違反することなく、がん研究や希少疾患の研究のためにデータを共有できます。ManageEngine のアンケートによると、現在では医療機関の 81% が、プライバシーに関する懸念を管理しながらイノベーションを実現するために、合成データを使用しています。
不正行為の検出は困難です。なぜなら、実際の不正行為はまれであり、AI が不正行為のパターンを学習することが困難になるからです。銀行は合成データを使用して、数千もの不正取引パターンを生成することがあります。この「アップサンプリング」により、実際の顧客の財務履歴を晒すことなく、AI が不審なアクティビティを検出できるようにトレーニングできます。
デベロッパーは、アプリケーションが高負荷時にどのように動作するかをテストするために、大量のデータを必要とします。これは「テストデータ マネジメント」と呼ばれます。DevOps チームは、実際の本番データベースの危険なコピーを使用する代わりに、ステージング環境に数百万件の合成ユーザーを投入できます。これにより、新しいアプリのアップデートを安全にストレステストし、システムが大量のトラフィックを処理できることを確認できます。
プライバシーとコンプライアンス
合成データは、個人を特定できる情報(PII)が漏洩するリスクを大幅に軽減します。このデータは実在の人物に紐づくものではないため、通常は GDPR や CCPA などの厳格な規制の対象外となります。これにより、グローバル チームは複雑な法的手続きを踏むことなく、国境を越えてデータセットをより円滑に共有できるようになります。
費用と処理速度
合成データを使用すると、「データから AI へ」のライフサイクルを大幅に加速できます。画像に手動でラベルを付けるために人を雇ったり、現場でデータが収集されるのを待ったりする必要はありません。この効率性により、コストを削減し、開発を迅速化できます。
バイアスの軽減
実世界のデータは、実世界の偏見を反映していることがよくあります。過去の採用データで AI をトレーニングすると、特定の属性を他よりも優先する傾向を学習してしまう可能性があります。合成データを使用すると、デベロッパーはこうした不均衡を人工的に補正できます。たとえば、十分に表現されていないグループのデータをより多く生成することで、AI がすべての肌の色や性別を平等に認識できるようにし、より公平で堅牢なモデルを作成できます。
エッジケースのテスト
実際には、危険すぎたり発生頻度が極めて低かったりしてテストできないシナリオもあります。エアバッグ センサーがどのように作動するかを確認するためだけに、実車を 1,000 台も衝突させることはできません。合成データを使用すれば、こうした「エッジケース」を安全に再現できます。たとえば、フェニックスでの猛吹雪や特定のエンジン故障といったまれな事象をシミュレーションし、現実のデータでは 0.01% 未満しか発生しないものの、安全性の観点から極めて重要な状況についてシステムをトレーニングできます。
デベロッパーにとって、小規模から中規模の合成データセット(単体テストや簡単なデモ用)を生成する最も速い方法は、複雑な GAN をトレーニングすることではなく、大規模言語モデル(LLM)の生成機能を利用することです。これらの機能は、Gemini Enterprise Agent Platform(旧称 Vertex AI)に統合されました。このプラットフォームは、Gemini などの強力なモデルへのアクセスを含め、ML モデルを構築、デプロイ、スケーリングするための包括的な環境を提供します。
このチュートリアルでは、Agent Platform SDK for Python(旧称 Vertex AI SDK for Python)と Gemini を使用して、合成の「顧客取引」データセットをゼロから生成します。あなたは、フィンテック ダッシュボードを構築するデベロッパーであるとします。フロントエンドをテストするには、50 行の「トランザクション データ」が必要です。
必要なフィールドは、transaction_id、timestamp、amount、merchant_category、is_fraud です。
まず、Python 環境に Agent Platform SDK がインストールされていることを確認します。プラットフォームの名称は変更されましたが、Python パッケージは google-cloud-aiplatform のままです。
ライブラリをインポートし、プロジェクトの詳細情報を指定して初期化します。 この設定は、Gemini Enterprise Agent Platform 内で Agent Platform SDK を介して Gemini モデルを使用する場合の標準的な設定です。
LLM からの合成データの品質は、プロンプトに大きく左右されます。スキーマ、制約(負の数は含めないなど)、出力形式(CSV または JSON)を具体的に指定する必要があります。 Gemini Enterprise Agent Platform の Gemini モデルで効果的なプロンプト エンジニアリングを行うには、明確かつ具体的な指示をすることが重要です。
プロンプトをモデルに送信し、レスポンスを直接 Pandas DataFrame に読み込みます。generate_content メソッドは、Agent Platform SDK の一部です。
合成の表形式データを生成する場合、ソフトウェアの機能テストに使用する「もっともらしい」データが必要なだけであれば、Gemini のような汎用 LLM を使用する方が、VAE のようなカスタム統計モデルをトレーニングするよりも迅速なことが多くあります。
*エンタープライズ規模向けの注意: 既存の膨大なプライベート データセットを統計的に再現するために、数百万行のデータを生成する必要がある場合、単純な LLM プロンプトから、Google Cloud Marketplace で直接利用できる Gretel.ai や MOSTLY AI などの専門パートナーと統合された Gemini Enterprise Agent Platform Pipelines(旧称 Vertex AI Pipelines)の利用へ移行するのが一般的です。これらの高度なワークフローは、より広範な Gemini Enterprise Agent Platform 内でオーケストレーションおよび管理できます。
Google Cloud は、デベロッパーが合成データを効果的に生成、管理するのに役立つツールを提供します。