命令チューニング(Instruction Tuning) めいれいちゅーにんぐ
命令チューニングInstruction Tuning指示追従ファインチューニングFLANInstructGPT
命令チューニングについて教えて
簡単に言うとこんな感じ!
AIに「〇〇してください」という指示をちゃんと理解して実行できるよう、大量の命令と回答のペアで訓練する手法だよ!これがないと「要約して」と言っても何もしてくれない。命令チューニングをするとAIが「お役立ちアシスタント」に変身するんだ!
命令チューニング(Instruction Tuning)とは
命令チューニング(Instruction Tuning) とは、「指示文→望ましい回答」の形式の大量データでLLMを微調整し、多様な自然言語命令に応答できる汎用アシスタントを作る手法です。SFT(Supervised Fine-Tuning)の一形式ですが、特に多様なタスク・多様な指示形式を含む点が特徴です。
事前学習だけでは「次のトークン予測」しか学習していないため、「翻訳してください」「箇条書きで整理してください」という指示に適切に応じる能力はありません。命令チューニングによって「質問に答える」「要約する」「翻訳する」「コードを書く」 など多様なタスクを「指示→実行」のパターンとして学習します。
命令チューニングの学習データ例
【多様なタスクをカバーした指示データ】
分類タスク:
指示: 「以下の文章が肯定・否定・中立のどれか答えて」
入力: 「このサービスは使いにくかった」
出力: 「否定」
生成タスク:
指示: 「日本の春の季語を5つ挙げてください」
出力: 「桜、花見、春風、菜の花、霞」
変換タスク:
指示: 「以下のカジュアルな文章をビジネス文体に変換して」
入力: 「明日の打ち合わせ、よろしく!」
出力: 「明日のお打ち合わせ、どうぞよろしくお願いいたします。」
歴史と背景
- 2021年:Google「FLAN」が137Bモデルを60以上のタスクで命令チューニング
- 2022年:OpenAI「InstructGPT」がRLHFと命令チューニングを組み合わせChatGPTの基盤に
- 2023年:Alpaca・Vicuna等がオープンモデルへの命令チューニングを公開
- 現在:Llama・Mistral等のベースモデルを命令チューニングした「Instruct」モデルが主流に
ベースモデル vs 命令チューニング済みモデル
| 比較項目 | ベースモデル | Instructモデル |
|---|---|---|
| 指示への対応 | 弱い(続きを書こうとする) | 強い(指示を実行する) |
| 用途 | 研究・独自ファインチューニング | 実用・API提供 |
| 例 | Llama 3(base) | Llama 3 Instruct |
| カジュアル会話 | 不自然 | 自然 |
関連用語
- SFT — 命令チューニングが属する教師あり微調整の大分類
- チャットテンプレート — 命令チューニング済みモデルへの入力形式
- システムプロンプト — 命令チューニング済みモデルの挙動を定義する設定
- RLHF — 命令チューニングと組み合わせてさらに人間好みに調整する手法
- ゼロショット学習 — 命令チューニング後に得られる新しいタスクへの対応力