因果言語モデル事前学習(インガゲンゴモデルジゼンガクシュウ)
GPT・LLaMA系が採用する自己回帰的事前学習手法。過去のトークンのみを参照して次トークンを予測する因果マスキングを用いる。スケールアップで強力な汎化性能を示し、現代LLMの主流アーキテクチャとなった。
因果言語モデル事前学習(CLM)とは
Causal Language Modeling(CLM)は、GPT(Generative Pre-trained Transformer)シリーズを皮切りに現代LLMの標準アーキテクチャとなった自己回帰的事前学習手法。テキストの各位置において、それ以前のトークンのみを参照して次のトークンを予測する「因果マスキング」を適用することで、テキストの時系列的な依存関係を学習する。
「因果」の意味
「因果(Causal)」とは、時間的因果関係を指す。位置 t のトークンは、位置 1, 2, ..., t-1 の過去トークンにしか依存できない。未来のトークンを参照することは物理的・論理的に不可能なため、この制約は推論時と学習時の一致性を保証する。
例: トークン列「猫はマットの上に座った」において位置5「に」の予測に使えるのは「猫はマットの上」のみ。
Teacher Forcing と効率的実装
CLMの学習ではTeacher Forcingを使用。推論時は前ステップの出力を次の入力として使うが、学習時は正解トークン列をそのまま入力として使用することで学習を安定・高速化する。
TransformerベースのCLMでは1回のforward passで全位置の損失を並列計算できる:
input_ids = tokenize(text) # [x1, x2, ..., xT]
labels = input_ids.shift_left() # [x2, x3, ..., xT, -100]
logits = model(input_ids)
loss = cross_entropy(logits, labels, ignore_index=-100)
スケーリング則との相性
CLMはMLMと異なり、スケールアップ(パラメータ数・データ量・計算量の増大)に対して損失が予測可能に改善するスケーリング則が成立することをGPT-3(2020年)が実証。Chinchilla論文(2022年)でこの則が精緻化され、「最適なモデルサイズとデータ量の比率」が定量化された。
主要CLMモデルの事前学習規模
- GPT-3: 175Bパラメータ、300Bトークン(2020年、スケーリング則を実証)
- LLaMA 3.1 8B: 8B、15Tトークン(2024年、オープンソース)
- Gemma 2 9B: 9B、8Tトークン(2024年、Google)
- Qwen2.5 7B: 7B、18Tトークン(2024年、Alibaba)
- Phi-4 14B: 14B、10Tトークン(2024年、合成データ重視)
Instruction Tuning・RLHFとの接続
CLMは事後学習(Post-training)との接続が非常に容易:
- 事前学習: 大規模テキストでCLM目的関数で学習
- Instruction Tuning(SFT): 対話形式データでFine-tuning(CLM損失は継続)
- RLHF/DPO: 人間の好みに合わせた強化学習(CLMが参照ポリシーとして機能)
この自然な接続性がCLMが主流になった理由の一つ。
macminiでのローカル実行
jisaku.com推奨のmacmini(192.168.1.200)でのOllama/LMStudio実行も、内部はCLM推論。gemma4:12b等のモデルはCLM事前学習済みで、1トークンずつ自己回帰的に生成する。生成速度(tokens/s)はVRAM帯域幅とモデルサイズに依存。