DistBelief
1 主要工作
模型并行、数据并行。
- Downpour SGD,异步随机梯度下降,适应性学习率,支持大规模模型副本。
- Sandblaster L-BFGS,L-BFGS(解释见最后)的分布式实现。
通过实验得到的几个关于大规模非凸优化的结论:
- 异步SGD,一般不会在非凸优化上使用,但在训练深度学习网络上表现很好,特别是和Adagrad适应性学习率方法结合起来时。
- 在资源足够的情况下,L-BFGS可以和很多SGD的变体相比可以更快。
2 模型并行
用户定义的计算发生在模型每一层的每一个节点上,消息随着计算的过程传递。对大的模型,用户可以将模型分到不同的机器上,所以模型不同节点的计算也就分配到不同的机器上。框架自动将每个机器上的计算并行起来,管理机器间的通信、同步、数据传输。
在多个机器间的深度网络的分布式计算的性能收益,取决于结构之间的连通性和模型对计算的需求。有着大规模参数、或者大量计算需求的模型,一般会从访问更多CPU和内存中获益。
3 分布式优化算法
DistBelief的目标不只是在模型的单个实例之间并行,但是要在多个模型实例之间进行分布式训练。Downpour SGD和Sandblaster L-BFGS使用一个中心化分片式参数服务器,模型副本使用它来共享参数。两个方法都利用了DistBelief在单个副本的分布式计算的优势。但是更重要地,两种方法都设计来