DiLoCo

分类: 训练优化

DiLoCo

定义

分布式训练方法,将多个独立训练的模型(workers)通过低频聚合合并参数,大幅减少节点间通信频率,适合跨地域、低带宽的 commodity hardware 分布式训练。

数学形式

θglobalθglobal+ηouter1Kk=1KΔθk\theta_{\text{global}} \leftarrow \theta_{\text{global}} + \eta_{\text{outer}} \cdot \frac{1}{K}\sum_{k=1}^K \Delta\theta_k 每个 worker kk 独立跑 HH 步内循环更新(inner optimizer),然后只同步一次外层梯度 Δθk=θkθglobal\Delta\theta_k = \theta_k - \theta_{\text{global}}

核心要点

内循环(inner loop):每个 worker 独立在本地数据上训练多步(无通信)

外循环(outer loop):周期性聚合所有 worker 的参数差异(类 FedAvg 但频率更低)

通信频率降低 HH 倍(HH 通常为数百到数千步)

适用于 asynchronous / heterogeneous hardware 环境

代表工作

Douillard et al., 2023 — 原始 DiLoCo 论文(Google DeepMind)

MAGNET-BitNet — 使用 DiLoCo 聚合异构专家模型

相关概念

QAT — 同为在资源受限环境下高效训练的技术