带多数投票的 signSGD 具有通信高效性与容错性
分布式、并行与集群计算
2019-02-26 v3 人工智能
机器学习
摘要
在大型数据集上训练神经网络可通过将工作负载分布到机器网络上来加速。随着数据集不断增大,由数百或数千台机器组成的网络在经济上变得可行。通信梯度的时间成本限制了使用如此多机器数量的有效性,网络故障概率的增加也可能带来限制。我们探索了一种特别简单的鲁棒、通信高效学习算法——signSGD。工作节点仅将其梯度向量的符号传输给服务器,总体更新由多数投票决定。该算法每次迭代的通信量比全精度分布式 SGD 少 。在经实验验证的自然条件下,我们证明了 signSGD 在大批和小批设置下均收敛,并作为副产品建立了 Adam 某一参数区间的收敛性。通过多数投票聚合符号梯度意味着没有任何单个工作节点拥有过大权力。我们证明,与 SGD 不同,当多达 50% 的工作节点表现出对抗行为时,多数投票仍是鲁棒的。我们所考虑的对抗者类别将反转或随机化其梯度估计的情况作为特例包含在内。在实践方面,我们在 Pytorch 中构建了分布式训练系统。与使用最先进的集合通信库 (NCCL) 进行基准测试时,我们的框架——参数服务器完全驻留于单台机器——在利用 15 台 AWS p3.2xlarge 机器训练 Imagenet 上的 resnet50 时,训练时间减少了 25%。
引用
@article{arxiv.1810.05291,
title = {signSGD with Majority Vote is Communication Efficient And Fault Tolerant},
author = {Jeremy Bernstein and Jiawei Zhao and Kamyar Azizzadenesheli and Anima Anandkumar},
journal= {arXiv preprint arXiv:1810.05291},
year = {2019}
}