大規模言語モデル — 次トークン予測・スケーリング則・文脈内学習

ChatGPT の中身は、突き詰めれば「次のトークンを当てる」だけの機械です。その単純な目的が、規模を極端に大きくすると、翻訳も推論も会話もこなす汎用能力に化ける。このレッスンでは LLM を支える3つの柱 — 次トークン予測・スケーリング則・文脈内学習 — を、実際に動かして確かめます。

1. LLM の正体 — 訓練目標はたった1つ

大規模言語モデル(LLM)の事前学習は、インターネット規模のテキストで「ここまでの文脈から次のトークンを予測する」ことをひたすら繰り返すだけです。前レッスンの Transformer デコーダを何十層も積み、何兆トークンも読ませる。翻訳用の教師データも、対話の台本も要りません。

L(θ) = − Σt log Pθ(xt | x1, …, xt−1) 全位置の「次トークンの対数尤度」を最大化するだけ。これが事前学習のすべて
POINT — 「次を当てる」は世界を圧縮する課題 「フランスの首都は」の次を当てるには知識が、「よって x =」の次を当てるには計算が、「彼女は悲しそうに」の次を当てるには文脈理解が要る。次トークン予測は簡単そうに見えて、うまく解こうとするとテキストの背後にある構造まで学ばざるを得ない課題になっている。

2. 次トークン予測マシン — 温度と top-p で「選び方」が変わる

モデルの出力は「次のトークン1個」ではなく全語彙にわたる確率分布です。そこから実際に1つ選ぶのがサンプリング。温度 T は分布の尖り方を調整し(低い=堅実、高い=ギャンブル)、top-p は累積確率が p に達するまでの上位候補(核)だけに絞ります。

下のデモで文脈を切り替え、温度を動かして分布の形を見てから、「サンプリング」で実際に文章を伸ばしてみてください。同じ文脈でもリセットのたびに違う文が生まれることがあります — それが確率的生成です。

次トークン予測マシン — 分布から1つ選んで文脈に追記
青いバー=抽選対象(top-p の核)、暗いバー=top-p 圏外で除外。温度を 0.1 にすると事実上いつも最有力候補が選ばれ(貪欲的)、2.0 にすると「カレー」のような珍答の目も出てくる。分布は説明用の手作りで、3手先まで収録。
Pi = exp(zi / T) / Σj exp(zj / T) T→0 で argmax(毎回同じ答え)、T→∞ で一様分布(完全ランダム)に近づく

3. スケーリング則 — 規模が質を変える

LLM 以前の常識では、モデルを大きくしすぎると過学習するはずでした。ところが言語モデルでは、パラメータ数・データ量・計算量を増やすほど損失がべき乗則で下がり続けることが実験的に確認されました(Kaplan et al., 2020)。log-log プロットで直線になる、驚くほどきれいな法則です。

▶ を押して計算量を注ぎ込んでいくと、損失の直線的低下とともに、ある規模で突然できるようになるタスク(創発的能力)が現れる様子を見てください。

スケーリング則 — log-log の直線と能力の創発
横軸=パラメータ数(対数)、縦軸=次トークン予測の損失(対数・低いほど良い)。GPT-1→2→3→4 と規模が3桁以上増える間、損失は同じ直線に乗り続けた。「もっと大きくすればもっと良くなる」という予測可能性が、巨額投資を正当化した。
L(N) ≈ (Nc / N)α N=パラメータ数、α≈0.076。データ量 D・計算量 C についても同形の法則が成り立つ
一歩先へ — Chinchilla と「創発は幻か」論争 その後の Chinchilla(2022)は「同じ計算予算なら、パラメータとデータをほぼ同じ比率で増やすのが最適」と示し、「とにかく巨大に」から「バランス良く食わせる」へ設計思想を変えた。また創発的能力についても、正解/不正解のような不連続な指標だと能力が「突然」現れたように見えるだけで、滑らかな指標では連続的に改善している、という指摘がある(Schaeffer et al., 2023)。それでも「ある規模から実用になる」という体感が現場を動かしてきたのは事実。

4. 文脈内学習 — 重みを変えずに学ぶ

GPT-3 の論文(2020)が示した最大の驚きがこれです。プロンプトに例をいくつか見せるだけで、モデルがそのタスクをこなし始める。勾配降下もパラメータ更新も一切していないのに、です。これを文脈内学習(In-Context Learning, ICL)、例の数に応じて few-shot / one-shot / zero-shot と呼びます。

下のデモで例を 0個 → 1個 → 3個 と増やし、同じ質問「cat → ?」への予測分布が正解の書式「ねこ」に吸い寄せられていく様子を見てください。

文脈内学習 — few-shot 例で分布が正解に寄る
例なしだと「cat をどう答えるべきか」(英語のまま?漢字?ひらがな?)が定まらず分布が割れる。例が増えるとタスクの意図と答えの書式を文脈から読み取り、分布が「ねこ」に集中していく。左下の❄に注目 — この間、重みは1ビットも変わっていない。
POINT — プロンプトは「実行時のプログラム」 学習済みの重みが「汎用のインタプリタ」で、プロンプトがその場で与える「プログラム」だと考えると ICL の不思議さが整理できる。ファインチューニングなしでタスクを切り替えられるこの性質が、1つのモデルを何にでも使う現在のスタイル — そしてプロンプトエンジニアリングという職能 — を生んだ。

5. トークナイズ — LLM は文字ではなくトークンを見ている

モデルに入る前に、文章はサブワード(部分単語)の列に分割されます。頻出する並びは長いまま1トークンに、珍しい単語は細切れになる — BPE(Byte Pair Encoding)系のアルゴリズムが、データから語彙を自動で作ります。モデルが見るのは色のついたブロックの ID 列だけで、その中の文字は見えていません。

トークナイズ — 文がサブワードのブロックに割れる
よく出る「今日」「天気」は1トークン、珍しい「トークナイゼーション」は3分割。「LLM はなぜ文字数を数えたり、単語を逆から読んだりが苦手なのか」の答えがここにある — 文字がそもそも見えていないから。

6. 限界と付き合い方 — できないことを知る

次トークン予測という出自は、そのまま LLM の弱点にもなります。

注意 — LLM の3つの構造的限界 ① 幻覚(ハルシネーション): モデルは「正しいこと」ではなく「それらしい続き」を生成する。知らないことを聞かれても、もっともらしい嘘が流暢に出てくる。② 知識カットオフ: 重みに焼き込まれた知識は学習データの収集時点で止まっており、それ以降の出来事は知らない。③ 確率的生成: 同じ入力でも出力が揺れる。厳密な計算や再現性が要る仕事には、そのままでは向かない。

これらは「たまたまのバグ」ではなく仕組みに根ざした性質です。だから実用では、検索で最新情報を与える(RAG)、計算はツールに任せる、出典を確認する、といった外側の仕組みで補うのが定石になっています。

7. まとめ

一歩先へ — 「賢い」と「役に立つ」の間 事前学習だけの LLM は「続きを書く機械」であって、質問に素直に答えるとは限らない。人の指示に従い、有害な出力を避けるよう調整する仕上げの工程が、レッスン15で扱うファインチューニングと RLHF。その前にレッスン13〜14で、テキスト以外を生み出す生成モデル(VAE・GAN・拡散モデル)を見ておこう。