深神经网络(DNN)利用多层和大量参数来实现优异的性能。 DNN模型的培训过程通常处理具有许多稀疏功能的大规模输入数据,引起高输入/输出(IO)的成本,而一些层数是计算密集型的。培训过程通常利用分布式计算资源来减少培训时间。此外,异构计算资源,例如CPU,多种类型的GPU,可用于分布式训练过程。因此,多个层对不同计算资源的调度对于训练过程至关重要。为了使用异构计算资源有效地训练DNN模型,我们提出了一种分布式框架,即桨式异构参数服务器(Paddle-Heterps),由分布式架构和加强学习(RL)的调度方法组成。与现有框架相比,Paddle-Heterps的优点是三倍。首先,Paddle-hotior是通过异构计算资源的多样化工作负载的高效培训过程。其次,Paddle-Heterps利用基于RL的方法以有效地将每层的工作量调度到适当的计算资源,以最小化成本,同时满足吞吐量约束。第三,Paddle-hotips管理分布式计算资源之间的数据存储和数据通信。我们进行了广泛的实验,以表明Paddle-hotors在吞吐量方面显着优于最先进的方法(更高14.5倍)和货币成本(312.3%较小)。框架的代码可在:https://github.com/paddlepaddle/paddle公开使用。
translated by 谷歌翻译
近年来,最终用户的多个(边缘)设备中有大量分散数据,而由于法律或法规,分散数据的聚合对机器学习工作仍然困难。联合学习(FL)作为处理分散数据而不分享敏感原始数据的有效方法,同时协作培训全球机器学习模型。 FL中的服务器需要在培训过程中选择(和计划)设备。但是,具有FL的多个作业的设备的调度仍然是一个关键和打开的问题。在本文中,我们提出了一种新的多工作FL框架,以实现多个作业的并行培训过程。该框架包括系统模型和两个调度方法。在系统模型中,我们提出了多个作业的并行培训过程,并根据各种工作培训过程基于培训时间和各种设备的数据公平构建成本模型。我们提出了一种基于钢筋的基于学习的方法和基于贝叶斯优化的方法,以便为多个作业调度设备,同时最小化成本。我们通过多个工作和数据集进行广泛的实验。实验结果表明,我们提出的方法在培训时间(速度越快8.67倍)和准确性(高度高达44.6%)方面显着优于基线。
translated by 谷歌翻译
尽管更多的层和更多的参数通常提高了模型的准确性,但是这样的大型模型通常具有较高的计算复杂性,并且需要大记忆,这超过了小型设备进行推理的容量,并且会产生长时间的训练时间。此外,即使在高性能服务器中,也很难负担长期训练时间和大型模型的推理时间。作为将大型深层模型(教师模型)压缩为紧凑模型(学生模型)的有效方法,知识蒸馏是一种与大型模型打交道的有前途的方法。现有的知识蒸馏方法无法利用可用的弹性计算资源,并对应于低效率。在本文中,我们提出了一个用于知识蒸馏的弹性深度学习框架,即EDL-DIST。 EDL-DIST的优势是三倍。首先,推论和训练过程是分开的。其次,可以利用弹性可用的计算资源来提高效率。第三,支持训练和推理过程的故障耐受性。我们进行了广泛的实验,以表明EDL-DIST的吞吐量比基线方法(在线知识蒸馏)快3.125倍,而精度相似或更高。
translated by 谷歌翻译
BYTESCHEDULER分区和重新排列张测变速器,以提高分布式深神经网络(DNN)训练的通信效率。超参数的配置(即分区大小和信用尺寸)对于分区和重新排列的有效性至关重要。目前,Bytescheduler采用贝叶斯优化(BO)预先找到超级参数的最佳配置。然而,在实践中,各种运行时因子(例如,工人节点状态和网络条件)随着时间的推移而变化,使得静态确定的一拍配置结果次优为现实世界的DNN培训。为了解决这个问题,我们介绍了一个实时配置方法(称为autobyte),它自动并及时搜索最佳的超参数,因为培训系统动态地改变。 Autobyte将Bytescheduler框架与Meta网络扩展,将系统的运行时统计信息作为其输入,并在特定配置下的加速器输出预测。各种DNN模型的评估结果表明,Autobyte可以动态调整具有低资源使用率的超参数,并且比ByTescheduler中最好的静态配置提供高达33.2 \%的性能。
translated by 谷歌翻译
二阶优化方法,尤其是D-KFAC(分布式Kronecker近似曲率)算法,在加速GPU簇上加速了深神经网络(DNN)训练方面已获得了吸引力。但是,现有的D-KFAC算法需要计算和传达大量二阶信息,即Kronecker因素(KFS),在预处理梯度之前,导致大量计算和通信开销以及高存储器足迹。在本文中,我们提出了DP-KFAC,这是一种新颖的分布式预处理方案,该方案将不同DNN层的KF构造任务分配给不同的工人。 DP-KFAC不仅保留了现有D-KFAC算法的收敛性属性,而且还可以带来三个好处:减少计算开销在构造KFS中,没有KFS的通信和低内存足迹。在64-GPU群集上进行的广泛实验表明,DP-KFAC将开销的计算开销降低了1.55 x-1.65x,通信成本降低2.79x-3.15x,并且内存足迹在每秒二阶更新中降低1.14x-1.47 x与最先进的D-KFAC方法相比。
translated by 谷歌翻译
Deep learning based recommendation models (DLRM) are widely used in several business critical applications. Training such recommendation models efficiently is challenging primarily because they consist of billions of embedding-based parameters which are often stored remotely leading to significant overheads from embedding access. By profiling existing DLRM training, we observe that only 8.5% of the iteration time is spent in forward/backward pass while the remaining time is spent on embedding and model synchronization. Our key insight in this paper is that access to embeddings have a specific structure and pattern which can be used to accelerate training. We observe that embedding accesses are heavily skewed, with almost 1% of embeddings represent more than 92% of total accesses. Further, we observe that during training we can lookahead at future batches to determine exactly which embeddings will be needed at what iteration in the future. Based on these insight, we propose Bagpipe, a system for training deep recommendation models that uses caching and prefetching to overlap remote embedding accesses with the computation. We designed an Oracle Cacher, a new system component which uses our lookahead algorithm to generate optimal cache update decisions and provide strong consistency guarantees. Our experiments using three datasets and two models shows that our approach provides a speed up of up to 6.2x compared to state of the art baselines, while providing the same convergence and reproducibility guarantees as synchronous training.
translated by 谷歌翻译
图形神经网络(GNNS)将深度神经网络(DNN)的成功扩展到非欧几里德图数据,实现了各种任务的接地性能,例如节点分类和图形属性预测。尽管如此,现有系统效率低,培训数十亿节点和GPU的节点和边缘训练大图。主要瓶颈是准备GPU数据的过程 - 子图采样和特征检索。本文提出了一个分布式GNN培训系统的BGL,旨在解决一些关键思想的瓶颈。首先,我们提出了一种动态缓存引擎,以最小化特征检索流量。通过协同设计缓存政策和抽样顺序,我们发现低开销和高缓存命中率的精美斑点。其次,我们改善了曲线图分区算法,以减少子图采样期间的交叉分区通信。最后,仔细资源隔离减少了不同数据预处理阶段之间的争用。关于各种GNN模型和大图数据集的广泛实验表明,BGL平均明显优于现有的GNN训练系统20.68倍。
translated by 谷歌翻译
Graph neural networks (GNNs) have been demonstrated to be a powerful algorithmic model in broad application fields for their effectiveness in learning over graphs. To scale GNN training up for large-scale and ever-growing graphs, the most promising solution is distributed training which distributes the workload of training across multiple computing nodes. However, the workflows, computational patterns, communication patterns, and optimization techniques of distributed GNN training remain preliminarily understood. In this paper, we provide a comprehensive survey of distributed GNN training by investigating various optimization techniques used in distributed GNN training. First, distributed GNN training is classified into several categories according to their workflows. In addition, their computational patterns and communication patterns, as well as the optimization techniques proposed by recent work are introduced. Second, the software frameworks and hardware platforms of distributed GNN training are also introduced for a deeper understanding. Third, distributed GNN training is compared with distributed training of deep neural networks, emphasizing the uniqueness of distributed GNN training. Finally, interesting issues and opportunities in this field are discussed.
translated by 谷歌翻译
分布式培训已成为培训大型神经网络(NN)模型的普遍性和有效的方法,该模型加工大规模数据。然而,满足来自各种NN模型,多样化计算资源的要求以及在培训工作期间的动态变化是非常挑战的。在这项研究中,我们在系统的端到端视图中设计了我们的分布式训练框架,以提供不同场景的内置自适应能力,特别是对于工业应用和生产环境,通过完全考虑资源分配,模型分区,任务放置和分布式执行。基于统一的分布式图和统一群集对象,我们的自适应框架配备了全球成本模型和全局计划者,可以实现任意并行,资源感知的放置,多模式执行,容错和弹性分布式。训练。实验表明,我们的框架可以满足应用程序的多样性和资源的异质性满足各种要求和具有竞争力的性能。具有260亿参数的Ernie语言模型在数千个AI处理器上有效地培训,可扩展性较弱的91.7%。通过采用异质管道异步执行,从推荐系统的模型的吞吐量可以分别增加到2.1倍,仅增加了GPU和CPU培训的3.3倍。此外,容错和弹性分布式培训已成功应用于在线工业应用,这减少了长期培训工作的数量,增加了34.49%,并在全球调度效率增加了33.91%生产环境。
translated by 谷歌翻译
我们旨在通过引入全面的分布式深度学习(DDL)探索器来解决此问题,该研究人员可以确定DDL在公共云上运行时遭受的各种执行“失速”。我们已经通过扩展先前的工作来估算两种类型的通信失速 - 互连和网络摊位来实现剖面。我们使用Profiler培训流行的DNN模型来表征各种AWS GPU实例,并列出了用户做出明智决定的优势和缺点。我们观察到,较昂贵的GPU实例可能不是所有DNN型号的性能最多,并且AWS可能会在次优的硬件互连资源分配次优。具体而言,与单个实例的培训相比,机内互连可以引入高达90%的DNN培训时间和网络连接的实例的通信开销,而与网络连接的实例可能会遭受高达5倍的速度。此外,我们对DNN宏观特征的影响进行建模,例如层的数量和通信摊位上的梯度数量。最后,我们为用户提出了一个基于衡量的建议模型,以降低DDL的公共云货币成本。
translated by 谷歌翻译
TensorFlow is a machine learning system that operates at large scale and in heterogeneous environments. Tensor-Flow uses dataflow graphs to represent computation, shared state, and the operations that mutate that state. It maps the nodes of a dataflow graph across many machines in a cluster, and within a machine across multiple computational devices, including multicore CPUs, generalpurpose GPUs, and custom-designed ASICs known as Tensor Processing Units (TPUs). This architecture gives flexibility to the application developer: whereas in previous "parameter server" designs the management of shared state is built into the system, TensorFlow enables developers to experiment with novel optimizations and training algorithms. TensorFlow supports a variety of applications, with a focus on training and inference on deep neural networks. Several Google services use TensorFlow in production, we have released it as an open-source project, and it has become widely used for machine learning research. In this paper, we describe the TensorFlow dataflow model and demonstrate the compelling performance that Tensor-Flow achieves for several real-world applications.
translated by 谷歌翻译
基于深度学习的模型占主导地位的生产推荐系统的当前景观。此外,近年来目睹了模型规模的指数增长 - 从谷歌的2016年模型,最新的Facebook的型号有10亿个参数,具有12万亿参数。型号容量的每次跳跃都有显着的质量增强,这使我们相信100万亿参数的时代即将来临。然而,即使在工业规模数据中心内,这些模型的培训也在挑战。这种困难是从训练计算的惊人的异质性继承 - 模型的嵌入层可以包括总模型尺寸的99.99%,这是极其内存密集的;虽然其余的神经网络越来越多地计算密集型。为支持培训此类巨大模式,迫切需要有效的分布式培训系统。在本文中,我们通过仔细共同设计优化算法和分布式系统架构来解决这一挑战。具体而言,为了确保培训效率和训练精度,我们设计一种新型混合训练算法,其中嵌入层和密集的神经网络由不同的同步机制处理;然后,我们构建一个名为Persia的系统(短暂的并行推荐培训系统,其中包含混合加速),以支持这种混合培训算法。理论上的示范和实证研究均达到100万亿参数,以证明了波斯的系统设计和实施。我们将Pensia公开使用(在https://github.com/persiamml/persia),以便任何人都能够以100万亿参数的规模轻松培训推荐模型。
translated by 谷歌翻译
培训深神经网络(DNNS)在企业和云数据中心都广受欢迎。现有的DNN培训调度程序将GPU视为主要资源,并分配其他资源,例如CPU和内存与作业要求的GPU数量成正比。不幸的是,这些调度程序不考虑作业对CPU,内存和存储资源分配的敏感性的影响。在这项工作中,我们提出了Synergy,这是一种对共享GPU群集的资源敏感调度程序。通过乐观的分析,协同作用侵犯了DNN对不同资源的敏感性;某些工作可能会从GPU育儿分配中受益更多,而某些工作可能不会受到GPU育儿分配的影响。 Synergy使用新的近乎最佳的在线算法在共享的多租户集群上安排的一组作业进行了多余的工作量感知作业。我们的实验表明,与传统的GPU育儿计划相比,工作量感知的CPU和内存分配可以提高平均JCT高达3.4倍。
translated by 谷歌翻译
培训尺寸培训大型深度学习模型非常具有挑战性。本文提出了一种新型管道并行方案,该方案结合了双向管道,以有效地训练大规模模型。嵌合体是一种同步方法,因此不会损失精度,比异步方法更加融合。与最新的同步管道方法相比,嵌合体将气泡的数量降低至50%;受益于双向管道的复杂调度,嵌合体具有更平衡的激活记忆消耗。评估是在基于变压器的语言模型上进行的。对于在PIZ Daint超级计算机的2,048个GPU节点上运行的GPT-2模型,Chimera通过最先进的同步和异步管道方法将培训吞吐量提高了1.16x-2.34x。
translated by 谷歌翻译
Video, as a key driver in the global explosion of digital information, can create tremendous benefits for human society. Governments and enterprises are deploying innumerable cameras for a variety of applications, e.g., law enforcement, emergency management, traffic control, and security surveillance, all facilitated by video analytics (VA). This trend is spurred by the rapid advancement of deep learning (DL), which enables more precise models for object classification, detection, and tracking. Meanwhile, with the proliferation of Internet-connected devices, massive amounts of data are generated daily, overwhelming the cloud. Edge computing, an emerging paradigm that moves workloads and services from the network core to the network edge, has been widely recognized as a promising solution. The resulting new intersection, edge video analytics (EVA), begins to attract widespread attention. Nevertheless, only a few loosely-related surveys exist on this topic. A dedicated venue for collecting and summarizing the latest advances of EVA is highly desired by the community. Besides, the basic concepts of EVA (e.g., definition, architectures, etc.) are ambiguous and neglected by these surveys due to the rapid development of this domain. A thorough clarification is needed to facilitate a consensus on these concepts. To fill in these gaps, we conduct a comprehensive survey of the recent efforts on EVA. In this paper, we first review the fundamentals of edge computing, followed by an overview of VA. The EVA system and its enabling techniques are discussed next. In addition, we introduce prevalent frameworks and datasets to aid future researchers in the development of EVA systems. Finally, we discuss existing challenges and foresee future research directions. We believe this survey will help readers comprehend the relationship between VA and edge computing, and spark new ideas on EVA.
translated by 谷歌翻译
在过去的十年中,深度神经网络(DNNS)的规模成倍增长,只剩下那些具有大量基于数据中心的资源的人具有开发和培训此类模型的能力。对于可能只有有限的资源(例如,单个多GPU服务器)的研究人员的长尾巴的主要挑战之一是GPU内存能力与模型大小相比。问题是如此严重,以至于训练大规模DNN模型的内存需求通常可以超过单个服务器上所有可用GPU的总容量;这个问题只会随着不断增长的模型大小的趋势而变得更糟。当前依赖于虚拟化GPU内存的解决方案(通过向CPU内存交换/从CPU内存)会产生过多的交换开销。在本文中,我们提出了一个新的培训框架,和谐和倡导者,重新思考了DNN框架如何安排计算并移动数据以在单个商品服务器上有效地推动培训大规模模型的边界。在各种大型DNN模型中,Harmony能够将交换负载最多减少两个数量级,并在具有虚拟化内存的高度优化基线上获得高达7.6倍的训练吞吐量加速。
translated by 谷歌翻译
CNN-based surrogates have become prevalent in scientific applications to replace conventional time-consuming physical approaches. Although these surrogates can yield satisfactory results with significantly lower computation costs over small training datasets, our benchmarking results show that data-loading overhead becomes the major performance bottleneck when training surrogates with large datasets. In practice, surrogates are usually trained with high-resolution scientific data, which can easily reach the terabyte scale. Several state-of-the-art data loaders are proposed to improve the loading throughput in general CNN training; however, they are sub-optimal when applied to the surrogate training. In this work, we propose SOLAR, a surrogate data loader, that can ultimately increase loading throughput during the training. It leverages our three key observations during the benchmarking and contains three novel designs. Specifically, SOLAR first generates a pre-determined shuffled index list and accordingly optimizes the global access order and the buffer eviction scheme to maximize the data reuse and the buffer hit rate. It then proposes a tradeoff between lightweight computational imbalance and heavyweight loading workload imbalance to speed up the overall training. It finally optimizes its data access pattern with HDF5 to achieve a better parallel I/O throughput. Our evaluation with three scientific surrogates and 32 GPUs illustrates that SOLAR can achieve up to 24.4X speedup over PyTorch Data Loader and 3.52X speedup over state-of-the-art data loaders.
translated by 谷歌翻译
分布式数据并行训练已被广泛用于深神经网络(DNN)模型。尽管当前的深度学习(DL)框架对于图像分类模型(例如图像分类模型)的密集模型很好地扩展了,但我们发现这些DL框架对于具有高度稀疏嵌入表的稀疏模型(NLP)模型(NLP)模型(NLP)模型具有相对较低的可扩展性。大多数现有作品忽略了模型参数的稀疏性,因此遭受了重要但不必要的沟通开销。在本文中,我们提出了Ablace,这是一个有效的沟通框架,以加快稀疏模型分布式培训的通信。 Embrace引入了稀疏感知的混合通信,将AlltoAll和模型并行置于数据并行训练中,以减少高度稀疏参数的交流开销。为了有效地重叠稀疏的通信与后向前和前向计算,采用进一步设计的2D通信调度方法,该方法优化了模型计算过程,放松嵌入式的依赖性,并计划以优先级的排队来安排每个嵌入行的稀疏通信。我们已经基于Pytorch和Horovod实施了Embrace的原型,并通过四个代表性的NLP模型进行了全面的评估。实验结果表明,与最先进的分布式训练基线相比,Embrace的速度高达2.41倍。
translated by 谷歌翻译
模型大小的范围不断增加,并且持续改进性能使大型模型时代的到来的到来。在本报告中,我们通过潜入培训目标和培训方法来探讨大型模型培训如何运作。具体而言,培训目标描述了如何利用Web规模数据来开发基于自我监督的学习以及基于分布式培训的培训方法,开发出极强的大型模型,描述了如何使大型模型培训成为现实。我们将现有的培训方法总结为三个主要类别:训练并行性,节省记忆技术和模型稀疏设计。训练并行性可以根据发生的并行性维度分类为数据,管道和张量并行性。节省记忆的技术是正交的,并且与训练并行性互补。和模型稀疏设计以恒定的计算成本进一步扩大模型大小。在https://github.com/qhliu26/bm-training提供了不断更新的大型模型培训清单。
translated by 谷歌翻译
我们设计了一个用户友好且可扩展的知识图构建(KGC)系统,用于从非结构化语料库中提取结构化知识。与现有的KGC系统不同,Gbuilder提供了一种灵活且用户定义的管道,可以包含IE模型的快速开发。可以使用更多基于内置的模板或启发式操作员和可编程操作员来适应来自不同域的数据。此外,我们还为Gbuilder设计了基于云的自适应任务计划,以确保其在大规模知识图构造上的可扩展性。实验评估不仅证明了Gbuilder在统一平台中组织多个信息提取模型的能力,还证实了其在大规模KGC任务上的高可扩展性。
translated by 谷歌翻译