广州Python培训
达内广州Python培训中心

18087159764

热门课程

分布式控制深度学习培训提供10倍的性能提升

  • 时间:2018-05-14 17:42
  • 发布:达内新闻
  • 来源:达内新闻

经验证据证明,在特定配置下,分散式方法可以使集中方法的性能提升10倍,而不会增加复杂性。监督机器学习通常包括两个阶段:1)训练(建立模型)和2)推理(使用模型进行预测)。训练阶段包括寻找模型参数的最优值,以使一组训练样例的误差最小化,并且该模型推广到新数据。有几种算法可以找到模型参数的最优值(训练成本与模型精度),但是,在各种风味中,渐变式样是最受欢迎的。

在最简单的形式中,梯度下降是一种连续调整模型参数的连续算法,因此对于大型数据集而言,这种算法过于昂贵。随机梯度下降(SGD)是一种计算简化,它以随机顺序循环遍历训练样本,以达到最优参数值(收敛)。实际上,SGD是大多数深度学习框架模型培训中使用的实际优化方法。加快解决SGD问题有助于降低培训成本,提高整体用户体验,是深度学习领域的重要研究领域之一。

并行随机梯度下降(PSGD)是通过使用多个梯度计算“工作人员”来并行化SGD算法的一种方法.PSGD方法基于分布式计算范例,并且直到最近才以集中式配置安排实施涉及一致读取和更新模型参数的挑战。在这种配置中,从概念上讲,有一个负责同步读取和更新的集中式“主”参数服务器。两种最常用的集中式PGSD方法是全部减少和异步SGD(ASGD)。

python培训

在过去的三年中,我一直在研究和研究基于全减法的方法,并为ASGD设计和测试了几种协议变体。这两种方法有独特的优点和缺点。全部减少方法具有可预测的收敛性,但是同步性很慢。基于ASGD的方法允许工作人员以不同的速度运行(没有同步),并且速度很快,但具有不可预测的收敛行为。在实践中,根据所采取的方法,您要么祈祷没有计算设备打嗝,因此all-reduce运行时间不是很糟糕; 或希望ASGD算法只会收敛,保持准确性与培训成本曲线的关系。两种方法基本相同 - 集中式配置。唯一的区别是在全部减少中,有一个版本的中央权重,在ASGD中有多个版本。无论如何,不幸的是,集中参数服务器成为单点故障和两者的运行时瓶颈。

那么显而易见的问题是,如果我们可以完全摆脱参数服务器并让每个工作人员以点对点的方式运行并最终达成共识呢?如果能够实现,它将极大地简化分布式深度学习系统设计- 不仅可以摆脱单点故障,还可以降低培训成本。但是,没有人知道这种分散式分布式方法是否会为复杂的优化问题(如深度学习培训)产生正确的结果。

令我们惊讶和高兴的是,我们发现我们的方法有效并且可以实现与传统SGD相似的收敛率。我们的解决方案已成功应用于跨不同类型工作负载的深度学习培训,并且很容易整合到各种开源框架中。该技术在缓慢的网络配置中工作得非常好,因为它涉及少量的握手消息。

上一篇:微软创建的AI可以读取文档有哪些功能?
下一篇:从人际交往中学习机器人的目标

马上预约三天免费体验课

姓名:

电话:

选择城市和中心
贵州省

广西省

海南省