並列学習・低精度計算・モデル統合のサーベイ(2026年10月)

総合索引 · 最適化章 · 基盤モデル章

並列学習・低精度計算・モデル統合

公開文献の上限は2026年10月3日。 既存Parallel Trainingと関連するTorchTitan・JAX・LLM実装メモを起点に、 アルゴリズムとsystemの接点を整理する。公式実装の最新APIを保証する導入手順ではなく、 論文に基づく設計原理のレビューである。 下記SY文献は一次資料の要旨・書誌を確認した。OP文献の詳細と証拠水準は最適化章にある。

1. 研究史:計算の分割から学習方法の再設計へ

2010年代後半までに、データ並列だけでは収まらないモデルに対して pipeline parallelismとtensor parallelismが実用化された。 GPipeはlayer系列を分け、Megatron-LMはTransformer内部の行列演算を分ける。 PipeDreamはpipeline稼働率とweight versioningを扱う。 「GPUを増やす」だけでは、activation、optimizer state、通信、待機の各費用は解決しない。SY002 SY003 SY015

ZeROはデータ並列におけるmodel stateの重複を削減し、 FSDPはその考え方を実用的なframeworkへ統合する重要な系譜にある。 Megatronの後続研究はDP・TP・PPを組み合わせ、TorchTitanはPyTorch-nativeな構成を比較可能にした。 この流れは「メモリ節約」と「最速の訓練」が同じ課題ではないことを示す。SY001 SY004 SY006 SY005

2025–2026年の構造化optimizerでは、matrix全体を扱う更新とweight shardingの衝突が新たな課題になる。 Dion、layer単位の分散Muon/SOAP、Dion3は、その費用を更新則・通信・kernelの異なる側面から減らす。 Local SGD/DiLoCoはさらに同期頻度そのものを変える。 訓練systemsの設計が最適化軌跡へ影響する段階に入っている。OP044 OP014 OP059 OP035

2. 並列化の分類

方式 分ける対象 主な通信・費用 比較上の注意
Data parallel / DDP サンプル、modelは複製 gradient集約 global batch増加で統計効率も変わる
ZeRO / FSDP optimizer state、gradient、parameter all-gather / reduce-scatter等 shardの段階・groupによってメモリと通信が変わる
Tensor parallel layer内部の行列演算 layerごとのcollective 小さいlocal行列と頻繁な通信が問題になる
Pipeline parallel layerのstage activation/gradient受け渡し bubble、microbatch、weight version
Context / sequence系並列 sequence軸等 attentionのK/V等 算法・frameworkごとに用語と分割対象が異なる
Expert parallel MoE expertとtoken routing all-to-all等 load balanceとactive/total parameterを区別
Local / 非同期訓練 学習軌跡・同期時刻 model差分の周期的集約 同じ目的でも更新則が変わる

上表はZeRO、FSDP、Megatron、GPipe、Ring Attention、DeepSeek-V3、 DiLoCoを比較して作った分類である。SY001 SY004 SY006 SY002 SY013 SY014 OP033

用語の注意。 一般的なdata parallelismと、frameworkのDataParallel classは同じ抽象度ではない。 DDPは一般にreplicaのgradientを同期するが、「parameterやbufferの通信が一切ない」という意味ではない。 FSDPも常に全device間で同じようにshardするわけではなく、hybrid group構成を持てる。 旧メモの短い対比を、すべての設定に成り立つ通信仕様として読まない。SY004 SY005

3. Device meshとbatchの数え方

既存TorchTitanメモの4次元mesh例は構成の一例として読む。 独立な軸をDP・TP・PP・CPとした単純化では

\[N_{\mathrm{device}}=N_{\mathrm{DP}}N_{\mathrm{TP}}N_{\mathrm{PP}}N_{\mathrm{CP}}\]

と表せるが、expert並列のgroup共有やhybrid shardingなど実際のlayoutは構成依存である。 TPやPPのdevice数をglobal batchの倍率に数えないことが重要になる。 同じsampleの計算を分割しているだけだからである。 基本的なglobal sequence batchは、独立data replica数、各replicaのmicrobatch、 gradient accumulation回数の積で定まる。 token batchはさらにsequence length、packing、maskを含めて定義する。SY006 SY005

FSDPによってmicrobatchを増やせても、optimizerのCBSを超えると統計効率が悪化し得る。 逆に通信が律速なら大きいbatchの方が実時間を短縮できることがある。 このトレードオフは最適化章の大バッチ節で扱う。OP022 OP014

4. メモリ:state、activation、temporary bufferを別に測る

model parameter数を $P$、shard数を $N$ として、理想的なstate分割では 一部の常駐メモリは $O(P/N)$ になる。 しかしactivation、通信buffer、all-gather時の一時的parameter、matrix分解のworkspaceは 同じ比率では減らない。 したがって「optimizer stateが半分」や「全stateをshard」という説明だけで peak memoryを推定しない。ZeROのstate分類とFSDPの実装経験が出発点になる。SY001 SY004

activation checkpointingは中間値を捨てて再計算し、memoryとcomputeを交換する。 Chenらのsublinear memory研究はこの基本的な交換条件を示す。 保存対象、再計算範囲、RNG状態、numerical precisionの条件を記録する。 処理可能な最大モデルの拡張と、同じモデルのtime-to-target改善を分けて報告する。SY008

FlashAttentionはattentionの読み書きを減らすIO-awareな方法であり、 一般的なdense attentionの二次計算量をそのまま線形にした手法ではない。 Ring Attentionはblock計算とdevice間の通信を重ね、長いsequenceを分散処理する。 exact/approximate attention、メモリ使用量、演算量、wall-clockは別の軸である。SY009 SY013 2026年のFlashAttention-4等は基盤モデル章を参照。

5. 低精度訓練とmatrix optimizer

Mixed Precision Trainingは、低精度のforward/backward、より高精度のweight accumulation、 loss scalingを組み合わせた基礎文献である。 BF16、FP16、FP8は表現範囲と仮数精度が異なるため、 単にbit数だけを比較して「同じlow precision」と扱わない。SY007

DeepSeek-V3はMoEを含む大規模訓練とFP8等のsystem設計の実例として重要である。 本稿で直接確認したのは要旨・書誌であり、 細かなkernelや数値形式の仕様をこのサーベイだけで実装することは想定しない。 総parameter、active parameter、実行hardware、pretrainingとpost-trainingの費用を分けて technical report本文を読む必要がある。SY014

MuonのNSやShampooのmatrix rootは、訓練本体とは別に数値安定性を調べる必要がある。 行列をshardしたまま原算法を計算する方式と、 低rankや部分行を選択して更新を近似する方式は異なる。 Dion3のoptimizer-step高速化をend-to-end学習速度の倍率として引用しない。 再計算やall-gatherを含む全体時間で評価する。OP044 OP059 OP014

6. 2026年:低通信・非同期・故障への耐性

DiLoCoは局所学習を長く行って通信頻度を減らし、 Asynchronous Local-SGDはstalenessとouter momentumの問題を検討した。 2026年のDecoupled DiLoCoは独立learnerからの非同期集約をsystemとして扱う。 狙いは単純なpeak FLOPsではなく、障害や待機を含めた有効な訓練進捗である。OP033 OP034 OP035

比較条件 なぜ必要か
同じ到達loss / downstream評価 同じ時間でも学習量が異なる可能性
実機結果とsimulationの区別 大規模障害試験の証拠範囲が異なる
通信回数とbyte数の両方 圧縮と頻度削減を区別する
全workerの消費token / FLOPs 完了したglobal updateだけでは費用を過小評価
データ分割、sampling、token重み hardware heterogeneityが学習分布に影響し得る
障害率、復旧費用、checkpoint 定常状態のthroughputだけでは運用を表せない

LoRDOは低rank optimizerとinfrequent communicationを統合し、 IsoLoCoはmodel mergingの集約方法を利用する。 これらがDDPを普遍的に置き換えるという結論ではなく、 帯域・メモリ・worker数に応じて評価すべき研究選択肢が増えたと位置づける。OP068 OP067

7. 関連研究:weight averaging、task arithmetic、model merging

この分野は研究索引のTask Arithmeticと、既存SWA/多モーダル/OODの関心を接続する。 同じ訓練軌跡内のweight averaging、 同じ初期モデルからのfinetuned modelのmerging、 predictionsを平均するensembleは区別する。

Model soupsは共通pretrained modelからのfinetuning群を平均し、 推論時モデル数を増やさずaccuracyやrobustnessを改善する。 Task arithmeticはfinetuning差分をtask vectorとして加減する。 TIES-Mergingは小さい差分の除去と符号の競合解消を扱う。SY012 SY010 SY011

手法 結合するもの 主な条件・限界
SWA系 主に訓練軌跡のweight loss basinや評価状態に依存
Model soups 共通初期値からの複数model 任意の独立初期化を平均できるわけではない
Task arithmetic finetuning差分 task干渉、係数選択、評価対象
TIES sparsify・符号調整した差分 trimmingや集約方針への依存
IsoLoCo local trainingのpseudo-gradient 時間方向の反復学習を含む別の設定

SWAの原典と学習ダイナミクスは数理章で扱う。 mergingの公平性やOOD性能は、平均accuracyだけでは結論が出ない。 既存索引に記された個別プロジェクトの採択状況や未公開成果については、 この一般的な文献史から推測して補完していない。SY012 SY010 OP067

8. 研究上の空白と読む順序

以下は文献を横断した提案である。

  1. matrix optimizerで改善するsample効率が、sharding・低precision・通信を含めても残るかを測る。
  2. batch・local step・precision・meshを同時に変えず、寄与を分離する。
  3. 同一FLOPs、同一token、同一時間、同一targetの比較を使い分ける。
  4. model mergingで得られる平均性能の改善と、subgroup/OOD性能の変化を同時に調べる。
  5. 論文のhardware構成と異なる環境で、最大速度の倍率をそのまま再利用しない。

読む順序は ZeRO → FSDP → GPipe/PipeDream → Megatron 2019/2021 → TorchTitan → FlashAttention/Ring Attention → Dion/分散Muon-SOAP → Decoupled DiLoCo。 weight averagingの枝は Model soups → Task arithmetic → TIES → IsoLoCo と辿ると、 「なぜ学習済みmodelを結合するのか」と「なぜ分散訓練へ戻ってくるのか」が追いやすい。

参考文献

SY文献は要旨・書誌確認。本文中のOP番号は最適化章の参考文献 および統合参考文献を参照。