批次归一化被广泛用于深度学习以使中间激活归一化。深层网络臭名昭著地增加了训练的复杂性,要​​求仔细的体重初始化,需要较低的学习率等。这些问题已通过批归一化解决(\ textbf {bn})来解决,通过将激活的输入归功于零平均值和单位标准偏差。使培训过程的批归归量化部分显着加速了非常深网络的训练过程。一个新的研究领域正在进行研究\ textbf {bn}成功背后的确切理论解释。这些理论见解中的大多数试图通过将其对优化,体重量表不变性和正则化的影响来解释\ textbf {bn}的好处。尽管\ textbf {bn}在加速概括方面取得了不可否认的成功,但分析的差距将\ textbf {bn}与正则化参数的效果相关联。本文旨在通过\ textbf {bn}对正则化参数的数据依赖性自动调整,并具有分析证明。我们已将\ textbf {bn}提出为对非 - \ textbf {bn}权重的约束优化,通过该优化,我们通过它演示其数据统计信息依赖于正则化参数的自动调整。我们还为其在嘈杂的输入方案下的行为提供了分析证明,该方案揭示了正则化参数的信号与噪声调整。我们还通过MNIST数据集实验的经验结果证实了我们的主张。
translated by 谷歌翻译
Batch Normalization (BatchNorm) is a widely adopted technique that enables faster and more stable training of deep neural networks (DNNs). Despite its pervasiveness, the exact reasons for BatchNorm's effectiveness are still poorly understood. The popular belief is that this effectiveness stems from controlling the change of the layers' input distributions during training to reduce the so-called "internal covariate shift". In this work, we demonstrate that such distributional stability of layer inputs has little to do with the success of BatchNorm. Instead, we uncover a more fundamental impact of BatchNorm on the training process: it makes the optimization landscape significantly smoother. This smoothness induces a more predictive and stable behavior of the gradients, allowing for faster training.
translated by 谷歌翻译
Training Deep Neural Networks is complicated by the fact that the distribution of each layer's inputs changes during training, as the parameters of the previous layers change. This slows down the training by requiring lower learning rates and careful parameter initialization, and makes it notoriously hard to train models with saturating nonlinearities. We refer to this phenomenon as internal covariate shift, and address the problem by normalizing layer inputs. Our method draws its strength from making normalization a part of the model architecture and performing the normalization for each training mini-batch. Batch Normalization allows us to use much higher learning rates and be less careful about initialization. It also acts as a regularizer, in some cases eliminating the need for Dropout. Applied to a state-of-the-art image classification model, Batch Normalization achieves the same accuracy with 14 times fewer training steps, and beats the original model by a significant margin. Using an ensemble of batchnormalized networks, we improve upon the best published result on ImageNet classification: reaching 4.9% top-5 validation error (and 4.8% test error), exceeding the accuracy of human raters.
translated by 谷歌翻译
我们研究了使用尖刺,现场依赖的随机矩阵理论研究迷你批次对深神经网络损失景观的影响。我们表明,批量黑森州的极值值的大小大于经验丰富的黑森州。我们还获得了类似的结果对Hessian的概括高斯牛顿矩阵近似。由于我们的定理,我们推导出作为批量大小的最大学习速率的分析表达式,为随机梯度下降(线性缩放)和自适应算法(例如ADAM(Square Root Scaling)提供了通知实际培训方案,例如光滑,非凸深神经网络。虽然随机梯度下降的线性缩放是在我们概括的更多限制性条件下导出的,但是适应优化者的平方根缩放规则是我们的知识,完全小说。随机二阶方法和自适应方法的百分比,我们得出了最小阻尼系数与学习率与批量尺寸的比率成比例。我们在Cifar-$ 100 $和ImageNet数据集上验证了我们的VGG / WimerEsnet架构上的索赔。根据我们对象检的调查,我们基于飞行学习率和动量学习者开发了一个随机兰齐齐竞争,这避免了对这些关键的超参数进行昂贵的多重评估的需求,并在预残留的情况下显示出良好的初步结果Cifar的architecure - $ 100 $。
translated by 谷歌翻译
重要的是要了解流行的正则化方法如何帮助神经网络训练找到良好的概括解决方案。在这项工作中,我们从理论上得出了辍学的隐式正则化,并研究了损失函数的Hessian矩阵与辍学噪声的协方差矩阵之间的关系,并由一系列实验支持。然后,我们在数值上研究了辍学的隐式正规化的两个含义,这直觉上合理化了辍学有助于概括。首先,我们发现辍学的训练与实验中的标准梯度下降训练相比,发现具有最低最小的神经网络,而隐式正则化是找到平坦溶液的关键。其次,经过辍学的训练,隐藏神经元的输入权重(隐藏神经元的输入权重由其输入层到隐藏的神经元及其偏见项组成),往往会凝结在孤立的方向上。凝结是非线性学习过程中的一个功能,它使神经网络的复杂性低。尽管我们的理论主要集中在最后一个隐藏层中使用的辍学,但我们的实验适用于训练神经网络中的一般辍学。这项工作指出了与随机梯度下降相比,辍学的独特特征,是完全理解辍学的重要基础。
translated by 谷歌翻译
某些培训干预措施(例如提高学习率和应用批归归式化)的机制提高了深网的概括仍然是一个谜。先前的作品猜测,“扁平”解决方案比“更清晰”的解决方案更好地概括了看不见的数据,激发了几个指标来测量平坦度(尤其是损失Hessian最大的特征值);和算法,例如清晰度最小化(SAM)[1],它们直接优化了平坦度。其他作品质疑$ \ lambda_ {max} $与概括之间的链接。在本文中,我们提出了调用$ \ lambda_ {max} $对概括的影响的发现。我们表明:(1)虽然较大的学习率减少了所有批量尺寸的$ \ lambda_ {max} $,但概括益处有时会在较大的批量尺寸下消失; (2)通过同时缩放批量的大小和学习率,我们可以更改$ \ lambda_ {max} $,而不会影响概括; (3)虽然SAM生产较小的$ \ lambda_ {max} $,用于所有批次尺寸,概括益处(也)消失,较大的批量尺寸; (4)对于辍学,过高的辍学概率可能会降低概括,即使它们促进了较小的$ \ lambda_ {max} $; (5)虽然批处理范围并未始终产生较小的$ \ lambda_ {max} $,但它仍然赋予概括性优势。尽管我们的实验肯定了大型学习率和SAM对Minibatch SGD的概括优势,但GD-SGD差异证明了对$ \ lambda_ {Max} $解释神经网络中概括的能力的限制。
translated by 谷歌翻译
重量衰减通常用于确保具有批归归量的深神经网络的训练实践中的良好概括(BN-DNNS),在该训练中,由于归一化,某些卷积层对于重量重新恢复是不变的。在本文中,我们证明了重量衰减的实际用法仍然存在一些未解决的问题,尽管现有的理论工作在解释BN-DNNS中体重衰减的影响方面。一方面,当非自适应学习率例如使用动量的SGD,即使在初始训练阶段,有效学习率也会继续增加,从而导致许多神经体系结构的过度拟合效果。另一方面,在SGDM和自适应学习率优化器中,例如亚当,体重衰减对概括的影响对超参数非常敏感。因此,找到最佳的重量衰减参数需要广泛的参数搜索。为了解决这些弱点,我们建议使用简单而有效的重量重新缩放(WRS)方案来规范重量规范,以替代体重衰减。 WRS通过将重量标准明确地重新定为单位规范来控制重量规范,从而防止梯度增加,但也确保了足够大的有效学习率以提高概括。在各种计算机视觉应用程序中,包括图像分类,对象检测,语义细分和人群计数,我们与重量衰减,隐含重量重新缩放(重量标准化)和梯度投影(ADAMP)相比,显示了WR的有效性和鲁棒性。
translated by 谷歌翻译
已经提出了各种归一化层来帮助培训神经网络。组归一化(GN)是在视觉识别任务中实现出色表现的有效和有吸引力的研究之一。尽管取得了巨大的成功,但GN仍然存在几个问题,可能会对神经网络培训产生负面影响。在本文中,我们介绍了一个分析框架,并讨论了GN在影响神经网络训练过程时的工作原理。从实验结果中,我们得出结论GN对批处理标准化(BN)的较低性能的真正原因:1)\ TextBf {不稳定的训练性能},2)\ TextBf {更敏感}对失真,无论是来自外部噪声还是扰动。通过正规化。此外,我们发现GN只能在某个特定时期内帮助神经网络培训,而BN可以帮助整个培训中的网络。为了解决这些问题,我们提出了一个新的归一化层,该层是通过合并BN的优势在GN顶部构建的。图像分类任务的实验结果表明,所提出的归一化层优于官方GN,以提高识别精度,无论批次大小如何,并稳定网络训练。
translated by 谷歌翻译
在梯度下降中注入噪声具有几个理想的特征。在本文中,我们在计算梯度步骤之前探索噪声注入,该梯度步骤已知具有平滑和正规化的特性。我们表明,小扰动会导致基于L1-norm,L1-Norms或核规范的简单有限维模型的显式正则化。当应用于具有较大宽度的过多散热性神经网络时,我们表明,由于过多参数化导致的方差爆炸,相同的扰动无效。但是,我们还表明,独立的层扰动允许避免爆炸差异项,然后可以获得显式正则化器。我们从经验上表明,与香草(随机)梯度下降训练相比,小的扰动可以提高泛化性能,对训练程序进行了较小的调整。
translated by 谷歌翻译
在许多情况下,更简单的模型比更复杂的模型更可取,并且该模型复杂性的控制是机器学习中许多方法的目标,例如正则化,高参数调整和体系结构设计。在深度学习中,很难理解复杂性控制的潜在机制,因为许多传统措施并不适合深度神经网络。在这里,我们开发了几何复杂性的概念,该概念是使用离散的dirichlet能量计算的模型函数变异性的量度。使用理论论据和经验结果的结合,我们表明,许多常见的训练启发式方法,例如参数规范正规化,光谱规范正则化,平稳性正则化,隐式梯度正则化,噪声正则化和参数初始化的选择,都可以控制几何学复杂性,并提供一个统一的框架,以表征深度学习模型的行为。
translated by 谷歌翻译
神经架构的创新促进了语言建模和计算机视觉中的重大突破。不幸的是,如果网络参数未正确初始化,新颖的架构通常会导致挑战超参数选择和培训不稳定。已经提出了许多架构特定的初始化方案,但这些方案并不总是可移植到新体系结构。本文介绍了毕业,一种用于初始化神经网络的自动化和架构不可知论由方法。毕业基础是一个简单的启发式;调整每个网络层的规范,使得具有规定的超参数的SGD或ADAM的单个步骤导致可能的损耗值最小。通过在每个参数块前面引入标量乘数变量,然后使用简单的数字方案优化这些变量来完成此调整。 GradInit加速了许多卷积架构的收敛性和测试性能,无论是否有跳过连接,甚至没有归一化层。它还提高了机器翻译的原始变压器架构的稳定性,使得在广泛的学习速率和动量系数下使用ADAM或SGD来训练它而无需学习速率预热。代码可在https://github.com/zhuchen03/gradinit上获得。
translated by 谷歌翻译
在现代深网(DNS)中,至关重要的,无处不在且知之甚少的成分是批处理(BN),它以特​​征图为中心并归一化。迄今为止,只有有限的进步才能理解为什么BN会提高DN学习和推理表现。工作专注于表明BN平滑DN的损失格局。在本文中,我们从函数近似的角度从理论上研究BN。我们利用这样一个事实,即当今最先进的DNS是连续的分段仿射(CPA),可以通过定义在输入空间的分区上定义的仿射映射来预测培训数据(所谓的“线性”区域”)。 {\ em我们证明了BN是一种无监督的学习技术,它独立于DN的权重或基于梯度的学习 - 适应DN的样条分区的几何形状以匹配数据。} BN提供了“智能初始化”,可提高“智能初始化” DN学习的性能,因为它甚至适应了以随机权重初始化的DN,以使其样条分区与数据保持一致。我们还表明,微型批次之间的BN统计数据的变化引入了辍学的随机扰动,以对分区边界,因此分类问题的决策边界。每次微型摄入扰动可通过增加训练样本和决策边界之间的边距来减少过度拟合并改善概括。
translated by 谷歌翻译
引入了归一化层(例如,批处理归一化,层归一化),以帮助在非常深的网中获得优化困难,但它们显然也有助于概括,即使在不太深入的网中也是如此。由于长期以来的信念,即最小的最小值导致更好的概括,本文提供了数学分析和支持实验,这表明归一化(与伴随的重量赛一起)鼓励GD降低损失表面的清晰度。鉴于损失是标准不变的,这是标准化的已知结果,因此仔细地定义了“清晰度”。具体而言,对于具有归一化的相当广泛的神经网类,我们的理论解释了有限学习率的GD如何进入所谓的稳定边缘(EOS)制度,并通过连续的清晰度来表征GD的轨迹 - 还原流。
translated by 谷歌翻译
We present weight normalization: a reparameterization of the weight vectors in a neural network that decouples the length of those weight vectors from their direction. By reparameterizing the weights in this way we improve the conditioning of the optimization problem and we speed up convergence of stochastic gradient descent. Our reparameterization is inspired by batch normalization but does not introduce any dependencies between the examples in a minibatch. This means that our method can also be applied successfully to recurrent models such as LSTMs and to noise-sensitive applications such as deep reinforcement learning or generative models, for which batch normalization is less well suited. Although our method is much simpler, it still provides much of the speed-up of full batch normalization. In addition, the computational overhead of our method is lower, permitting more optimization steps to be taken in the same amount of time. We demonstrate the usefulness of our method on applications in supervised image recognition, generative modelling, and deep reinforcement learning.
translated by 谷歌翻译
低维歧管假设认为,在许多应用中发现的数据,例如涉及自然图像的数据(大约)位于嵌入高维欧几里得空间中的低维歧管上。在这种情况下,典型的神经网络定义了一个函数,该函数在嵌入空间中以有限数量的向量作为输入。但是,通常需要考虑在训练分布以外的点上评估优化网络。本文考虑了培训数据以$ \ mathbb r^d $的线性子空间分配的情况。我们得出对由神经网络定义的学习函数变化的估计值,沿横向子空间的方向。我们研究了数据歧管的编纂中与网络的深度和噪声相关的潜在正则化效应。由于存在噪声,我们还提出了训练中的其他副作用。
translated by 谷歌翻译
This paper proposes a new optimization algorithm called Entropy-SGD for training deep neural networks that is motivated by the local geometry of the energy landscape. Local extrema with low generalization error have a large proportion of almost-zero eigenvalues in the Hessian with very few positive or negative eigenvalues. We leverage upon this observation to construct a local-entropy-based objective function that favors well-generalizable solutions lying in large flat regions of the energy landscape, while avoiding poorly-generalizable solutions located in the sharp valleys. Conceptually, our algorithm resembles two nested loops of SGD where we use Langevin dynamics in the inner loop to compute the gradient of the local entropy before each update of the weights. We show that the new objective has a smoother energy landscape and show improved generalization over SGD using uniform stability, under certain assumptions. Our experiments on convolutional and recurrent networks demonstrate that Entropy-SGD compares favorably to state-of-the-art techniques in terms of generalization error and training time.
translated by 谷歌翻译
分布式深度学习(DDL)对于大型深度学习(DL)培训至关重要。同步随机梯度下降(SSGD)1是事实上的DDL优化方法。使用足够大的批量大小对于实现DDL运行时加速至关重要。在大量批量设置中,必须增加学习速率以补偿减少的参数更新数量。然而,大型学习率可能会损害SSGD和培训可以很容易地分歧。最近,已经提出了分散的平行SGD(DPSGD)以改善分布式训练速度。在本文中,我们发现DPSGD不仅具有系统明智的运行时效,而且在大批量设置中对SSGD的显着收敛性有益。基于对DPSGD学习动态的详细分析,我们发现DPSGD引入了额外的横向依赖性噪声,可自动调整有效的学习率以提高收敛。此外,我们理论上表明这种噪音平滑了损失景观,因此允许更大的学习率。我们在18个最先进的DL模型/任务中进行广泛的研究,并证明DPSGD通常会收敛于SSGD在大批批量设置中大的学习速率的情况下融合。我们的发现一致地遍布两个不同的应用领域:计算机视觉(CIFAR10和Imagenet-1K)和自动语音识别(SWB300和SWB2000),以及两种不同类型的神经网络模型:卷积神经网络和长短期内存经常性神经网络。
translated by 谷歌翻译
网络压缩对于使深网的效率更高,更快且可推广到低端硬件至关重要。当前的网络压缩方法有两个开放问题:首先,缺乏理论框架来估计最大压缩率;其次,有些层可能会过多地进行,从而导致网络性能大幅下降。为了解决这两个问题,这项研究提出了一种基于梯度矩阵分析方法,以估计最大网络冗余。在最大速率的指导下,开发了一种新颖而有效的层次网络修剪算法,以最大程度地凝结神经元网络结构而无需牺牲网络性能。进行实质性实验以证明新方法修剪几个高级卷积神经网络(CNN)体系结构的功效。与现有的修剪方法相比,拟议的修剪算法实现了最先进的性能。与其他方法相比,在相同或相似的压缩比下,新方法提供了最高的网络预测准确性。
translated by 谷歌翻译
培训深度神经网络是一项非常苛刻的任务,尤其是具有挑战性的是如何适应体系结构以提高训练有素的模型的性能。我们可以发现,有时,浅网络比深网概括得更好,并且增加更多层会导致更高的培训和测试错误。深层残留学习框架通过将跳过连接添加到几个神经网络层来解决此降解问题。最初,需要这种跳过连接才能成功地训练深层网络,因为网络的表达性会随着深度的指数增长而成功。在本文中,我们首先通过神经网络分析信息流。我们介绍和评估批处理循环,该批处理通过神经网络的每一层量化信息流。我们从经验和理论上证明,基于梯度下降的训练方法需要正面批处理融合,以成功地优化给定的损失功能。基于这些见解,我们引入了批处理凝聚正则化,以使基于梯度下降的训练算法能够单独通过每个隐藏层来优化信息流。借助批处理正则化,梯度下降优化器可以将不可吸引的网络转换为可训练的网络。我们从经验上表明,因此我们可以训练“香草”完全连接的网络和卷积神经网络 - 没有跳过连接,批处理标准化,辍学或任何其他建筑调整 - 只需将批处理 - 凝集正则术语添加到500层中损失功能。批处理 - 注入正则化的效果不仅在香草神经网络上评估,还评估了在各种计算机视觉以及自然语言处理任务上的剩余网络,自动编码器以及变压器模型上。
translated by 谷歌翻译
Structural pruning of neural network parameters reduces computation, energy, and memory transfer costs during inference. We propose a novel method that estimates the contribution of a neuron (filter) to the final loss and iteratively removes those with smaller scores. We describe two variations of our method using the first and secondorder Taylor expansions to approximate a filter's contribution. Both methods scale consistently across any network layer without requiring per-layer sensitivity analysis and can be applied to any kind of layer, including skip connections. For modern networks trained on ImageNet, we measured experimentally a high (>93%) correlation between the contribution computed by our methods and a reliable estimate of the true importance. Pruning with the proposed methods leads to an improvement over state-ofthe-art in terms of accuracy, FLOPs, and parameter reduction. On ResNet-101, we achieve a 40% FLOPS reduction by removing 30% of the parameters, with a loss of 0.02% in the top-1 accuracy on ImageNet. Code is available at https://github.com/NVlabs/Taylor_pruning.
translated by 谷歌翻译