AI・機械学習
上級

DeepSpeed ZeRO最適化(ディープスピードゼロサイテキカ)

Microsoft開発の大規模LLM学習フレームワーク。Zero Redundancy Optimizer(ZeRO)でモデル状態を分散・メモリ使用量を大幅削減。Stage 1〜3でパラメータ・勾配・オプティマイザ状態を段階的に分散管理する。

0 回閲覧
0 いいね
2026/6/6 更新
関連タグ
distributed-training
memory-optimization
deepspeed
llm-training
microsoft

DeepSpeed ZeRO最適化

DeepSpeedはMicrosoftが開発したオープンソースの大規模深層学習最適化ライブラリ。中核技術であるZeRO(Zero Redundancy Optimizer)は、データ並列学習における3種類の状態冗長を段階的に排除し、少ないGPUでも超大規模モデルを学習可能にする革新的アーキテクチャだ。

ZeRO Stageの仕組み

Stage 1では各GPUがオプティマイザ状態(Adam動作量・分散)の1/N分担を保持、最大4x削減。Stage 2はさらに勾配も分散し最大8x削減、Stage 3は全パラメータをGPU間で分割保持しN並列でNx削減。これにより64GPUなら理論上64倍のメモリ削減が可能だ。

ZeRO-Infinity とCPU/NVMeオフロード

2021年発表のZeRO-Infinityは、GPU VRAM不足をCPU RAMとNVMe SSDへのオフロードで補う技術。単一ノードでも数兆パラメータモデルの学習が理論上可能になる。実際にはNVMe帯域がボトルネックになるが、研究用プロトタイプ規模での利用実績がある。

Megatron-DeepSpeed統合

NVIDIAのMegatron-LMとDeepSpeedを組み合わせる「Megatron-DeepSpeed」は業界標準的な構成となっている。ZeROのデータ並列効率とMegatronのモデル・パイプライン並列を組み合わせることで、GPT-NeoX-20B、OPT-175B、Bloomなど著名な大規模モデルが学習された。

実用的なハイパーパラメータ

{
  "zero_optimization": {
    "stage": 3,
    "offload_optimizer": {"device": "cpu", "pin_memory": true},
    "offload_param": {"device": "cpu", "pin_memory": true},
    "overlap_comm": true,
    "contiguous_gradients": true,
    "sub_group_size": 1e9,
    "reduce_bucket_size": 1e6
  },
  "bf16": {"enabled": true},
  "gradient_clipping": 1.0
}

PyTorch FSDPとの比較

Meta開発のFSDPはPyTorchネイティブでZeRO Stage 3相当の機能を提供。DeepSpeedは機能が豊富(ZeRO-Infinity、MoE対応等)だが設定が複雑。FSDPはPyTorchエコシステムとの統合が優れ、LLaMA系モデルの学習で主流になりつつある。

2025年の動向

DeepSpeed 0.16.x系ではFlashAttentionとの統合強化、AMD ROCm対応が改善。MicrosoftはPhi-4シリーズの学習にDeepSpeedを使用しており、引き続き活発に開発が継続している。Hugging Face Transformersとのシームレスな統合(accelerate経由)も普及に貢献している。

この記事について
カテゴリーAI・機械学習
難易度上級
作成日2026/6/6