大規模言語モデル(LLM)の訓練・ファインチューニングにおいて、既存のデータセットを変換・合成して訓練データ量と多様性を増加させる技法群。Back-Translation・Paraphrase・Self-Instruct・Synthetic QA 生成などの手法があり、データ不足やドメイン偏りの課題を解決する。
大規模言語モデル(LLM)の性能は訓練データの量・質・多様性に大きく依存する。しかし高品質なラベル付きデータの収集は高コストかつ時間がかかるため、既存のデータを変換・合成して訓練データを効果的に増やす**データ拡張(Data Augmentation)**が不可欠な技術となっている。
画像認識分野では回転・反転・ノイズ付加といった幾何学的変換が古くから行われてきたが、テキストデータの拡張は文の意味を保持しながら表現を変化させる必要があるため、より高度な言語理解が求められる。2023年以降のLLM時代では、LLM自身を用いてデータを生成するセルフオーグメンテーションが主流となり、従来手法を大幅に上回る成果を挙げている。
LLM の訓練やファインチューニングにおいて、以下の課題がデータ拡張の動機となる。
| 課題 | 具体的な状況 | データ拡張による対策 |
|---|---|---|
| データ不足 | 専門ドメイン(医療・法律)でラベル付きデータが少ない | Synthetic QA 生成で自動的にデータを補完 |
| クラス不均衡 | 少数クラスのサンプルが極端に少ない | 少数クラスを重点的にパラフレーズ拡張 |
| 言語多様性不足 | 特定の表現パターンに偏っている | Back-Translation で多様な表現を生成 |
| ドメインシフト | 訓練データと実運用データの分布が乖離 | ドメイン固有テキストの合成生成 |
| 指示追従能力不足 | 多様な指示形式への対応が弱い | Self-Instruct で多様な指示文を自動生成 |
| 安全性データ不足 | 有害出力を防ぐための反例データが少ない | Red-Teaming による合成有害データ生成 |
LLM向けのデータ拡張手法は、大きく以下のカテゴリに分類される。
| ツール名 | 開発元 | 対応手法 | 特徴 | ライセンス |
|---|---|---|---|---|
| NL-Augmenter | AI2 + コミュニティ | 100+ 変換 | 最大の変換カタログ、研究用途に最適 | Apache 2.0 |
| TextAttack | QData Lab | 置換・削除・挿入 | 攻撃・拡張・訓練の統合フレームワーク | MIT |
| AugLy | Meta | テキスト + マルチモーダル | テキスト・画像・音声・動画の統合拡張 | MIT |
| nlpaug | Edward Ma | BERT/GPT2 拡張 | コンテキスト拡張に特化、pip install で即利用 | MIT |
| Self-Instruct | Wang et al. | 指示生成 | GPT-3/4 による自動指示データ生成の元祖 | Apache 2.0 |
| Alpaca Farm | Stanford | 指示 + フィードバック | シミュレーション環境でのRLHFデータ生成 | Apache 2.0 |
| Evol-Instruct | Microsoft | 段階的複雑化 | WizardLM の訓練データ生成手法 | 研究利用 |
拡張データの品質が低い場合、モデル性能がかえって劣化するデータポイズニングのリスクがある。以下の品質管理手法が重要である。
品質管理の具体的なパイプラインは以下の通りである。
原文 → 拡張手法適用 → 意味保持フィルタ → 多様性チェック → ノイズ除去 → 最終データセット
Q1: データ拡張でLLMの性能はどの程度向上しますか? A: タスクとデータ量に依存するが、少量データ(1,000件未満)のファインチューニングでは拡張により F1 スコアが 10-25% 向上する事例が多い。Self-Instruct による Alpaca は 52K件の合成データだけで GPT-3 の 80% 以上の性能を達成し、データ拡張の有効性を実証した。
Q2: 合成データだけで高性能なLLMを訓練できますか? A: 完全に合成データのみでの訓練は「モデル崩壊(Model Collapse)」のリスクがある。Shumailov et al.(2024)の研究では、合成データのみで複数世代訓練するとテールの多様性が失われることが示された。現在のベストプラクティスは、実データ 60-80% + 合成データ 20-40% のブレンドである。
Q3: Back-Translation と Paraphrase の使い分けは? A: Back-Translation は多言語リソースを活用した大規模拡張に適し、特に翻訳モデルの品質が高い言語ペア(英日・英独等)で効果的。Paraphrase は単言語内での表現多様化に適し、意味の保持精度が高い。両者を組み合わせることで相補的な多様性が得られる。
Q4: データ拡張の計算コストはどの程度ですか? A: ルールベース手法は CPU のみで数秒/千件、Back-Translation は GPU 使用で数分/千件、LLM 生成(GPT-4)は API コストで $0.5-2.0/千件程度。Self-Instruct の 52K件生成は GPT-3 API で約 $600 のコストだった。