基于梯度的残差训练的方法(RESNET)通常需要输入数据的前进通过,然后将误差梯度反向传播到更新模型参数,这变得耗费网络变得更深。为了破坏前向和向后模式的算法锁定和利用同步模块并行性,辅助变量方法最近吸引了很多兴趣,但遭受了重大的沟通开销和缺乏数据增强。在这项工作中,通过交易外部辅助变量的存储和重新计算,建立了一种用于跨多个计算设备训练现实Resnet的新颖联合学习框架。更具体地,每个独立处理器的输入数据是从其低容量辅助网络(AUXNET)生成的,这允许使用数据增强并实现前向解锁。然后并行地执行后向通过,每个丢失函数源自惩罚或增强拉格朗日(AL)方法。最后,采用所提出的AUXNET通过端到端培训过程重现更新的辅助变量。我们展示了我们在CIFAR-10,CIFAR-100和Imagenet数据集中展示了我们对RESNET和WIMERESNET的效果,实现了传统的层串行训练方法的加速,同时保持了可比的测试精度。
translated by 谷歌翻译
我们为深度残留网络(RESNETS)提出了一种全球收敛的多级训练方法。设计的方法可以看作是递归多级信任区域(RMTR)方法的新型变体,该方法通过在训练过程中自适应调节迷你批量,在混合(随机确定性)设置中运行。多级层次结构和传输运算符是通过利用动力学系统的观点来构建的,该观点通过重新连接来解释远期传播作为对初始值问题的正向Euler离散化。与传统的培训方法相反,我们的新型RMTR方法还通过有限的内存SR1方法结合了有关多级层次结构各个级别的曲率信息。使用分类和回归领域的示例,对我们的多级训练方法的总体性能和收敛属性进行了数值研究。
translated by 谷歌翻译
我们引入了一种新型的数学公式,用于训练以(可能非平滑)近端图作为激活函数的馈送前向神经网络的培训。该公式基于布雷格曼的距离,关键优势是其相对于网络参数的部分导数不需要计算网络激活函数的导数。我们没有使用一阶优化方法和后传播的组合估算参数(如最先进的),而是建议使用非平滑一阶优化方法来利用特定结构新颖的表述。我们提出了几个数值结果,这些结果表明,与更常规的培训框架相比,这些训练方法可以很好地很好地适合于培训基于神经网络的分类器和具有稀疏编码的(DeNoising)自动编码器。
translated by 谷歌翻译
深度学习在广泛的AI应用方面取得了有希望的结果。较大的数据集和模型一致地产生更好的性能。但是,我们一般花费更长的培训时间,以更多的计算和沟通。在本调查中,我们的目标是在模型精度和模型效率方面提供关于大规模深度学习优化的清晰草图。我们调查最常用于优化的算法,详细阐述了大批量培训中出现的泛化差距的可辩论主题,并审查了解决通信开销并减少内存足迹的SOTA策略。
translated by 谷歌翻译
深度神经网络(DNN)模型通常是从​​一层到另一层的依次训练的,这会导致向前,向后和更新锁定的问题,从而导致训练时间的性能差。减轻这些问题的现有并行策略提供了次优的运行时性能。在这项工作中,我们提出了一种新颖的层面分区和合并,向前和向后通过并行框架,以提供更好的训练性能。拟议工作的新颖性包括1)层面分区和合并模型,该模型可以最大程度地降低设备之间的通信开销,而不会在培训过程中没有现有策略的记忆成本; 2)向后通过和向后通过并行化和优化,以解决更新锁定问题并最大程度地减少总培训成本。对实际用例的实验评估表明,所提出的方法在训练速度方面优于最先进的方法。并在不损害非平行方法的准确性性能的情况下实现几乎线性加速。
translated by 谷歌翻译
Neural ordinary differential equations (neural ODEs) have emerged as a novel network architecture that bridges dynamical systems and deep learning. However, the gradient obtained with the continuous adjoint method in the vanilla neural ODE is not reverse-accurate. Other approaches suffer either from an excessive memory requirement due to deep computational graphs or from limited choices for the time integration scheme, hampering their application to large-scale complex dynamical systems. To achieve accurate gradients without compromising memory efficiency and flexibility, we present a new neural ODE framework, PNODE, based on high-level discrete adjoint algorithmic differentiation. By leveraging discrete adjoint time integrators and advanced checkpointing strategies tailored for these integrators, PNODE can provide a balance between memory and computational costs, while computing the gradients consistently and accurately. We provide an open-source implementation based on PyTorch and PETSc, one of the most commonly used portable, scalable scientific computing libraries. We demonstrate the performance through extensive numerical experiments on image classification and continuous normalizing flow problems. We show that PNODE achieves the highest memory efficiency when compared with other reverse-accurate methods. On the image classification problems, PNODE is up to two times faster than the vanilla neural ODE and up to 2.3 times faster than the best existing reverse-accurate method. We also show that PNODE enables the use of the implicit time integration methods that are needed for stiff dynamical systems.
translated by 谷歌翻译
深度学习领域目睹了对极端计算和内存密集型神经网络的显着转变。这些较新的较大模型使研究人员能够推进各种领域的最先进的工具。这种现象刺激了在更多的硬件加速器上产生了针对神经网络的分布式训练的算法。在本文中,我们讨论并比较了当前的最先进的框架,以实现大规模的分布式深度学习。首先,我们调查分布式学习中的当前实践,并确定所使用的不同类型的并行性。然后,我们提出了对大型图像和语言培训任务的性能进行了经验结果。此外,我们解决了他们的统计效率和内存消耗行为。根据我们的结果,我们讨论了阻碍性能的每个框架的算法和实现部分。
translated by 谷歌翻译
近年来,最先进神经网络的参数的数量急剧增加。这种对大规模神经网络感兴趣的激增具有促使新的分布式培训策略的发展,从而实现了这种模型。一种这样的策略是模型平行分布式培训。不幸的是,模型 - 并行性遭受资源利用率差,导致资源浪费。在这项工作中,我们改进了最近的理想化模型 - 并行优化设置:本地学习。由于资源利用率差,我们在当地和全球学习之间介绍了一类中介战略,称为联锁反向化。这些策略保留了本地优化的许多计算效率优势,同时恢复全球优化实现的大部分任务性能。我们评估了我们对图像分类的策略和变压器语言模型,发现我们的策略一致地在任务绩效方面出现本地学习,并在培训效率方面进行全球学习。
translated by 谷歌翻译
培训尺寸培训大型深度学习模型非常具有挑战性。本文提出了一种新型管道并行方案,该方案结合了双向管道,以有效地训练大规模模型。嵌合体是一种同步方法,因此不会损失精度,比异步方法更加融合。与最新的同步管道方法相比,嵌合体将气泡的数量降低至50%;受益于双向管道的复杂调度,嵌合体具有更平衡的激活记忆消耗。评估是在基于变压器的语言模型上进行的。对于在PIZ Daint超级计算机的2,048个GPU节点上运行的GPT-2模型,Chimera通过最先进的同步和异步管道方法将培训吞吐量提高了1.16x-2.34x。
translated by 谷歌翻译
Deep neural networks provide unprecedented performance gains in many real world problems in signal and image processing. Despite these gains, future development and practical deployment of deep networks is hindered by their blackbox nature, i.e., lack of interpretability, and by the need for very large training sets. An emerging technique called algorithm unrolling or unfolding offers promise in eliminating these issues by providing a concrete and systematic connection between iterative algorithms that are used widely in signal processing and deep neural networks. Unrolling methods were first proposed to develop fast neural network approximations for sparse coding. More recently, this direction has attracted enormous attention and is rapidly growing both in theoretic investigations and practical applications. The growing popularity of unrolled deep networks is due in part to their potential in developing efficient, high-performance and yet interpretable network architectures from reasonable size training sets. In this article, we review algorithm unrolling for signal and image processing. We extensively cover popular techniques for algorithm unrolling in various domains of signal and image processing including imaging, vision and recognition, and speech processing. By reviewing previous works, we reveal the connections between iterative algorithms and neural networks and present recent theoretical results. Finally, we provide a discussion on current limitations of unrolling and suggest possible future research directions.
translated by 谷歌翻译
该教程论文调查端到端反向传播(E2EBP)的最佳替代方案 - 事实上的培训深度体系结构的标准。模块化训练是指严格的本地培训,而没有前进和向后通行证,即将深度建筑分为几个非重叠模块,并在没有任何端到端操作的情况下分别训练它们。在全局E2EBP和严格的局部模块化训练之间,有弱模块化的混合动力车执行训练,而无需向后传球。这些替代方案可以匹配或超过E2EBP在挑战数据集(例如ImageNet)上的性能,并且主要是因为它们比E2EBP具有实际优势,这将在此列举。特别是,它们允许在深度学习工作流程中具有更大的模块化和透明度,将深度学习与主流计算机科学工程的一致性一致,从而大大利用模块化以实现可扩展性。模块化训练还揭示了有关学习的新见解,并对其他重要的研究领域产生了进一步的影响。具体而言,它可以诱导自然和有效的解决方案,以解决一些重要的实际问题,例如数据效率和可转让性估计。
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 谷歌翻译
基础模型正在成为主要的深度学习技术。由于模型参数和训练数据集的大规模,预处理基础模型始终耗时。除了计算密集型外,培训过程还非常密集和沟通密集。这些功能使得需要应用3D并行性,该平行性整合数据并行性,管道模型并行性和张量模型并行性,以实现高训练效率。为了实现这一目标,开发了一些自定义软件框架,例如Megatron-LM和DeepSpeed。但是,当前的3D平行框架仍然符合两个问题:i)它们对模型开发人员不透明,这些开发人员需要手动修改模型以并行化培训。 ii)它们对计算,GPU存储器和网络带宽的利用不足。我们提出了Merak,这是一个自动化的3D并行性深度学习培训框架,并具有高度资源利用。 Merak会自动使用自动模型分区仪部署,该分区仪在模型的代理表示上使用图形sharding算法。 Merak还提出了非侵入性的API,用于通过最小的代码修改来扩展基础模型培训。此外,我们在Merak设计了高性能的3D平行运行时引擎。它使用多种技术来利用可用的培训资源,包括移动的关键路径管道时间表,该计划带来了更高的计算利用率,阶段感知的重新计算,可利用空闲工作者的记忆以及子额定张量的模型并行性,这些模型并联与通信和计算重叠。 64 GPU的实验显示,Merak可以加快在最新的3D平行性框架上,具有1.5、2.5、8.3和20亿的模型框架,最高可达1.42x,1.39x,1.43x和1.61 x分别。
translated by 谷歌翻译
最近,稀疏的培训方法已开始作为事实上的人工神经网络的培训和推理效率的方法。然而,这种效率只是理论上。在实践中,每个人都使用二进制掩码来模拟稀疏性,因为典型的深度学习软件和硬件已针对密集的矩阵操作进行了优化。在本文中,我们采用正交方法,我们表明我们可以训练真正稀疏的神经网络以收获其全部潜力。为了实现这一目标,我们介绍了三个新颖的贡献,这些贡献是专门为稀疏神经网络设计的:(1)平行训练算法及其相应的稀疏实现,(2)具有不可训练的参数的激活功能,以支持梯度流动,以支持梯度流量, (3)隐藏的神经元对消除冗余的重要性指标。总而言之,我们能够打破记录并训练有史以来最大的神经网络在代表力方面训练 - 达到蝙蝠大脑的大小。结果表明,我们的方法具有最先进的表现,同时为环保人工智能时代开辟了道路。
translated by 谷歌翻译
培训广泛和深度神经网络(DNN)需要大量的存储资源,例如内存,因为在转发传播期间必须在存储器中保存中间激活数据,然后恢复以便向后传播。然而,由于硬件设计约束,诸如GPU之类的最先进的加速器(例如GPU)仅配备了非常有限的存储容量,这显着限制了在训练大规模DNN时的最大批量大小和性能加速。传统的记忆保存技术均受性能开销或受限互连带宽或特定互连技术的约束。在本文中,我们提出了一种新颖的记忆高效的CNN训练框架(称为Comet),利用错误界限的损耗压缩来显着降低训练的内存要求,以允许培训更大的模型或加速培训。不同于采用基于图像的有损压缩机(例如JPEG)的最先进的解决方案来压缩激活数据,我们的框架故意采用严格的错误控制机制来采用错误界限的损耗压缩。具体而言,我们对从改变的激活数据传播到梯度的压缩误差传播的理论分析,并经验探讨改变梯度对训练过程的影响。基于这些分析,我们优化了误报的损耗压缩,并提出了一种用于激活数据压缩的自适应误差控制方案。我们评估我们对最先进的解决方案的设计,其中包含五个广泛采用的CNN和Imagenet DataSet。实验表明,我们所提出的框架可以在基线训练中显着降低13.5倍,并分别在另一个最先进的基于压缩框架上的1.8倍,几乎没有准确性损失。
translated by 谷歌翻译
我们提出了一种新颖的二阶优化框架,用于训练新兴的深度连续时间模型,特别是神经常规方程(神经杂物杂物)。由于他们的训练已经涉及昂贵的梯度计算来通过求解向后ode,因此导出有效的二阶方法变得高度不变。然而,灵感来自最近的最佳控制(OC)对训练深网络的解释,我们表明,可以采用称为差分编程的特定连续时间oC方法,以获得同一O(1 )内存成本。我们进一步探索了二阶衍生品的低级别表示,并表明它导致借助基于Kronecker的分子化的有效的预处理更新。由此产生的方法 - 命名的snopt - 收敛于壁钟时间中的一阶基线的速度要快得多,并且改进仍然在各种应用中保持一致,例如,图像分类,生成流量和时间序列预测。我们的框架还实现了直接的架构优化,例如神经杂物的集成时间,具有二阶反馈策略,加强了OC视角作为深度学习中优化的原则性工具。我们的代码可在https://github.com/ghliu/snopt上获得。
translated by 谷歌翻译
While machine learning is traditionally a resource intensive task, embedded systems, autonomous navigation, and the vision of the Internet of Things fuel the interest in resource-efficient approaches. These approaches aim for a carefully chosen trade-off between performance and resource consumption in terms of computation and energy. The development of such approaches is among the major challenges in current machine learning research and key to ensure a smooth transition of machine learning technology from a scientific environment with virtually unlimited computing resources into everyday's applications. In this article, we provide an overview of the current state of the art of machine learning techniques facilitating these real-world requirements. In particular, we focus on deep neural networks (DNNs), the predominant machine learning models of the past decade. We give a comprehensive overview of the vast literature that can be mainly split into three non-mutually exclusive categories: (i) quantized neural networks, (ii) network pruning, and (iii) structural efficiency. These techniques can be applied during training or as post-processing, and they are widely used to reduce the computational demands in terms of memory footprint, inference speed, and energy efficiency. We also briefly discuss different concepts of embedded hardware for DNNs and their compatibility with machine learning techniques as well as potential for energy and latency reduction. We substantiate our discussion with experiments on well-known benchmark datasets using compression techniques (quantization, pruning) for a set of resource-constrained embedded systems, such as CPUs, GPUs and FPGAs. The obtained results highlight the difficulty of finding good trade-offs between resource efficiency and predictive performance.
translated by 谷歌翻译
物理信息的神经网络(PINN)是神经网络(NNS),它们作为神经网络本身的组成部分编码模型方程,例如部分微分方程(PDE)。如今,PINN是用于求解PDE,分数方程,积分分化方程和随机PDE的。这种新颖的方法已成为一个多任务学习框架,在该框架中,NN必须在减少PDE残差的同时拟合观察到的数据。本文对PINNS的文献进行了全面的综述:虽然该研究的主要目标是表征这些网络及其相关的优势和缺点。该综述还试图将出版物纳入更广泛的基于搭配的物理知识的神经网络,这些神经网络构成了香草·皮恩(Vanilla Pinn)以及许多其他变体,例如物理受限的神经网络(PCNN),各种HP-VPINN,变量HP-VPINN,VPINN,VPINN,变体。和保守的Pinn(CPINN)。该研究表明,大多数研究都集中在通过不同的激活功能,梯度优化技术,神经网络结构和损耗功能结构来定制PINN。尽管使用PINN的应用范围广泛,但通过证明其在某些情况下比有限元方法(FEM)等经典数值技术更可行的能力,但仍有可能的进步,最著名的是尚未解决的理论问题。
translated by 谷歌翻译
模型大小的范围不断增加,并且持续改进性能使大型模型时代的到来的到来。在本报告中,我们通过潜入培训目标和培训方法来探讨大型模型培训如何运作。具体而言,培训目标描述了如何利用Web规模数据来开发基于自我监督的学习以及基于分布式培训的培训方法,开发出极强的大型模型,描述了如何使大型模型培训成为现实。我们将现有的培训方法总结为三个主要类别:训练并行性,节省记忆技术和模型稀疏设计。训练并行性可以根据发生的并行性维度分类为数据,管道和张量并行性。节省记忆的技术是正交的,并且与训练并行性互补。和模型稀疏设计以恒定的计算成本进一步扩大模型大小。在https://github.com/qhliu26/bm-training提供了不断更新的大型模型培训清单。
translated by 谷歌翻译
本文侧重于培训无限层的隐含模型。具体而言,以前的作品采用隐式差分,并解决后向传播的精确梯度。但是,是否有必要计算训练的这种精确但昂贵的渐变?在这项工作中,我们提出了一种新颖的梯度估计,用于隐式模型,命名为Phantom梯度,1)用于精确梯度的昂贵计算; 2)提供了对隐式模型培训的凭经质优选的更新方向。理论上,理论上可以分析可以找到损失景观的上升方向的条件,并基于阻尼展开和Neumann系列提供幻象梯度的两个特定实例化。大规模任务的实验表明,这些轻质幻像梯度大大加快了培训隐式模型中的后向往大约1.7倍,甚至基于想象成上的精确渐变来提高对方法的性能。
translated by 谷歌翻译