Parallel processing 并行化依赖于随机梯度下降的ML模型?

Parallel processing 并行化依赖于随机梯度下降的ML模型?,parallel-processing,nlp,word2vec,Parallel Processing,Nlp,Word2vec,我一直在阅读不同的NLP模型,如word2vec和GloVe,以及如何将它们并行化,因为它们大多只是点产品。然而,我对此有点困惑,因为计算梯度&更新模型取决于参数/向量的当前值。这是如何并行/异步完成的?您如何知道何时使用每个线程随机计算的梯度来更新全局参数?一般来说,在节点之间使用一些延迟/漂移近似地执行所有操作不会造成太大的影响。早期的两篇关键论文是: HOGWILD!:一种无锁的并行化方法 “随机梯度下降” 本杰明·雷克特、克里斯托弗·瑞、斯蒂芬·赖特、冯牛 摘要:随机梯度下降(SGD)

我一直在阅读不同的NLP模型,如word2vec和GloVe,以及如何将它们并行化,因为它们大多只是点产品。然而,我对此有点困惑,因为计算梯度&更新模型取决于参数/向量的当前值。这是如何并行/异步完成的?您如何知道何时使用每个线程随机计算的梯度来更新全局参数?

一般来说,在节点之间使用一些延迟/漂移近似地执行所有操作不会造成太大的影响。早期的两篇关键论文是:

HOGWILD!:一种无锁的并行化方法 “随机梯度下降”

本杰明·雷克特、克里斯托弗·瑞、斯蒂芬·赖特、冯牛

摘要:随机梯度下降(SGD)是一种流行的算法 可以在各种机器上实现最先进的性能 学习任务。一些研究人员最近提出了一些解决方案 并行化SGD,但都需要性能灾难性内存锁定 和同步。这项工作的目的是显示使用新的理论 SGD可以实现的分析、算法和实现 没有任何锁定。我们提出了一个名为HOGWILD的更新方案!哪一个 允许处理器访问共享内存,并可能 覆盖彼此的工作。我们证明了当关联的 优化问题是稀疏的,这意味着大多数梯度只更新 修改决策变量的小部分,然后HOGWILD!达到 近似最优收敛速度。我们通过实验证明 霍格威德!优于使用顺序锁定的替代方案 数量级

“大规模分布式深度网络”

Jeffrey Dean、Greg Corrado、Rajat Monga、Kai Chen、Matthieu Devin、Mark Mao、Marc'aurelio Ranzato、Andrew Senior、Paul Tucker、Ke Yang、Quoc Le、Andrew Ng

最近在无监督特征学习和深度学习方面的工作已经完成 表明能够训练大型模型可以显著提高 演出在本文中,我们考虑了一个深层次的训练问题。 使用数万CPU的数十亿参数网络 核心。我们已经开发了一个软件框架,名为dist 可以利用拥有数千台机器的计算集群进行培训 大型模型。在此框架内,我们开发了两种算法 对于大规模分布式培训:(i)倾盆大雨SGD 支持大样本的异步随机梯度下降算法 模型副本的数量,以及(ii)Sandblaster,一个 支持多种分布式批量优化程序, 包括L-BFGS的分布式实现。倾盆大雨 喷砂机L-BFGS可提高深层网络的规模和速度 训练。我们已经成功地使用我们的系统来训练深层网络 比文献中先前报道的要大100倍,并且达到 在视觉对象识别系统ImageNet上的最先进性能 具有1600万张图像和21k个类别的任务。我们证明了这些 同样的技术极大地加速了一个更具挑战性的团队的训练 用于商业语音识别的中等规模深度网络 服务尽管我们关注并报告了这些方法的性能 当应用于训练大型神经网络时,底层 算法适用于任何基于梯度的机器学习 算法


哇,这个Andrew Ng家伙真的走开了,不是吗?