分布式学习(Distributed Learning)是一种广泛应用的大规模模型训练框架。在分布式学习框架中,服务器通过聚合在分布式设备中训练的本地模型(local model)来利用各个设备的计算能力。分布式机器学习的典型架构——参数服务器架构中,包括一个服务器(称为参数服务器 - Parameter Server,PS)和多个计算节点(workers,也称为节点 nodes)[1]。其中,随机梯度下降(Stochastic Gradient Descent,SGD)是一种广泛使用的、效果较好的分布式优化算法。在每一轮中,每个计算节点根据不同的本地数据集在它的设备上训练一个本地模型,并与服务器共享最终的参数。然后,服务器聚合不同计算节点的参数,并通过与计算节点共享得到的组合参数来启动下一轮训练。关于基于 SGD 优化的分布式框架的网络结构(包括:层数、类型、大小等)在训练开始之前由所有计算节点共同商定确认。