モデルの学習方法(そしてあなたがやらない理由)
ダウンロードできるすべてのチャットモデルは、同じ3段階パイプラインを通っている。段階1を自分で走らせることはまずない——データセンターの領分だ——が、段階2と3の安い親戚なら走らせるかもしれない。段階を知れば、base対instructの挙動、モデルがハルシネーションを起こす理由、Hugging Faceの「マージ」モデルの正体が説明できる。
段階1:事前学習——高額な部分
途方もないスケールで1つの目標。ウェブテキスト、コード、書籍の数兆トークンにわたって次トークンを予測する。知識とスキルが重みに入り、計算資源の圧倒的大部分がここに向かう。
| 項目 | 概算スケール(オーダー) |
|---|---|
| データ | 現代のファミリーで10〜30Tトークン |
| ハードウェア | 数千GPU月。フロンティア級はクラスタを数か月占有 |
| コスト | 7Bで約100万〜1,000万ドル超。70B級で1,000万〜1億ドル超。フロンティア級はそれを大きく超えると噂 |
| 成果物 | ベースモデル。インターネット形の自動補完で、アシスタント挙動なし |
成果物はベースモデル。継続には極めて優れ、アシスタントには役立たず。質問すれば答える——そして別の質問、リスト、改ページで続きを続ける。インターネットのテキストがそうするから。
段階2:教師ありファインチューニング(SFT)
数万から数百万の精選された(指示 → 応答)ペア、数GPU日。事前学習に比べれば誤差だが、挙動を作り替える。指示に答える、有用な形式で、そして止まる。ベースモデルを会話できるものへ変える段階。
段階3:選好チューニング
- RLHF:人間が応答ペアに順位を付け、報酬モデルが順位を学習し、方針が報酬に対して最適化される(PPO)。古典的レシピで、重厚な機構。
- DPO:報酬モデルを飛ばして選好ペアを直接最適化。より単純で安定、オープンソースの定番。
- 効果:スタイル、有用性、拒否挙動、より較正された主張。追従性も——同意が報酬をもらうことをモデルが学習する。
SFTデータの実際の姿——指示/応答ペアのplainなJSONL、特別なものはない。
{"instruction": "Summarize the changelog in three bullets.", "response": "- Adds ..."}
{"instruction": "답변을 존댓말로 작성하세요.", "response": "네, 알겠습니다 ..."}
これを数千〜数百万、数エポックで、ベースモデルはアシスタントの形式を学習する。
同じ重み、異なる段階
プロンプト: "GPUについて俳句を書いて。"
base(段階1後):
"GPUについて俳句を書いて。
CPUについてソネットを書いて。
1. トピックを慎重に選び..." ← 文書を継続
instruct(段階1+2+3):
"千のコア目覚め
一つずつ静かなトークン追う——
ファンは息を殺す。" ← 答え、整形し、止まる
リポジトリのサフィックスが段階を教える。名前のみ=ベース。-instruct / -it / -chat=調整済み(パラメータを参照)。
用語をもう1つ。知識のカットオフ——事前学習コーパスが収集された日付。それ以降について尋ねると、正直な「知らない」か、より悪いことに自信満々のフィクションが返る。凍結された重みとしてはどちらも正しい挙動(LLMとは)。
学習とファインチューニング:約1000倍の差
| 事前学習 | LoRAファインチューニング | |
|---|---|---|
| データ | 10^12–10^13トークン | 10^6–10^9トークン |
| 更新パラメータ | すべて | 1〜2%未満(小さなアダプタ行列) |
| ハードウェア | クラスタ | GPU 1枚 |
| 所要時間 | 数週間〜数か月 | 数時間〜数日 |
| コスト | 100万〜1億ドル超 | レンタルで0〜100ドル |
| 目的 | 知識+スキル | スタイル、形式、狭いドメインの挙動 |
| リスク | 不安定な損失、台無しのチェックポイント | 小さなデータセットへの過学習 |
| 失敗の形 | 数か月後に発覚する静かなデータバグ | 汎用スキルの破滅的忘却 |
| 再現可能? | まれ(データ非公開) | はい(データセットがリポジトリに同梱) |
| データソース | 公開ウェブ、コード、書籍、ライセンス契約アーカイブ | あなたのプロンプトと理想の回答 |
| 誰にできるか | 資金豊富な研究所 | あなた、今週末にでも |
ファインチューニングはダイヤルを調整するだけで、知識は追加しない。7Bに会社のトーンを教えるのはLoRAで一晩。5万件の社内文書を教えるのは学習ではなく検索(RAG、ファインチューニング)。
ファインチューニングにできることとできないこと。正しく狙いを付けるために。
- できる:出力形式、トーン、用語、拒否スタイル、ツール呼び出し構文、狭いタスクの確実な遂行。
- できる:大きなモデルから小さなモデルへ、1つの狭いタスクを蒸留。
- (確実には)できない:新しい事実の追加、弱い推論の修正、カットオフの延長、小さいモデルを大きくすること。
- ルール:問題が「知らない」なら検索。「振る舞わない」ならファインチューニング。
チェックポイント、マージ、ダウンロードされるもの
- 学習は途中でチェックポイントを保存する。リリースは通常、最終instruct段階の重み——手に入るのは完成したアシスタントで、それを作った過程ではない。
- 「マージ」は同じベースモデルの複数ファインチューニングを平均または補間する(モデルスープ)。学習は行われず、親の中間に着地することの多い重みの演算。Hugging Faceで人気、安価、時折卓越。
- 系統が不明ならライセンスも不明。マージはすべての親の条件を継承する(オープンウェイト対クローズドAPI)。
- チャットモデルの元のベース重みが公開されることもある——手に取るのは補完型ワークロードかファインチューニング基盤としてだけ。
- オープンリリースが最終段階で止まる理由。事前学習データと中間チェックポイントは高価な競争資産で、完成済み重みはデモにすぎない。
- コミュニティのinstructモデルはポストトレーニングのレシピとデータセットを共有する。だから多くが交換可能に感じる。同じベース、同じ段階2/3の定番手順。
- モデルカードにデータと段階を明記するリリースを選ぶこと。文書化された最終チェックポイントは、煽られたものより長持ちする。
関連: ファインチューニング · RAG · オープンウェイト対クローズドAPI · パラメータ