第9章 — スケールでの学習

公開日: 2026-03-11 最終更新日: 2026-06-07 バージョン: 2

第9章 — スケールでの学習

LLM Primer II: 数学で読み解く言語モデル を章ごとに紹介していくシリーズ、第9回です。前章「モデルはどう学ぶか」の伴走となる章 — 数学が、現実の学習ジョブの工学とそっと出会う章です。よろしければ、お付き合いください。


この章の問い

第8章は、学習の理論を語る章でした。なぜ学習はうまくいくのか。どこがまだ謎なのか。スケーリング則は何を予言してくれるのか。第9章はその裏側で、論文の多くが軽く触れて通り過ぎ、エンジニアが日々の時間を費やしている場面 — クラスタの内側で実際に何が起きているのか — を見つめます。

本章は3つの節からなり、それぞれが「遠目には見えにくく、近づくと致命的に重要になる」たぐいの数学を扱います。

ひとことで言うと: 大規模な学習とは「同じループを大きく回すこと」ではありません。スケールが一段増すたびに、新しい壊れ方が顔を出します。第9章の数学は、その壊れ方の只中で「学習を生かしておく」ための数学です。

9.1 データ前処理の数学的な帰結

9.1 節は、控えめですが大切な主張から始まります。データ前処理での選択は、最終的なモデルに、少なくともアーキテクチャの選択と同じくらい強く効きます。多くの議論はここを「配管」のように扱って通り過ぎますが、本章ではあくまで数学として扱います。

本節では、主要な意思決定を順に取り上げ、それぞれが何を数学的に意味しているかを読み解いていきます。トークン化 — バイトペア符号化、SentencePiece、語彙サイズの選び方 — は、モデルが学ぼうとしている分布そのものを形作ります。重複除去は、強化されるパターンを変えます。品質フィルタリングは、学習分布の台(サポート)を変えます。データソースを異なる比率で混ぜれば、モデルが収束していく分布の方向そのものが変わります。

本節ではひとつだけ、丁寧な例を置きました。生のウェブテキストで学習する場合と、重複除去・品質フィルタリングを施したテキストで学習する場合の違いです。トークン数も、アーキテクチャもまったく同じ。それでも最後に手元に残るのは、ずいぶん違う 2 つのモデルなのです。

9.2 ミニバッチ学習・並列化・効率

9.2 節は、「1 例ずつでは遅すぎる」「データ全体は一度には載らない」というあいだに、どうやって学習を組み立てるか、というお話です。答えがミニバッチであるのはご存じのとおりですが、ミニバッチの数学は、見かけよりずっと面白いのです。

本章では、バッチサイズと勾配ノイズの関係を導きます。小さなバッチは勾配の推定が騒がしく、しかしその騒がしさが暗黙の正則化として汎化を助けることがある — 直観に反するこの事実を、数式の上で確かめます。大きなバッチは勾配がきれいで、ある一点までは学習率も上げられます。けれども、その先には「臨界バッチサイズ」というしきいがあり、それを越えて並列化を増やしても、ただ計算を浪費するだけになります。本節は、そのトレードオフを、数式を表に出した形で辿ります。

そこからさらに、データ並列・モデル並列・パイプライン並列・テンソル並列という、現実の学習ジョブが GPU 群に張り渡される 4 つの主たる軸へと話を進めます。どれもきれいな数学的記述を持ち、どれも見えにくいコストを背負っています。これらを組み合わせたものが、現代の学習システムで「3D 並列」「4D 並列」と呼ばれているもので、本書ではこれをひとつの図で丁寧に追っています。

9.3 数値精度・安定性・大規模最適化

9.3 節は、3 つのなかでもっとも技術的で、もっとも静かに重要な節です。現代の学習ジョブは混合精度を使います。計算の大半は bfloat16 や float16 で進め、特定の演算だけ float32 に格上げする。理由はすっきりしていて、精度を下げれば速くなり、メモリに載せやすくなり、消費電力も減ります。けれども危うさもまた、すっきりしています。精度が低すぎると、情報を失いすぎて、学習が静かに発散してしまうのです。

本章では、浮動小数点表現の数学、bfloat16(指数部が広い)がなぜ float16(仮数部が広い)よりも安全に振る舞いやすいのか、そして softmax・層正規化・損失の集計といった、float32 を保ったほうがよい具体的な箇所を見ていきます。

勾配スケーリング、損失スケーリング、オプティマイザの状態についても扱います。Adam はパラメータごとに 2 つの移動平均を持ちますが、混合精度ではこの移動平均がアンダーフローを起こすことがあり、現代の学習システムはこれを丁寧に扱う必要があります。これらを気にかけずに走らせた学習ジョブは、十分な時間が経てば、結局のところ壊れてしまうのです。

覚えておきたいこと: モデルが何で学習されたかは、損失関数の選び方だけでは決まりません。前処理を経たデータ分布こそが「解いている問題そのもの」を定めています。両方とも、私たちの選択です。多くの方は、最初のほうしか気に留めないのですが。

この章を踏まえて

第9章を読み終えるころには、事前学習の「中で本当に起きていること」が、ずっと見通しよく感じられるはずです。そして、このスケールでは工学と数学は切り離せないという、いささか地味ですが大切な感覚も、お手元に残るかと存じます。これで第II部は終わりです。ここから本書は、応用、限界、そしてこの先の地平へと、少し視点を引いていきます。


次回 — 第10章: ポストトレーニングとアラインメントの数学 賢いが野生のままの「次トークン予測器」を、役に立つアシスタントへと飼い慣らしていく章です。教師ありファインチューニング、報酬モデル、KL の手綱付き RLHF、そして強化学習が一式まるごと「ひとつの教師あり損失」に溶けていく DPO の鮮やかな導出。

全体像を押さえたい方へ: 本書では各並列化戦略の数学を丁寧に辿り、臨界バッチサイズの式を導出し、そして実際の現場で「本番事故をひとつ未然に防いだ」と言ってもよい混合精度学習の解説を添えています。Amazonで『LLM Primer II』を見る

下田 昌平
下田 昌平
開発と設計を担当。1994年からプログラミングを始め、今もなお最新技術への探究心を持ち続けています。