---
title: "ZeRO 優化（ZeRO Optimization）"
slug: zero-optimization
language: zh-TW
source: https://aiterms.tw/terms/zero-optimization
updated_at: 2026-06-22
tags: [模型訓練, 最佳化, 神經網路, AI基礎]
ipas_term: false
---

# ZeRO 優化（ZeRO Optimization）

Microsoft 提出的分布式訓練優化技術，通過將梯度、優化器狀態和模型參數分片存儲在多個 GPU 上，大幅降低記憶體占用，支持訓練超大規模模型。

## 完整說明

ZeRO（Zero Redundancy Optimizer）是 Microsoft 開發的分布式深度學習優化框架，包括三個級別的優化策略。ZeRO 通過消除分布式訓練中的冗餘，使用分片（sharding）機制將模型參數、梯度和優化器狀態分散存儲在多個 GPU 上，而不是在每個 GPU 都複製完整副本。這大幅降低每個 GPU 的記憶體占用，使訓練超大規模模型成為可能。

## 常見問題

### 如何選擇合適的 ZeRO 級別？

選擇應基於硬體配置和模型大小。若模型適合單 GPU 但記憶體較緊張，ZeRO-1 足夠。若模型需要多 GPU 但無法單 GPU 訓練，ZeRO-2 通常夠用。若模型超大（超過多 GPU 總記憶體），需要 ZeRO-3。同時考慮網路延遲：高延遲環境應選擇低級別 ZeRO 以減少通信；低延遲環境可選高級別。DeepSpeed 提供了自動選擇工具，根據模型大小推薦級別。

### ZeRO 會增加多少通信開銷？

通信開銷與 ZeRO 級別和 GPU 數量有關。ZeRO-1 的額外通信主要是全聚集操作，約增加 25-50%（取決於實現）。ZeRO-2 類似。ZeRO-3 的通信更多，可能增加 2 倍或更多，因為需要頻繁獲取和丟棄參數。在高帶寬網路（如 100Gbps InfiniBand），開銷相對較小；在低帶寬網路（如 10Gbps Ethernet），開銷更明顯。應在目標硬體上實測。

### 在消費級 GPU 上使用 ZeRO 訓練超大模型可行嗎？

可行，但需要多個 GPU（如 8 個 V100 或 4 個 A100）和高速互聯（如 NVLink）。單個 GPU 無法通過 ZeRO 訓練超大模型，因為通信開銷和同步成本會導致訓練極其緩慢。多 GPU 情況下，結合 ZeRO-3、梯度累積、混合精度，可以在消費級集群上訓練 100 億級參數模型。對於超過此規模的模型，仍需專業級硬體和優化。

---

來源：https://aiterms.tw/terms/zero-optimization
快查頁：https://aiterms.tw/terms/zero-optimization
最後更新：2026/06/22
深度解說：https://aiterms.tw/learning/what-is-zero-optimization