Transformer(トランスフォーマー)
Vaswani 2017 の Transformer は自己注意のみで並列学習と長距離依存を両立。encoder/decoder/encoder-decoder の 3 系統、GQA・FlashAttention・SwiGLU・Chinchilla 則・KV キャッシュ律速を概観する。
article technology ja Vaswani 2017 の Transformer は自己注意のみで並列学習と長距離依存を両立。encoder/decoder/encoder-decoder の 3 系統、GQA・FlashAttention・SwiGLU・Chinchilla 則・KV キャッシュ律速を概観する。Transformer(トランスフォーマー)
Transformer (Vaswani 2017, arXiv:1706.03762) は RNN/LSTM の逐次依存と勾配消失を捨て、マルチヘッド自己注意のみで系列処理することで GPU 並列学習を可能にし、機械翻訳で当時の SOTA を 1/10 以下の学習時間で達成した。原型からすぐ encoder-only (BERT)・decoder-only (GPT, LLaMA)・encoder-decoder (T5, BART) の 3 バリアントが分岐、2022 年以降 decoder-only が LLM の事実上の標準となった。中身は Pre-LN・SwiGLU・RMSNorm・RoPE・MQA/GQA・FlashAttention で段階的に固められ、Chinchilla 則 (2022) が最適計算配分の前提を書き換えた。
RNN/LSTM から Transformer へ
2017 年以前の seq2seq は RNN/LSTM ベースで、(1) が に依存する逐次ボトルネックで GPU 並列が効かない、(2) LSTM でも 100〜200 トークン超の勾配消失、(3) Sutskever 2014 の seq2seq は全入力を 1 ベクトルに圧縮 (Bahdanau 2015 注意で encoder 状態の全参照は可だが encoder 自体は再帰のまま) の 3 限界を抱えた。Vaswani 2017 は再帰/畳み込みを全廃し自己注意で全トークン間経路長を にし、位置符号化で順序を注入、WMT 2014 英独 28.4 BLEU を 8 GPU × 3.5 日で達成。
アーキテクチャ全体像
オリジナル Transformer は encoder/decoder を各 層、encoder 層は 2 サブ層 (自己注意 + FFN)、decoder 層は 3 サブ層 (因果マスク自己注意 + cross-attention + FFN)、各サブ層は残差 + LayerNorm で包む。base は で約 65M、large は で約 213M。同じ block 骨格を BERT-base 110M から LLaMA-3 70B (80 層・GQA 8) まで素直にスケールできるのが構造的利点。
スケールド・ドット積注意とマルチヘッド注意
スケールド・ドット積注意 (SDPA) は
は内積分散の発散を抑え softmax 飽和を回避。自己注意は を同一入力から射影、cross-attention は を decoder・ を encoder 出力から作る。
マルチヘッド注意 (MHA) は を 個の 次元部分空間に並行射影し独立に attention 計算後、連結 + 出力射影。総パラメータは単一ヘッドと同じで、各ヘッドが構文依存・共参照・近接性・意味類似度などを別々に担うと Clark 2019 が観察。 の二乗依存が長文脈推論の律速で FlashAttention/線形注意の動機となる。
FFN・残差接続・正規化の変遷
位置別 FFN 、 が標準でブロック全パラメータの約 2/3 (MoE が sparse 化するのもここ)。現代 LLM は ReLU でなくSwiGLU (Shazeer 2020, arXiv:2002.05202) を使い、3 重み化の代わり で 4× FFN と総パラメータを揃える。正規化は Post-LN → Pre-LN (Xiong 2020, arXiv:2002.04745) に移行、ウォームアップ不要で深層でも勾配が安定 (GPT-3 以降は Pre-LN)。RMSNorm (Zhang & Sennrich 2019, arXiv:1910.07467) は平均減算と を省き で割るだけで LayerNorm 同等品質を高速に出し、LLaMA・Mistral・Qwen・Gemma で標準。
位置符号化(別記事へ)
自己注意は並べ替え不変なので位置情報を別経路で注入する必要がある。正弦波絶対符号化・T5 相対バイアス・RoPE・ALiBi・YaRN/LongRoPE は別記事 Positional Encoding — tech-34 で詳述し本稿は重複しない。2026 年の新規デコーダ LLM は RoPE + 必要時 YaRN がデフォルト。
3 つの構造バリアント
Encoder-only (BERT 系): encoder スタックのみ双方向注意。MLM (15% を [MASK] 予測) で事前学習し [CLS] 表現で fine-tune。BERT (Devlin 2019, arXiv:1810.04805) base 110M / large 340M、DeBERTa は disentangled attention で GLUE/SuperGLUE SOTA。用途は分類・NER・抽出 QA・埋め込み・検索で生成には向かない。
Decoder-only (GPT・LLaMA 系): 因果マスク自己注意のみで自己回帰生成。GPT-1 117M → GPT-2 1.5B → GPT-3 175B (Brown 2020, arXiv:2005.14165) と巨大化し GPT-3 でin-context learning が確認。LLaMA (Touvron 2023, arXiv:2302.13971) は Pre-LN + RMSNorm + SwiGLU + RoPE で Chinchilla 路線 (小モデル × 多トークン) を実証、2 系 70B 以降 GQA、3 系は 8B〜405B で 128K 文脈。Mistral 7B は GQA + SWA で長文脈メモリ 。
Encoder-Decoder (T5 系): T5 (Raffel 2020, arXiv:1910.10683) は全タスク text-to-text + span-corruption + 相対位置バイアスで事前学習、BART は noising/denoising で要約に強い。入力 → 構造化出力 (翻訳・要約・質問生成) で encoder 双方向情報が活きる用途が本領。
decoder-only が支配的になった理由: 因果マスクで生成が自然・encoder overhead が無い・ブロック 1 種でスケール単純・GPT-3 のプロンプティング多タスク化・RLHF/DPO の 1 軌道扱いとの相性。
2017 年以降の主要最適化
MQA → GQA: MHA の KV キャッシュは 分。MQA (Shazeer 2019, arXiv:1911.02150) は KV を 1 ヘッド共有で 分の 1 に削減し HBM 帯域律速を緩和。GQA (Ainslie 2023, arXiv:2305.13245) は中間で KV グループを クエリヘッドで共有。LLaMA 2 70B が で MHA 同等品質と MQA 近似スループットを示し、以後 LLaMA 3・Mistral・Qwen2・Gemma 2 が採用。
FlashAttention (Dao 2022, arXiv:2205.14135) は 注意行列の HBM 展開を避け、Q/K/V をタイリングし SRAM 上で online-softmax により正規化子を逐次更新する厳密注意。近似なしで 2〜4 倍 wall-clock と長系列 5〜20 倍メモリ削減。FA-2 (2023) は A100 で 50〜73%、FA-3 (2024) は H100 の WGMMA/TMA・FP8 で約 75% 理論ピーク。
Sliding Window Attention (Mistral 7B): 各トークンが過去 のみ参照、層を重ねて実効受容野 、メモリ 。 超は多層集約に頼る。
スケーリングと計算量
decoder-only の埋め込み除外パラメータは層あたり 、 時 。学習 FLOP は約 、LLaMA-3 8B / 15T で FLOPs ≈ 720 ZFLOPs。
Kaplan 2020 は損失が で減ると報告し計算予算をモデルサイズへ振った (GPT-3 175B / 300B は現代基準で under-fit)。Chinchilla (Hoffmann 2022, arXiv:2203.15556) は 400 モデル実測で 、パラメータあたり約 20 トークンを推奨。Chinchilla 70B/1.4T は Gopher 280B/300B より perplexity が良く計算は約 1/4。以後「推論最適」目的で小モデルを過剰学習する流れとなり、LLaMA 3 8B は 15T を浴びた。
KV キャッシュも律速で 1 層 1 トークン 、LLaMA-3 70B (GQA 8・・・fp16) は 1 トークン全層 320 KB、128K 文脈なら 1 系列約 40GB。対策は GQA/MQA・KV 量子化 (INT8/FP8)・CPU/NVMe オフロード・PagedAttention・プレフィックスキャッシュ。
推論特性 — Prefill / Decode と PagedAttention
推論は 2 フェーズ。Prefill はプロンプト全長を 1 forward に流す GEMM 中心 compute-bound 段階。Decode は 1 トークン生成ごとに QKV/FFN を通し KV キャッシュへ追記し attention する逐次 GEMV で、算術強度約 FLOP/byte と GPU の計算/帯域比を下回るメモリ帯域律速。スループット改善はバッチ拡大が主軸で、vLLM の continuous batching・speculative decoding・tensor parallelism が定石。
PagedAttention (Kwon 2023, arXiv:2309.06180) は KV キャッシュを OS 仮想記憶風の固定ページで管理し共通プレフィックス系列の物理メモリ共有を可能にする (連続割当比 2〜4 倍)。Speculative decoding (Leviathan 2023, arXiv:2211.17192) は小型 draft が 候補を出し本体が 1 forward で検証、受理率の高いコード・数学で 2〜3 倍速。
2026 年の選択指針
| タスク | 推奨バリアント | 代表モデル |
|---|---|---|
| チャット・汎用生成 | decoder-only | LLaMA-3.3-70B, Qwen2.5-72B |
| 文書 QA・分類 | encoder-only | DeBERTa-v3, ModernBERT |
| 教師あり機械翻訳 | encoder-decoder | mT5-XL, NLLB-200 |
| 密検索・埋め込み | encoder-only | BGE-M3, E5-mistral |
| コード生成 | decoder-only | Qwen2.5-Coder-32B, DeepSeek-Coder-V2 |
| 100K 超長文脈 | decoder-only (MoE) | Gemini 1.5 Pro, Qwen2.5-72B (128K) |
実装は HuggingFace transformers・vLLM・llama.cpp (GGUF)・TensorRT-LLM・SGLang・ExLlamaV2 が主軸。MoE は FFN を エキスパート + sparse router に置換し の計算で 倍級パラメータを保持 (Mixtral 8×7B)。代替のMamba/SSM (Gu & Dao 2023, arXiv:2312.00752) は メモリで超長文脈を狙うがエコシステム成熟度で大差。表データ・短系列時系列・少ラベル分類など Transformer が overkill な領域 (XGBoost・LSTM・fastText で十分) もある。
二言語用語対照表
| 日本語 | English |
|---|---|
| 自己注意 / マルチヘッド注意 | Self-attention / MHA |
| スケールド・ドット積注意 | Scaled dot-product attention (SDPA) |
| エンコーダ / デコーダ | Encoder / Decoder |
| 残差 / LayerNorm / RMSNorm | Residual / LayerNorm / RMSNorm |
| 位置別 FFN / MoE | Position-wise FFN / MoE |
| KV キャッシュ / ページドアテンション | KV cache / PagedAttention |
| プリフィル / デコード | Prefill / Decode phase |
| スライディングウィンドウ注意 | Sliding window attention (SWA) |
| MQA / GQA | Multi-query / Grouped-query attention |
| 自己回帰 / 因果マスク | Autoregressive / Causal mask |
| マスク言語モデリング | Masked language modeling (MLM) |
| 投機的デコード / 状態空間モデル | Speculative decoding / SSM |
参考文献
- Vaswani 2017. https://arxiv.org/abs/1706.03762
- Devlin 2019 (BERT). https://arxiv.org/abs/1810.04805
- Brown 2020 (GPT-3). https://arxiv.org/abs/2005.14165
- Raffel 2020 (T5). https://arxiv.org/abs/1910.10683
- Touvron 2023 (LLaMA). https://arxiv.org/abs/2302.13971
- Touvron 2023 (LLaMA 2). https://arxiv.org/abs/2307.09288
- Jiang 2023 (Mistral 7B). https://arxiv.org/abs/2310.06825
- Shazeer 2019 (MQA). https://arxiv.org/abs/1911.02150
- Ainslie 2023 (GQA). https://arxiv.org/abs/2305.13245
- Dao 2022 (FlashAttention). https://arxiv.org/abs/2205.14135
- Dao 2023 (FlashAttention-2). https://arxiv.org/abs/2307.08691
- Shazeer 2020 (SwiGLU). https://arxiv.org/abs/2002.05202
- Zhang & Sennrich 2019 (RMSNorm). https://arxiv.org/abs/1910.07467
- Xiong 2020 (Pre-LN). https://arxiv.org/abs/2002.04745
- Hoffmann 2022 (Chinchilla). https://arxiv.org/abs/2203.15556
- Kwon 2023 (PagedAttention). https://arxiv.org/abs/2309.06180
- Leviathan 2023 (Speculative Decoding). https://arxiv.org/abs/2211.17192
- Gu & Dao 2023 (Mamba). https://arxiv.org/abs/2312.00752
Backlinks
31 backlinks
- related Artificial Intelligence — 2026年時点のモデル・学習・推論・インフラ・規制の全体像
- extends Mixture of Experts(MoE — エキスパート混合)
- related Token(トークン)
- related Attention Mechanism(アテンション機構)
- related Training Data Shuffling and Batching(訓練データのシャッフルとバッチング)
- related LLM Training Data Augmentation(LLM 訓練データ拡張)
- related Inference Batching(推論バッチング)
- related Inference Performance Metrics(推論性能指標)
- related Inference Phases(推論フェーズ)
- related Decoding Strategy(出力戦略)
- related Distributed Training(分散学習)
- related Training Paradigm(学習パラダイム)
- related GPT Family
- related LLaMA Family
- related Mistral Mixtral Family
- requires LLM Comparison
- requires Grok Family
- requires Qwen Family
- requires Claude Family
- requires Gemini Family
- requires Perplexity AI
- requires DeepSeek Family
- requires GLM Family
- requires Kimi Family
- related Scaling and Operations(スケーリング則と LLMOps)
- related Reinforcement Learning(強化学習)
- related Containerization and Orchestration(コンテナ化とオーケストレーション)
- related Neural Networks and Deep Learning(ニューラルネットワークとディープラーニング)
- related Machine Learning(機械学習)
- related Model Serialization Format(モデルシリアライゼーションフォーマット)
- related Model Runtime and Conversion(モデルランタイムと変換)