总结:Large Scale Distributed Deep Networks


其中的并行思想有两部分:

1. 通过model parallel实现多个machine训练单个模型

2.通过复制 1 中训练的单个模型, 异步训练不同的数据集(data parallel)


详解上面两种思想的实现:

1.model parallel:将整个神经网络的的神经元划分到不同的机器上,只有处于机器边际的节点间才通过通信交换数据。



2.data parallel: 复制上图中构建的model,将数据集分成几小块,分别在这些model中训练。这里讲涉及到model parameters的共享问题。这里只记录了Downpour SGD算法。


如上图:model的参数都存放在parameter server,各个model replicas从parameter server对应的shard中获取参数,并将其计算的gradient推送到parameter server对应的shard。

这个,每个model replicas是相互独立的,而parameter server中的每个shard也是相互独立的。

此算法的“随机性”体现在一下几个方面:

1.因为model replicas是相互独立的,某个model replicas获取的参数可能已经过期(在其获取参数的同时,可能另一个model replicas对这些参数进行了更新)。

2.因为parameter server中的每个shards是相互独立的,每个shard更新的次数和顺序都可能不一样。

3.因为获取参数,推送梯度和处理训练数据集是由不同的线程进行执行的,所以存在时间戳。



此并行算法强调的是“异步”,其好处有:

1.避免了由于机器间性能的差异导致所有机器要等待最慢机器的问题。

2.及时某些machine down了,整个训练依然可以进行。

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值