② AIの仕組み — なぜ次の1語が当たるのか
前章で見たとおり、AIの正体は掛け算と足し算の堆積である。ではその演算は何を計算しているのか。 本章は言葉が数値になり、文脈が行列になり、確率から1語が選ばれて戻ってくるまでを追う。 ここを押さえると、後章のトークン原価・KVキャッシュ・MoEの経済性が、比喩ではなく物理として読める。
2.1 トークン化と埋め込み — 言葉が数値になるまで
モデルは文字を読まない。読むのは語彙表の番号である。 そして課金単位である「トークン」は単語ではなく、統計的に決めた切れ目にすぎない。 日本語が英語より割高になりがちなのは、この切れ目の作られ方に理由がある。
| 方式 | 年 | 仕組み | 実務上の含意 |
|---|---|---|---|
| 文字単位 | — | 1文字を1トークンにする | 語彙は小さいが系列が伸び、注意機構の計算量が2乗で膨らむ |
| 単語単位 | — | 空白で区切る | 未知語に弱い。空白で区切らない日本語では成立しない |
| BPE | 2015 | 頻出する文字ペアを繰り返し統合して語彙を作る | GPT系の基礎。Sennrichらが機械翻訳向けに提案 |
| SentencePiece | 2018 | 生テキストから直接学習し、空白も記号の一つとして扱う | 日本語・中国語の実質標準。事前の分かち書きが要らない |
| バイト単位BPE | — | 文字ではなくUTF-8のバイト列にBPEを適用する | 未知語が原理的に発生しない。OpenAIのtiktokenが採用 |
番号になった語は、次に数百から数千次元の座標へ置き換えられる。「意味を理解している」の実体はこの座標であり、 層を通るごとに文脈を織り込んで位置が動く。多義語の曖昧さが解けるのは、入口ではなく層の途中である。
| 段階 | 数値の形 | 何を表すか | 誤解しやすい点 |
|---|---|---|---|
| トークンID | 整数1個 | 語彙表の何番目かを指す番号 | IDの大小に意味はない。1000番が999番より「大きい」わけではない |
| 入力埋め込み | 数百〜数千次元の実数列 | その語の初期的な意味を表す座標 | この時点では語義が未確定。「銀行」の多義はまだ解けていない |
| 位置情報 | 加算または回転 | 何番目のトークンかを表現する | 原論文は正弦波。現行の主流はRoPE (回転)、ほかにALiBi |
| 文脈化表現 | 層を通った後のベクトル | 文の中でのその語の意味 | ここで多義が解ける。「川岸」か「金融機関」かが確定する |
| 出力ロジット | 語彙数分のスコア | 次に来る各トークンの点数 | まだ確率ではない。softmaxを通して初めて確率になる |
出典: Vaswani et al. 2017 (Transformer) / Sennrich et al. 2015 (BPE) / Kudo & Richardson 2018 (SentencePiece) / Su et al. 2021 (RoPE) / tiktoken
2.2 注意機構とTransformer — 「どの語を見るか」を計算で決める
「文脈を読む」は比喩ではない。実体は全トークン対の関連度を並べた行列を作り、その重みで平均を取る操作である。 2017年の1本の論文が提示したこの機構が、以後の全ての大規模モデルの土台になった。 注意機構が系列長の2乗で効くという性質が、そのまま長文脈の原価に直結する。
| 構成要素 | 役割 | 計算の性質 | なぜ必要か |
|---|---|---|---|
| Q/K/V射影 | 各トークンを「問い合わせ・見出し・中身」の3役に変換する | 行列積 | どの語がどの語を参照すべきかを、学習可能な形にするため |
| スケール付き内積注意 | 全トークン対の関連度を出し、重み付き平均を取る | 系列長の2乗に比例 | 根号dで割るのは、内積が大きいとsoftmaxが飽和して勾配が消えるため |
| 多頭化 | 参照の観点を複数並列に持つ | ヘッド数分の並列行列積 | 1組の重みでは、係り受けと共参照のような別種の関係を同時に表せない |
| 因果マスク | 未来のトークンを見えなくする | 上三角を負の無限大に | これが無いと答えを見ながら答える形になり、次トークン予測の学習が成立しない |
| 前向き層 (FFN) | 各位置で独立に非線形変換する | 行列積2回 | パラメータの多くを占める。知識の貯蔵庫として働くとの研究がある |
| 残差接続と正規化 | 入力を出力に足し込み、分布を整える | 加算 | 層を数十段積んでも勾配が消えないようにするため |
長い文脈を扱うコストは、演算量とメモリの2方向から効いてくる。 「128k対応」という仕様表の1行の裏側には、次の3つの制約が同時に存在する。 原価側からの扱いは③3.5節 (文脈長とKVキャッシュ)を参照。
| コスト項目 | 何に依存するか | 効いてくる場面 | 対策技術 |
|---|---|---|---|
| 注意の演算量 | 系列長の2乗 × 次元 | 長文脈を入れるほど効く | FlashAttention (計算順序の工夫で高速化) |
| KVキャッシュ量 | 2 × 層数 × ヘッド数 × 次元 × トークン数 × バイト数 | 同時接続数を増やすほど効く | MQA・GQA (ヘッド間でKVを共有) |
| メモリ断片化 | 可変長リクエストの混在 | 高負荷のサービス運用で効く | PagedAttention (仮想記憶と同じ考え方) |
出典: Vaswani et al. 2017 / FlashAttention / GQA / PagedAttention (vLLM)
2.3 自己回帰生成 — 1トークンずつ、確率から1個選ぶ
回答が1文字ずつ出てくるのは演出ではない。モデルは1トークン出すたびに全層を通し直している。 同じ質問で答えが変わるのも、温度という設定が効くのも、すべてこの工程の④で起きている。
| 工程 | 何をするか | 律速するもの | 利用者から見た現れ方 |
|---|---|---|---|
| ① プリフィル | 入力文全体を一括で通し、KVキャッシュを作る | 演算が律速 | 最初の1文字が出るまでの待ち時間になる |
| ② 前向き計算 | 全層を1回通す | 重みの読み出し (メモリ帯域) が律速 | 生成が刻まれる速さそのもの |
| ③ 確率へ変換 | ロジットを温度で割ってsoftmaxにかける | 無視できる | 温度を上げると分布が平らになる |
| ④ サンプリング | 貪欲法・top-k・top-pのいずれかで1個選ぶ | 無視できる | 同じ質問でも答えが変わる理由はここ |
| ⑤ 追加して繰り返す | 出したトークンを末尾に足して②へ戻る | KVキャッシュが増え続ける | 長く書くほど1トークンあたりが重くなる |
| 復号方式 | 挙動 | 長所 | 注意点 |
|---|---|---|---|
| 貪欲法 (温度0) | 常に最大確率のトークンを選ぶ | 再現性が高い | 単調になり、同じ表現を繰り返しやすい |
| 温度サンプリング | 分布を平らに、または尖らせる | 多様性が出る | 高くしすぎると文が破綻する |
| top-k | 上位k個の候補から選ぶ | 破綻を抑えられる | 分布の形を無視するため、候補が偏る場面で不利 |
| top-p (核サンプリング) | 累積確率がpに達するまでの候補から選ぶ | 分布に応じて候補数が動く | 開放的な生成での実務標準 |
| 投機的復号 | 小型モデルが下書きし、大型モデルが一括検証する | 出力分布を変えずに速くできる | 下書きが外れ続けると利得が消える |
出典: 核サンプリング (top-p) / 投機的復号
2.4 学習時と推論時、計算の中身は何が違うのか
①1.5節では訓練と推論を「別の商売」として区別した。 ここでは同じ区別を計算とメモリの中身から見る。要点は、学習ではメモリの大半が重み以外に消えること、 そして推論では重みが1ビットも動かないことである。後者は情報漏洩の議論で最も誤解される点でもある。
| 観点 | 学習時 | 推論時 |
|---|---|---|
| 通す方向 | 順伝播 → 損失 → 逆伝播 → 重み更新 | 順伝播のみ |
| 正解データ | 元の文そのもの。次の1語を隠して当てさせる (自己教師) | なし |
| 保持するもの | 全層の中間活性 + 勾配 + 最適化器の状態 | KVキャッシュのみ |
| メモリの内訳 | Adam系では重みのほかに勾配と2種のモーメントが乗り、重みの数倍規模になる | 重み + KVキャッシュ |
| パラメータ | 勾配降下で少しずつ動く | 1ビットも動かない |
| 演算とメモリの交換 | 再計算により中間活性の保持を減らせる | 量子化によりメモリと帯域を減らせる |
出典: Chinchilla (計算最適な配分) / InstructGPT (後訓練) / LoRA (部分学習)
2.5 MoEの動作原理 — ルーターが専門家を選ぶ
③3.2節の系譜表が示すとおり、総パラメータと有効パラメータの乖離は MoEによって生まれる。ただし「専門家」は人が分野を割り当てたものではない。 ルーターが学習の結果として勝手に作った分業であり、医療担当や法律担当が居るわけではない。
| 部品 | 動作 | 設計上の勘所 |
|---|---|---|
| ルーター | トークンごとに各専門家の点数を出し、上位k個を選ぶ | 選択が離散なため勾配が通りにくく、学習が難しい |
| 専門家 | 前向き層を複数個に分けたもの。注意機構は共有するのが一般的 | 人が分野を割り当てたものではない。ルーターの学習結果にすぎない |
| 負荷分散 | 特定の専門家に偏らないよう補助的な仕組みを置く | 偏ると容量からあふれたトークンが捨てられ、品質が落ちる |
| 共有専門家 | 常時使う専門家を別に置き、共通知識を集約する | 専門家どうしが同じことを重複して覚えるのを防ぐ |
| 専門家並列 | 専門家をGPU間に分散して置く | トークンを該当GPUへ送る全対全通信が、新たな律速として現れる |
そして本ページで最も実務的に重要な誤解がここにある。MoEで安くなるのは演算であって、GPUメモリではない。 総パラメータ分の重みは常時メモリに載せておく必要があり、この一点が中小事業者にとっての参入障壁になる。
| 観点 | 密結合 (dense) | MoE |
|---|---|---|
| 1トークンで動く重み | 全部 | 選ばれた上位k個の専門家だけ |
| 演算量 | 総パラメータに比例 | 有効パラメータに比例 (ここが安くなる) |
| 必要GPUメモリ | 総パラメータ分 | 総パラメータ分 (減らない) |
| 通信 | テンソル並列の集約 | 全対全通信が追加される |
| 学習の難しさ | 素直 | 負荷分散とルーターの偏りを管理し続ける必要がある |
出典: Shazeer et al. 2017 / Switch Transformer / DeepSeekMoE / DeepSeek-V3 技術報告
2.6 なぜ幻覚が起きるのか — 設計上の必然と、直せる部分
幻覚 (もっともらしい嘘) は単一のバグではない。発生源が複数あり、対策ごとに効く相手が違う。 「検索を繋げば直る」「温度を下げれば直る」という理解は、いずれも半分しか当たっていない。
| 発生源 | 何が起きているか | 必然性 | 効く対策 |
|---|---|---|---|
| 生成設計そのもの | 尤もらしさを最大化する装置であり、真偽を検証する機構を内蔵していない | 高 | 外部検証・検索の併用 |
| 学習データの希少事実 | 訓練データに数回しか現れない事実は統計的に学べない | 高 | 検索で外から補う |
| 評価と報酬の設計 | 「わからない」と答えるより、当てずっぽうの方が採点で得をしてきた | 高 | 棄権を許す評価設計 |
| 知識の非対称性 | 「AはB」で学んでも「BはA」を答えられない (逆転の呪い) | 中 | データ拡張 |
| 文脈の取りこぼし | 長い文脈の中央部にある情報が使われにくい | 中 | 重要な断片を前後端に置く |
| サンプリングのゆらぎ | 温度が0より大きいと低確率のトークンも選ばれうる | 低 | 温度とtop-pを下げる |
対策側から見ると、何が減らないかのほうが実務では重要になる。 温度を下げても知識不足由来の誤りは1件も減らない。ここを取り違えた品質改善は空振りに終わる。
| 対策 | 何が減るか | 減らないもの | 実務上の代償 |
|---|---|---|---|
| 検索併用 (RAG) | 知識不足に由来する誤り | 検索が外れた時の作話、検索結果の誤読 | 遅延の増加と検索基盤の運用費 |
| 引用の強制 | 検証できない主張 | 引用先を誤って要約する幻覚 | 出力が長くなる |
| 温度を下げる | ゆらぎ由来の誤り | 知識不足由来の誤りは一切減らない | 多様性が失われる |
| 棄権を許す | 当てずっぽう | 有用性とのつり合いが崩れうる | 評価指標の作り直しが必要 |
| 検証器・自己整合性 | 算術と論理の誤り | 事実誤りの全般 | トークン消費が数倍になる |
出典: 幻覚サーベイ (Ji et al.) / Why Language Models Hallucinate (2025) / 逆転の呪い / Lost in the Middle
2.7 埋め込み検索とRAG — 外部知識を注意機構に届ける経路
RAGは「モデルに検索させている」のではない。検索した文章をプロンプトに貼り付けているだけである。 この一点を理解すると、失敗の大半がモデル側ではなく検索側で起きている理由が分かる。 応用層での位置づけは⑤5.1節 (第3層: 私有データ)を参照。
| 工程 | 処理 | 品質を落とす主因 | 実務の勘所 |
|---|---|---|---|
| ① 分割 | 文書を数百〜千トークン単位に切る | 文の途中で切れて意味が壊れる | 見出し単位で切り、前後を重ねる |
| ② 埋め込み化 | 各断片をベクトルに変換する | 学習ドメインと語彙がずれる | 日本語を含む文書での実測で選ぶ |
| ③ 索引 | 近似最近傍探索の索引を作る | 再現率と速度が交換関係にある | 全文一致検索と併用する |
| ④ 検索 | 質問ベクトルに近い断片を上位k件取る | 質問と文書で語彙がずれると当たらない | 質問の書き換えとハイブリッド検索 |
| ⑤ 再ランキング | 取った候補を精度の高いモデルで並べ直す | 遅延が増える | 上位50件を5件に絞る使い方 |
| ⑥ 文脈へ注入 | プロンプトに貼り付ける | 中央に置くと使われにくい | 重要な断片を前後端に置く |
出典: RAG 原論文 / MTEB (埋め込みの共通評価)
2.8 誤解の解体 — 通説と実際
投資判断と業務設計を最も歪めるのは、技術の難しさではなく広く流通している通説である。 以下はいずれも、そのまま信じると意思決定を誤るものを選んだ。
| 世間で言われること | 実際 | 判断への影響 |
|---|---|---|
| AIは検索して答えている | 検索していない。学習で得た確率分布から次の語を選んでいるだけで、検索するのは道具を繋いだ時だけ | 情報源の担保は製品側の設計責任になる |
| パラメータ数が多いほど賢い | 速度と原価を決めるのは有効パラメータ、性能を決めるのは学習計算量とデータと後訓練 | 総パラメータでの製品・銘柄比較は誤る |
| 文脈長は長いほど良い | 長いほどKVキャッシュと演算が増え、中央部の情報は使われにくい | 長文脈対応は「長文で高精度」を意味しない |
| 会話するとAIが学習する | 推論中にパラメータは1ビットも変わらない | 情報漏洩の実リスクは、ログ保持と再訓練利用の契約条項の側にある |
| 幻覚は改良すればゼロにできる | 較正されたモデルには一定率の誤りが不可避との議論がある | 検証工程を含めて業務を設計する必要がある |
| 大規模化で能力が突然生まれる | 不連続な採点尺度が跳びを作っている可能性が指摘されている | 「次世代で突然できる」前提の事業計画は危うい |
| オープンなモデルは中身が全部わかる | 公開されるのは重みが中心で、学習データと配合は非公開が通例 | 再現性と法的リスクの評価軸が変わる |
| トークンは単語のこと | 統計で決めた切れ目であり、日本語では1文字が複数トークンになることもある | 課金見積りを誤る。自社文書で実測するしかない |
出典: 創発は幻か (Schaeffer et al.) / 創発的能力 (Wei et al.) / 較正と幻覚の不可避性
この章から導かれる、実務で効く7つの帰結
- MoEで安くなるのは演算だけ。GPUメモリは総パラメータ分いるため、小規模事業者にはむしろ敷居が高い
- トークナイザは事前学習後に変更できない。語彙表の設計はモデルの寿命まで付いて回る
- 語彙表の大きさは出力層の行列の大きさそのもので、1トークンあたりの計算量に直結する
- RAGの失敗の大半は検索側で起きるのに、実務では「モデルを替える」で対処されがち
- 埋め込みモデルの乗り換えは索引の全件再構築を伴い、事実上のロックインになる
- 長文脈は「入る」ことと「使いこなす」ことが別物で、中央部の情報は取りこぼされる
- 「幻覚率」は各社が定義と評価集合を自分で決めているため、評価集合の公開なしに社間比較は成立しない
日本語のトークン倍率は規範となる一次情報が存在しないため、本ページでは倍率を数値で示さない。 自社文書での実測 (tiktoken 等) を推奨する。
③ 大規模モデルの構造 — パラメータの正体
「1750億パラメータ」「1兆パラメータ」のパラメータとは、モデル内部の重み行列を構成する数値1個1個のことである。 単位のB (Billion) は10億個。訓練とは、この膨大な数値の集合を、データに合うように少しずつ調整し続ける作業に他ならない。
3.1 規模の3区分 — 小型・中型・大型
パラメータは「個数」だが、実務ではそのままメモリ必要量に換算される (FP16なら1個2バイト。175Bモデルの重みだけで350GB)。 これがモデル規模と必要GPU数を直結させる。
| 区分 | パラメータ数 | 実務上の意味 | 代表例 |
|---|---|---|---|
| 小型 (10B未満) | 〜100億個 | スマートフォン・PC単体で動く。特定用途の微調整に向く | Gemma 2B/4Bクラス・Phi-3 mini (3.8B)・日本語特化モデル群 |
| 中型 (10B〜100B) | 100億〜1000億個 | GPU 1〜8基で推論可能。企業内設置の現実解 | Llama 70B・Qwen 72B |
| 大型 (100B超) | 1000億個〜 | GPU多数基が必須。最高性能はこの領域からしか出ていない | Llama 3.1 405B・DeepSeek-V3 (671B)。GPT-4級やGemini等の閉鎖型は規模を公表していない |
10B・100Bという境界に公式の定義はない。本ページが説明のために置いた便宜的な区分である。 なおモデルファミリー名だけでは区分できない点にも注意がいる。たとえばGemmaもPhiも10Bを超えるモデルを含むため、 上表ではサイズを明記した。
3.2 スケーリング則 — 規模がそのまま性能になる、ただし作法が変わった
2020年のGPT-3 (175B) が示したのは、「モデルを大きくし、データと計算を注ぎ込むほど、能力が law-like に伸びる」というスケーリング則である。 その後DeepMindのChinchilla研究 (2022) が「パラメータ1個あたり約20トークンのデータで訓練するのが計算効率上の最適」と示し、 さらに現在の主流はMoE (Mixture of Experts=専門家混合) へ移った。 総パラメータは巨大でも、1トークンの処理に使うのは一部の専門家だけという構造で、看板の数字と原価を切り離した。
| モデル | 年 | 総パラメータ | 有効パラメータ | 方式 | 含意 |
|---|---|---|---|---|---|
| GPT-3 | 2020 | 175B | 175B (全部使う) | 密結合 (dense) | 規模の効果を大規模に実証した事例。スケーリング則の定式化自体はKaplanら (2020年1月) が先行 |
| Llama 3.1 405B | 2024 | 405B | 405B | 密結合 | 重み公開の密結合としては最大級。15.6兆トークンで訓練 |
| DeepSeek-V3 | 2024 | 671B | 37B | MoE (ルーティング専門家256中8 + 共有専門家1) | 総671Bでも1トークンあたり37Bしか動かさない。活性パラメータ比は約18分の1 (本ページの計算) |
| Kimi K2 | 2025 | 1T (1兆) | 32B | MoE (専門家384中8 + 共有1) | 総パラメータ1兆時代へ。有効32Bで、総数に対して約3.2% (本ページの計算) |
表中の「約18分の1」「約3.2%」は本ページが総パラメータと有効パラメータの比から計算した値であり、 各社が主張している数値ではない。また実際の推論原価はこの比率どおりには下がらない。 KVキャッシュの読み出しとメモリ帯域が別途効くためで、DeepSeek-V3とKimi K2はいずれもMLAという機構でKVキャッシュ側を圧縮している。
出典: Kaplan et al. 2020 (スケーリング則) / Chinchilla (計算最適な配分) / Llama 3 技術報告 / DeepSeek-V3 技術報告 / Kimi K2 技術報告
あまり語られない要点 — 「総パラメータ」は看板の数字になった
- 推論原価と応答速度を決めるのは有効パラメータ (1トークンあたり実際に動く量) とメモリ帯域
- 「1兆パラメータ」でも有効32Bなら、推論の重さは中型モデル並み。逆に密結合405Bは看板より遥かに重い
- モデル比較の見出しの数字だけで優劣・原価を判断すると、ほぼ確実に誤る
3.3 訓練の3段階 — 事前学習・教師あり微調整・強化学習
「訓練」は1つの工程ではなく、性質の違う3段階の積み重ねである。計算量の9割以上は第1段階に集中する。 公表例では、DeepSeek-V3の全訓練が H800 GPU で約279万GPU時間・約558万ドル (うち事前学習は約266万GPU時間・約533万ドル。1 GPU時間あたり2ドルという同社の仮定での換算) と、 工夫次第で最前線級を1桁安く作れることを示し業界に衝撃を与えた。 ただし同社はこの金額に先行研究・アブレーション実験・アーキテクチャやデータの試行錯誤の費用を含まないと明記している。 公表された最終ランの費用であって、開発全体の費用ではない。
| 段階 | 使うデータ | 計算量の比重 | 得られる能力 | 例え |
|---|---|---|---|---|
| ① 事前学習 (Pre-training) | ウェブ・書籍等 数兆〜十数兆トークン | 全体の90%以上 | 言語と世界知識の獲得。「次の1語を当てる」だけを延々と解く | 教科書を全部読む |
| ② 教師あり微調整 (SFT) | 人手で作った模範問答 数万〜数百万件 | 数% | 指示に従う形式・口調・作法の獲得 | 模範解答で答案練習 |
| ③ 強化学習 (RL) | 人間の選好比較 (RLHF)・検証可能な正解 (RLVR) | 数% | 「良い答え」への好みの獲得。推論能力の引き上げはこの段階が主戦場 | 採点者に鍛えられる |
出典: InstructGPT (3段階の原典) / Tulu 3 (検証可能な報酬によるRL) / DeepSeek-V3 技術報告 (訓練コスト)
3.4 開放型と閉鎖型 — 企業ではなく、モデル単位で分かれる
この区分を「開放型の企業と閉鎖型の企業」で説明する記事が多いが、2025年以降それは成り立たない。 OpenAIは2025年8月にgpt-oss (総117B) をApache 2.0で公開し、GoogleはGemmaを公開している。 現在の標準は同一企業が旗艦モデルは閉鎖型、小型モデルは開放型に置く二正面戦略であり、 分かれ目は企業ではなくモデルにある。
開放型 (オープンウェイト) のモデル
- 訓練済みの重みファイルを公開。誰でも自前のGPUで動かせる
- 戦略: 普及で標準を握り、周辺 (クラウド・支援サービス) で回収
- 企業の機密データを外部に出さず社内設置できる点が採用理由の筆頭
- 例: DeepSeek-V3・Llama・Qwen・Gemma・gpt-oss。 DeepSeek は重み公開に加え論文で技術詳細まで開示
- 注意: 公開されるのは重みが中心で、学習データと配合は非公開が通例。 ライセンスもOSI準拠とは限らない (Llamaは独自のコミュニティライセンス)
閉鎖型 (API提供のみ) のモデル
- 重みは非公開。APIとアプリ経由でのみ利用させる
- 戦略: 最高性能を維持し、利用料 (購読+従量) で直接回収
- 模倣されにくく価格決定力が強い一方、最前線の維持に巨額の再投資が必須
- 例: GPT系の旗艦・Claude・Gemini。 パラメータ数も公表されないため、規模での比較自体ができない
3.5 文脈長とKVキャッシュ — 「128k対応」の物理的裏側
文脈長 (コンテキスト長) は、モデルが一度に把握できるトークン数の上限である (128k は 131,072 = 約13万トークン)。 長文脈が高価な理由は明快で、モデルは過去の全トークンについてKVキャッシュ (Key/Value の中間計算結果) をGPUメモリに保持し続ける必要があり、 文脈が長いほど・同時利用者が多いほど、このメモリ消費が線形に膨らむ。 長文脈対応とは性能の話である以前に、GPUメモリという原価の話なのである。