中文

利用图分析进行嵌入的分布式训练

机器学习 2020-02-25 v2 计算与语言 分布式、并行与集群计算 机器学习

摘要

当今许多应用,如自然语言处理(NLP)、网络分析与代码分析,都依赖于将对象语义嵌入到低维定长向量中。此类嵌入自然提供了一种执行有用下游任务的方式,例如识别对象间关系或为给定上下文预测对象等。不幸的是,准确嵌入所需的训练通常计算密集且需处理大量数据。此外,该训练的分布式化颇具挑战。大多数嵌入训练使用随机梯度下降(SGD),一种“固有”顺序算法。先前并行化SGD的方法未尊重这些依赖关系,因此可能遭遇较差收敛。本文提出一类使用类Skip-gram模型生成嵌入的应用的分布式训练框架。我们称此类为Any2Vec,其包含Word2Vec、DeepWalk与Node2Vec等。我们首先将Any2Vec训练算法表述为图应用,并利用最先进的分布式图分析框架D-Galois。我们改造D-Galois以支持动态图生成与重分区,并引入新颖的通信优化。最后,我们提出一种在分布式训练中组合梯度的新方法以防止精度损失。我们展示了我们的框架(称为GraphAny2Vec)在32台主机集群上匹配了Word2Vec与Vertex2Vec的先进共享内存实现在1台主机上的精度,并分别给出12倍与5倍的几何平均加速比。此外,GraphAny2Vec在32台主机上平均比先进的分布式Word2Vec实现DMTK快2倍。我们还通过将我们的梯度组合器(Gradient Combiner)融入DMTK表明了其独立于GraphAny2Vec的优越性,这使DMTK精度提升>30%。

关键词

引用

@article{arxiv.1909.03359,
  title  = {Distributed Training of Embeddings using Graph Analytics},
  author = {Gurbinder Gill and Roshan Dathathri and Saeed Maleki and Madan Musuvathi and Todd Mytkowicz and Olli Saarikivi},
  journal= {arXiv preprint arXiv:1909.03359},
  year   = {2020}
}