多芯片芯片模块(MCM),而票面上提供性能和能效的单片大芯片减少了机器学习(ML)加速器的设计和制造成本。然而,统计MCM的ML编译器需要最佳,有效地解决复杂的优化问题,以实现这种高性能。其中一个问题是多芯片分割问题,在编译器确定在小芯片的MCM张计算图形操作的最佳分配和安置。作为搜索空间可用芯片的数目和节点的神经网络在数量呈指数级增长分区ML图形的多芯片模块是特别难。此外,由底层硬件施加的约束产生了一个有效解决方案非常稀疏的搜索空间。在本文中,我们提出使用深强化学习(RL)框架来发出可能无效分区候选人,然后由约束求解修正的策略。使用约束求解器可确保RL遇到稀疏空间中的有效解决方案,其经常足以与未经学习的策略相比较少的样本收敛。我们为策略网络制作的架构选择允许我们拓展不同的ML图形。我们的生产规模的模型,BERT,在真实的硬件的评估表明,使用RL政策所产生的分区达到6.11%和5.85%,比吞吐量随机搜索和模拟退火更高。此外,微调预训练RL政策减少了3小时至只有9分钟的搜索时间,同时实现了相同的吞吐量从头训练RL政策。
translated by 谷歌翻译
组合优化是运营研究和计算机科学领域的一个公认领域。直到最近,它的方法一直集中在孤立地解决问题实例,而忽略了它们通常源于实践中的相关数据分布。但是,近年来,人们对使用机器学习,尤其是图形神经网络(GNN)的兴趣激增,作为组合任务的关键构件,直接作为求解器或通过增强确切的求解器。GNN的电感偏差有效地编码了组合和关系输入,因为它们对排列和对输入稀疏性的意识的不变性。本文介绍了对这个新兴领域的最新主要进步的概念回顾,旨在优化和机器学习研究人员。
translated by 谷歌翻译
组合优化的神经方法(CO)配备了一种学习机制,以发现解决复杂现实世界问题的强大启发式方法。尽管出现了能够在单一镜头中使用高质量解决方案的神经方法,但最先进的方法通常无法充分利用他们可用的解决时间。相比之下,手工制作的启发式方法可以很好地执行高效的搜索并利用给他们的计算时间,但包含启发式方法,这些启发式方法很难适应要解决的数据集。为了为神经CO方法提供强大的搜索程序,我们提出了模拟引导的光束搜索(SGB),该搜索(SGB)在固定宽度的树搜索中检查了候选解决方案,既是神经网络学习的政策又是模拟(推出)确定有希望的。我们将SGB与有效的主动搜索(EAS)进一步融合,其中SGB提高了EAS中反向传播的解决方案的质量,EAS提高了SGB中使用的策略的质量。我们评估了有关众所周知的CO基准的方法,并表明SGB可显着提高在合理的运行时假设下发现的解决方案的质量。
translated by 谷歌翻译
计算机架构和系统已优化了很长时间,以便高效执行机器学习(ML)模型。现在,是时候重新考虑ML和系统之间的关系,并让ML转换计算机架构和系统的设计方式。这有一个双重含义:改善设计师的生产力,以及完成良性周期。在这篇论文中,我们对应用ML进行计算机架构和系统设计的工作进行了全面的审查。首先,我们考虑ML技术在架构/系统设计中的典型作用,即快速预测建模或设计方法,我们执行高级分类学。然后,我们总结了通过ML技术解决的计算机架构/系统设计中的常见问题,并且所用典型的ML技术来解决它们中的每一个。除了在狭义中强调计算机架构外,我们采用数据中心可被认为是仓库规模计算机的概念;粗略的计算机系统中提供粗略讨论,例如代码生成和编译器;我们还注意ML技术如何帮助和改造设计自动化。我们进一步提供了对机会和潜在方向的未来愿景,并设想应用ML的计算机架构和系统将在社区中蓬勃发展。
translated by 谷歌翻译
This paper surveys the recent attempts, both from the machine learning and operations research communities, at leveraging machine learning to solve combinatorial optimization problems. Given the hard nature of these problems, state-of-the-art algorithms rely on handcrafted heuristics for making decisions that are otherwise too expensive to compute or mathematically not well defined. Thus, machine learning looks like a natural candidate to make such decisions in a more principled and optimized way. We advocate for pushing further the integration of machine learning and combinatorial optimization and detail a methodology to do so. A main point of the paper is seeing generic optimization problems as data points and inquiring what is the relevant distribution of problems to use for learning on a given task.
translated by 谷歌翻译
用于图形组合优化问题的神经网络溶剂的端到端培训,例如旅行销售人员问题(TSP)最近看到了感兴趣的激增,但在几百节节点的图表中保持棘手和效率低下。虽然最先进的学习驱动的方法对于TSP在培训的古典索引时与古典求解器密切相关,但它们无法通过实际尺度的实际情况概括到更大的情况。这项工作提出了一个端到端的神经组合优化流水线,统一几个卷纸,以确定促进比在训练中看到的实例的概括的归纳偏差,模型架构和学习算法。我们的受控实验提供了第一个原则上调查这种零拍摄的概括,揭示了超越训练数据的推断需要重新思考从网络层和学习范例到评估协议的神经组合优化流水线。此外,我们分析了深入学习的最近进步,通过管道的镜头路由问题,并提供新的方向,以刺激未来的研究。
translated by 谷歌翻译
回溯搜索算法通常用于解决约束满足问题(CSP)。回溯搜索的效率在很大程度上取决于可变排序启发式。目前,最常用的启发式是根据专家知识进行手工制作的。在本文中,我们提出了一种基于深度的加强学习方法,可以自动发现新的变量订购启发式,更好地适用于给定类CSP实例。我们显示,直接优化搜索成本很难用于自动启动,并建议优化在搜索树中到达叶节点的预期成本。为了捕获变量和约束之间的复杂关系,我们设计基于图形神经网络的表示方案,可以处理具有不同大小和约束的CSP实例。随机CSP实例上的实验结果表明,学习的政策在最小化搜索树大小的方面优于古典手工制作的启发式,并且可以有效地推广到比训练中使用的实例。
translated by 谷歌翻译
我们提出了一个通用图形神经网络体系结构,可以作为任何约束满意度问题(CSP)作为末端2端搜索启发式训练。我们的体系结构可以通过政策梯度下降进行无监督的培训,以纯粹的数据驱动方式为任何CSP生成问题的特定启发式方法。该方法基于CSP的新型图表,既是通用又紧凑的,并且使我们能够使用一个GNN处理所有可能的CSP实例,而不管有限的Arity,关系或域大小。与以前的基于RL的方法不同,我们在全局搜索动作空间上运行,并允许我们的GNN在随机搜索的每个步骤中修改任何数量的变量。这使我们的方法能够正确利用GNN的固有并行性。我们进行了彻底的经验评估,从随机数据(包括图形着色,Maxcut,3-SAT和Max-K-Sat)中学习启发式和重要的CSP。我们的方法表现优于先验的神经组合优化的方法。它可以在测试实例上与常规搜索启发式竞争,甚至可以改善几个数量级,结构上比训练中看到的数量级更为复杂。
translated by 谷歌翻译
近年来,在平衡(超级)图分配算法的设计和评估中取得了重大进展。我们调查了过去十年的实用算法的趋势,用于平衡(超级)图形分区以及未来的研究方向。我们的工作是对先前有关该主题的调查的更新。特别是,该调查还通过涵盖了超图形分区和流算法来扩展先前的调查,并额外关注并行算法。
translated by 谷歌翻译
ALPA通过生成统一数据,操作员和管道并行性的执行计划来自动对大型深度学习(DL)模型的模型平行训练。现有的模型并行训练系统要求用户手动创建并行化计划,或者自动从有限的模型并行性配置中生成一个计划。它们不足以在分布式计算设备上扩展复杂的DL模型。 ALPA通过将并行性视为两个层次级别来分配大型DL模型的训练:操作员和操作员并行性。基于它,ALPA构建了一个新的分层空间,用于大规模的模型并行执行计划。 ALPA设计了许多汇编,以在每个并行性级别自动得出有效的并行执行计划。 ALPA实现了有效的运行时,以在分布式计算设备上协调两级并行执行。我们的评估表明,ALPA生成的并行化计划,即使在其设计的型号上,也可以匹配或超过手动模型并联训练系统。与专业系统不同,ALPA还推广到具有异质体系结构和模型的模型,而没有手动设计的计划。 ALPA的源代码可在https://github.com/alpa-projects/alpa上公开获得
translated by 谷歌翻译
大型ML型号和数据集已经需要使用多GPU系统进行分布式模型培训。为了利用多GPU系统提供的权力,消除GPU间通信中的瓶颈至关重要 - 互连异构性质的问题挑战。在这项工作中,我们呈现TACCL,这是用于大规模多GPU系统的集体通信原语的合成器。 TACCL将异形拓扑和输入大小进行编码为合成问题,以生成优化的通信算法。 TACCL建立在标准的NVIDIA集体通信库(NCCL)之上,允许它成为PYTORCH等框架中GPU通信的替代品,具有最小的变化。 TACCL为全球,AllToAll和ALLERDUCE等通信基元生成算法,该算法高达3美元的速度超过NCCL。使用TACCL的算法加快了专家模型内部混合物的端到端培训,以17 \%$。通过将优化问题分解成零件并利用多GPU拓扑中的对称性,TACCL在不到3分钟内合成高达80-GPU的集体,比其他基于综合的状态快至少两个数量级 - 艺术集体通信图书馆。
translated by 谷歌翻译
随着智能设备和物联网无处不在的部署的出现,机器学习推断的数据源已越来越多地转移到网络的边缘。现有的机器学习推理平台通常假设一个均匀的基础架构,并且不考虑包括边缘设备,本地集线器,边缘数据中心和云数据中心的更复杂和分层的计算基础架构。另一方面,最近的Automl工作为异质环境提供了可行的解决方案,用于模型压缩,修剪和量化。对于机器学习模型,现在我们可能很容易找到甚至生成一系列在准确性和效率之间进行不同权衡的模型。我们设计和实施Jellybean,这是一种用于服务和优化机器学习推理工作流程的系统。给定的服务级目标(例如,吞吐量,准确性),Jellybean选择了满足准确性目标的最具成本效益的模型,并决定如何在基础架构的不同层次上部署它们。评估表明,与最先进的模型选择和工人分配解决方案相比,Jellybean的视觉问题回答总成本最高可达58%,而NVIDIA AI City Challenge的车辆跟踪最多可达36%。 Jellybean还优于先前的ML服务系统(例如,在云上火花)的服务成本高达5倍。
translated by 谷歌翻译
分支机构是一种用于组合优化的系统枚举方法,在该方法中,性能高度依赖于可变选择策略。最先进的手工启发式策略的推理时间相对较慢,而当前的机器学习方法需要大量的标记数据。我们提出了一种新方法,以根据使用强化学习(RL)范式来解决组合优化中的数据标记和推理潜伏期问题。我们使用模仿学习来引导RL代理,然后使用近端策略优化(PPO)进一步探索全球最佳动作。然后,一个值网络用于运行蒙特卡洛树搜索(MCT)以增强策略网络。我们评估了我们在四个不同类别的组合优化问题上的方法的性能,并表明我们的方法与最先进的机器学习和基于启发式方法的方法相比表现强劲。
translated by 谷歌翻译
图形神经网络(GNNS)将深度神经网络(DNN)的成功扩展到非欧几里德图数据,实现了各种任务的接地性能,例如节点分类和图形属性预测。尽管如此,现有系统效率低,培训数十亿节点和GPU的节点和边缘训练大图。主要瓶颈是准备GPU数据的过程 - 子图采样和特征检索。本文提出了一个分布式GNN培训系统的BGL,旨在解决一些关键思想的瓶颈。首先,我们提出了一种动态缓存引擎,以最小化特征检索流量。通过协同设计缓存政策和抽样顺序,我们发现低开销和高缓存命中率的精美斑点。其次,我们改善了曲线图分区算法,以减少子图采样期间的交叉分区通信。最后,仔细资源隔离减少了不同数据预处理阶段之间的争用。关于各种GNN模型和大图数据集的广泛实验表明,BGL平均明显优于现有的GNN训练系统20.68倍。
translated by 谷歌翻译
最近,使用卷积神经网络(CNNS)存在移动和嵌入式应用的爆炸性增长。为了减轻其过度的计算需求,开发人员传统上揭示了云卸载,突出了高基础设施成本以及对网络条件的强烈依赖。另一方面,强大的SOC的出现逐渐启用设备执行。尽管如此,低端和中层平台仍然努力充分运行最先进的CNN。在本文中,我们展示了Dyno,一种分布式推断框架,将两全其人的最佳框架结合起来解决了几个挑战,例如设备异质性,不同的带宽和多目标要求。启用这是其新的CNN特定数据包装方法,其在onloading计算时利用CNN的不同部分的精度需求的可变性以及其新颖的调度器,该调度器共同调谐分区点并在运行时传输数据精度适应其执行环境的推理。定量评估表明,Dyno优于当前最先进的,通过竞争对手的CNN卸载系统,在竞争对手的CNN卸载系统上提高吞吐量超过一个数量级,最高可达60倍的数据。
translated by 谷歌翻译
关于组合优化的机器学习的最新作品表明,基于学习的方法可以优于速度和性能方面的启发式方法。在本文中,我们考虑了在定向的无环图上找到最佳拓扑顺序的问题,重点是编译器中出现的记忆最小化问题。我们提出了一种基于端到端的机器学习方法,用于使用编码器框架,用于拓扑排序。我们的编码器是一种基于注意力的新图形神经网络体系结构,称为\ emph {topoformer},它使用DAG的不同拓扑转换来传递消息。由编码器产生的节点嵌入被转换为节点优先级,解码器使用这些嵌入,以生成概率分布对拓扑顺序。我们在称为分层图的合成生成图的数据集上训练我们的模型。我们表明,我们的模型的表现优于或在PAR上,具有多个拓扑排序基线,同时在最多2K节点的合成图上明显更快。我们还在一组现实世界计算图上训练和测试我们的模型,显示了性能的改进。
translated by 谷歌翻译
嵌入学习是深度建议模型中的重要技术,可以将分类特征映射到密集的矢量。但是,嵌入表通常需要大量参数,这些参数成为存储和效率瓶颈。已经采用了分布式培训解决方案将嵌入表分配到多个设备中。但是,如果不仔细分区,则嵌入表很容易导致失衡。这是名为“嵌入桌碎片”的分布式系统的重大设计挑战,即,我们应该如何对嵌入表进行分配以平衡跨设备的成本,这是一项非平凡的任务,因为1)很难有效,精确地衡量成本,和2)已知分区问题是NP-HARD。在这项工作中,我们在Meta中介绍了新颖的实践,即Autoshard,该实践使用神经成本模型直接预测多桌成本和利用深度强化学习以解决分区问题。开源的大规模合成数据集和Meta生产数据集的实验结果证明了Autoshard的优越性优于启发式方法。此外,Autoshard的学习政策可以转移到具有不同数量的表和不同表格比率的碎片任务中,而无需进行任何微调。此外,Autoshard可以在几秒钟内有效地将数百张桌子碎片。 Autoshard的有效性,可转移性和效率使其适合生产使用。我们的算法已在元生产环境中部署。可以在https://github.com/daochenzha/autoshard上获得原型
translated by 谷歌翻译
为了其优势在GPU加速和更少依赖人类专家的优势,机器学习一直是解决放置和路由问题的新兴工具,作为现代芯片设计流程中的两个关键步骤。仍处于早期阶段,存在基本问题:可扩展性,奖励设计和端到端学习范式等,以实现端到端的放置学习,我们首先提出了一个由DeepPlace进行的联合学习方法进行放置宏观和标准电池,通过用基于梯度的优化方案的增强学习集成。为了进一步利用随后的路由任务进行展开,我们还通过加强学习开发联合学习方法来满足宏放置和路由,称为DeepPR。我们(钢筋)学习范例的一个关键设计涉及多视图嵌入模型来编码输入宏的全局图级别和本地节点级别信息。此外,设计随机网络蒸馏以鼓励探索。公共芯片设计基准的实验表明,我们的方法可以有效地从经验中学习,并在几小时内为邮政标准单元放置提供中间位置进行培训。
translated by 谷歌翻译
快速扩大的神经网络模型在单个设备上运行越来越具有挑战性。因此,在多个设备上的模型并行性对于确保训练大型模型的效率至关重要。最近的建议在长时间处理时间或性能差。因此,我们提出了Celeritas,这是一个快速的框架,用于优化大型型号的设备放置。Celeritas在标准评估中采用简单但有效的模型并行化策略,并通过一系列调度算法生成位置策略。我们进行实验以在许多大型模型上部署和评估Celeritas。结果表明,与大多数高级方法相比,Celeritas不仅将放置策略生成时间减少26.4 \%,而且还将模型运行时间提高了34.2 \%。
translated by 谷歌翻译
We study a novel and important communication pattern in large-scale model-parallel deep learning (DL), which we call cross-mesh resharding. This pattern emerges when the two paradigms of model parallelism - intra-operator and inter-operator parallelism - are combined to support large models on large clusters. In cross-mesh resharding, a sharded tensor needs to be sent from a source device mesh to a destination device mesh, on which the tensor may be distributed with the same or different layouts. We formalize this as a many-to-many multicast communication problem, and show that existing approaches either are sub-optimal or do not generalize to different network topologies or tensor layouts, which result from different model architectures and parallelism strategies. We then propose two contributions to address cross-mesh resharding: an efficient broadcast-based communication system, and an "overlapping-friendly" pipeline schedule. On microbenchmarks, our overall system outperforms existing ones by up to 10x across various tensor and mesh layouts. On end-to-end training of two large models, GPT-3 and U-Transformer, we improve throughput by 10% and 50%, respectively.
translated by 谷歌翻译