为什么不进行正则化解决深度神经网络对数据的渴望?


37

我通常在神经网络(尤其是深度神经网络)的环境中经常遇到的一个问题是,它们“渴望数据”-也就是说,除非我们拥有大量数据集,否则它们的性能将不佳用来训练网络。

我的理解是,这是由于NNet(尤其是Deep NNet)具有许多自由度的事实。因此,作为一个模型,NNet具有大量参数,并且如果模型的参数数量相对于训练数据点的数量很大,则存在过拟合的趋势。

但是,为什么不能通过正则化解决此问题?据我所知,NNets可以使用L1和L2正则化,也有自己的正则化方法(例如dropout),可以减少网络中的参数数量。

我们是否可以选择我们的正则化方法以使它们强制简约并限制网络的大小?


为了阐明我的想法:假设我们使用大型Deep NNet来尝试对数据建模,但是数据集很小,实际上可以通过线性模型建模。那么为什么网络权重不会以一种神经元模拟线性回归而所有其他神经元收敛为零的方式收敛呢?为什么正则化对此没有帮助?


7
“那么,为什么网络权重不会以一种神经元模拟线性回归而所有其他神经元都收敛为零的方式收敛呢?为什么正则化对此没有帮助?” 实际上,我认为这将成为一篇非常有趣的论文:建立该网络和问题,然后评估会发生什么。
恢复莫妮卡

好吧,即使在进行正则化时,也存在稍后在网络的较深层减小梯度的问题。这就是为什么人们使用批处理规范化来有效地执行您所描述的事情的原因。其他方法已经解决了这一问题(例如LSTM),并且有些事情可以帮助解决饥饿问题,例如辍学。
本杰明·格林鲍姆


如下面的@cliffab回答,正则化不是提高性能所需要的。简单地说,一堆旋转的猫图像与具有正则化的单个猫图像不同。
seanv507

1
我一点也不惊讶。对于我在工作中处理的那种时间序列,我还没有找到一种可以超越传统的时间序列方法的方法,但是我一直在尝试:)
Aksakal

Answers:


43

解释它的简单方法是,正则化有助于使其不适应噪声,就确定信号的形状而言,它的作用不大。如果您将深度学习视为巨大的光荣函数逼近器,那么您会意识到,需要大量数据来定义复杂信号的形状。

如果没有噪声,则NN复杂度的增加将产生更好的近似值。NN的大小不会受到任何惩罚,在每种情况下越大越好。考虑泰勒(Taylor)逼近,对于非多项式函数,更多的项总是更好的选择(忽略数值精度问题)。

由于您开始适应噪音,因此在有噪音的情况下会分解。因此,这里有正则化的帮助:它可以减少对噪声的拟合,从而使我们可以构建更大的 NN来拟合非线性问题。

以下讨论对我的答案不是必不可少的,但我的部分补充是回答一些评论并激发上面答案的主体。基本上,我剩下的答案就像是汉堡包里的法国大火,您可以跳过它。

(Ir)相关案例:多项式回归

让我们来看一个多项式回归的玩具示例。对于许多函数来说,它也是一个很好的近似器。我们将在区域中查看函数。从下面的泰勒级数可以看出,7阶展开式已经非常合适,因此我们可以预期7+阶的多项式也非常合适:X - 3 3 XX-33

在此处输入图片说明

接下来,我们将逐步将具有较高阶数的多项式拟合到包含7个观测值的很小的,非常嘈杂的数据集:

在此处输入图片说明

我们可以观察到很多人知道的关于多项式的信息:它们是不稳定的,并且随着多项式阶数的增加而开始剧烈振荡。

但是,问题不在于多项式本身。问题是噪音。当我们将多项式拟合到噪声数据时,拟合的一部分是针对噪声,而不是信号。这是适用于相同数据集的相同精确多项式,但噪声已完全消除。适合的!

请注意,视觉上非常适合阶数6。这并不奇怪,因为我们只有7个观测值才能唯一地识别阶数6多项式,并且从上面的泰勒逼近图看到,阶数6已经非常好地近似于在我们的数据范围内。X

在此处输入图片说明

还要注意,高阶多项式不适合6阶,因为没有足够的观察来定义它们。因此,让我们看一下100次观察的结果。在下面的图表中,您将看到更大的数据集如何使我们能够拟合高阶多项式,从而实现更好的拟合!

在此处输入图片说明

很好,但问题在于我们通常会处理嘈杂的数据。如果您将相同的数据拟合到100个非常嘈杂的数据中,会发现会发生什么,请参见下表。回到正题:高阶多项式产生可怕的振荡拟合。因此,增加数据集并不能帮助增加模型的复杂性以更好地解释数据。同样,这是因为复杂模型不仅更适合信号的形状,而且也更适合噪声的形状。

在此处输入图片说明

最后,让我们尝试对此问题进行一些la脚的正则化。下图显示了应用于9阶多项式回归的正则化(具有不同的惩罚)。将此与上面的9阶(幂)多项式拟合进行比较:在正则化的适当级别上,可以将高阶多项式拟合到噪声数据。

在此处输入图片说明

以防万一还不清楚:我不建议这样使用多项式回归。多项式非常适合局部拟合,因此分段多项式可能是一个不错的选择。使它们适合整个域通常不是一个好主意,因为它们对噪声很敏感,这确实可以从上面的图中看出。在这种情况下,噪声是数字噪声还是其他来源的噪声并不重要。噪声就是噪声,多项式会对它产生热情的反应。


8
当数据集较小时,很难区分噪声和非噪声。
亚历克斯R.18年

3
实际上,正则化可以在不过度拟合的情况下拥有更大的 NN
Aksakal,

6
@Alex-为什么默认使用更简单的模型?存在无法解释的可变性,仍然可以通过提高复杂性来解决!并且...目标是尽可能减少无法解释的可变性...如果不是,则NN将默认为最简单的模型,即“ 0”。但是,正如Aksakal所写,随着NN越来越减少数据中无法解释的可变性,它也适合无法解释的可变性,即过拟合-因此需要进行正则化。
jbowman

2
另一件事:假设您正在建模的基本过程很嘈杂,例如人类的投票行为或某些根本难以预测的健康结果。还可以说您的数据充满各种测量误差,甚至可能存在一些选择偏差。在如此高的信号噪声环境中,我不仅希望使用带有正则化的简单模型。我什至宁愿选择更少的数据,以免尽管我做了所有的正则化工作,但最终却无法非常精确地测量一堆噪声。
垃圾平衡

2
@BrashEquilibrium-一个很好的观点。我们正在使用具有约150个特征的梯度增强机进行一些大型预测,其中许多特征具有较高的噪声水平(但仍会提高预测质量),并且发现向GBM提供20%的数据进行训练即使应用所有其他正则化机制,对结果的预测也比给出50%或更高的预测要好。
jbowman

7

在这一点上,何时以及为什么某些正则化方法成功和失败尚不为人所理解。实际上,根本不了解为什么深度学习首先起作用。

考虑到足够深的神经网络可以完美地记住大多数行为良好的训练数据这一事实,对于任何特定的深网络,存在比正确的解决方案更多的错误解决方案。从广义上讲,正则化是试图限制这些“错误”解决方案的模型的表达力-其中“错误”是由启发式方法定义的,我们认为启发式方法对于特定领域很重要。但是通常很难定义试探法,以使您不会因此而失去“正确”的表达能力。一个很好的例子是L2罚则。

通常将很少被视为正则化形式的方法适用于ML的所有应用领域。视觉,自然语言处理和结构化预测问题都有自己的正则化技术手册,这些经实验证明对这些特定领域有效。但是即使在这些领域中,这些技术也仅在某些情况下有效。例如,深度残差网络上的批量归一化似乎使遗漏变得多余,尽管事实表明两者都可以独立地提高泛化性。

单独来说,我认为正则化这个词是如此广泛,以至于很难理解任何有关它的知识。考虑到卷积相对于像素以指数方式限制参数空间这一事实,您可以将卷积神经网络视为对香草神经网络进行正则化的一种形式。


我不确定我是否同意你的第一段。
安德·比古里

3
很难用500个字符来谈论它,但是世界顶级研究人员声称SGD的成功还没有被很好地理解。例如,以OpenAI的Ilya S.为例:youtube.com/watch?
奥斯丁·辛

完全同意-可能是使用多项式逼近而不是实际网络更容易推理的原因...
P-Gn

3

一类证明没有问题的基本定理没有午餐的定理。对于每个样本都有一定正则化帮助的有限问题,另一个问题是相同正则化会使情况更糟。正如奥斯汀指出的那样,我们通常会发现L1 / L2正则化对许多现实问题很有帮助,但这只是一个观察,而且由于NFL定理,不能有一般性保证。


3

我要说的是,在较高的水平上,DNN(深度神经网络)的归纳偏置是有力的,但有点太松散或不够自​​以为是。我的意思是说,DNN捕获了大量有关正在发生的事情的表面统计信息,但未能深入到因果关系/组成的高层结构。(您可以将卷积视为穷人的归纳偏差规范)。

另外,在机器学习社区中,人们认为最好的概括方法(用很少的数据做出好的推论/预测)是找到产生数据的最短程序。但是程序的归纳/综合很困难,我们没有有效地实现它的好方法。因此,我们而是依靠电路搜索的近似值,并且我们知道如何使用反向传播。在这里,Ilya Sutskever对该想法进行了概述。


为了说明表示为实际程序的模型与深度学习模型的模型的泛化能力的差异,我将在本文中演示一个:仿真作为物理场景理解的引擎

在此处输入图片说明

(A)IPE [直觉物理引擎]模型采用的输入(例如,感知,语言,记忆,图像等)可实例化场景的分布(1),然后模拟物理对分布的影响(2),然后汇总结果以输出到其他感觉运动和认知能力(3)

在此处输入图片说明

(B)经验 1(会掉下去吗?)塔刺激。带有红色边框的塔实际上是微妙的平衡,另外两个高度相同,但是模型和人员认为蓝色边框的塔掉落的可能性要小得多。

(C)概率IPE模型(x轴)与人类判断平均值(y轴)的关系。1.有关其他σ和values值的相关性,请参见图S3。每个点代表一个塔(带有SEM),三个彩色圆圈对应于B中的三个塔。

(D)基本事实(非概率性)与人为判断(实验1)。由于它不代表不确定性,因此无法捕捉人们对我们许多刺激的判断,例如B中的红边塔楼。不稳定,并且预计IPE与地面真实性之间的关联要比对我们的刺激更好。)

我的意思是,C语言的拟合度非常好,因为该模型捕获了有关人类如何做出物理判断的正确偏见。这在很大程度上是因为它可以对实际物理模型进行建模(请记住它实际的物理引擎),并且可以处理不确定性。

现在显而易见的问题是:您可以通过深度学习来做到这一点吗?这是Lerer等人在这项工作中所做的:通过示例学习砌块塔的物理直觉

他们的模型: 在此处输入图片说明

他们的模型实际上非常适合即将完成的任务(预测下落块的数量,甚至下落方向)

在此处输入图片说明

但是它有两个主要缺点:

  • 需要大量数据才能正确训练
  • 概括地说,只能以较浅的方式进行概括:您可以将图像转换为更逼真的图像,添加或删除1或2个块。但是除此之外,性能都会发生灾难性的下降:添加3或4个块,更改预测任务...

Tenenbaum的实验室对这两种方法进行了比较研究:对近似概率模拟和深度神经网络的比较评估,作为对人类物理场景理解的解释

引用讨论部分:

CNN的性能会随着训练数据的减少而降低。尽管AlexNet(未经过预训练)在处理200,000张训练图像时表现更好,但由于缺少数据,它也遭受了更多的痛苦,而经过预训练的AlexNet可以从少量训练图像中更好地学习。对于我们的任务,这两个模型都需要大约1,000张图像才能使其性能与IPE模型和人类相当。

CNN甚至在很小的场景变化(例如更改块数)中,其泛化能力也很有限。相反,IPE模型自然地概括并捕获了随着堆栈中的块数而人为判断准确性降低的方式。

综上所述,这些结果表明了有关人类认知的一些基本知识,即神经网络(或至少是CNN)目前尚未捕获:世界因果过程的心理模型的存在。可以模拟因果心智模型来预测定性新颖情况下将发生的情况,它们不需要大量多样的训练数据来广义地概括,但是它们固有地会遭受某些类型的错误(例如,由于状态和不确定性引起的不确定性的传播)。动态噪声)仅依靠仿真进行操作。

回到我想说的一点:尽管神经网络是强大的模型,但它们似乎缺乏表示因果,组成和复杂结构的能力。他们通过需要大量的培训数据来弥补这一点。

回到您的问题:我敢说,广泛的归纳偏差和神经网络不能建模因果关系/组成性的事实是为什么它们需要大量训练数据。由于归一化的方式,正则化不是一个很好的解决方案。更好的解决办法是更改它们的偏差,如Hinton目前正在尝试的那样,使用胶囊对整个/零件几何图形进行建模,或者对交互网络进行建模。


2

首先,在深度学习的使用和积极研究中都有大量的正则化方法。因此,您的前提并不确定。

对于使用的方法,重量衰减是通过梯度下降直接对重量执行L2惩罚。取权重的平方范数的梯度,并在每次迭代时向该方向添加一小步。辍学也被认为是正规化的一种形式,它强加了一种平均结构。这似乎暗示着对具有共享参数的网络集合的L2惩罚。

您大概可以提高这些或其他技术的水平,以解决小样本问题。但是请注意,正规化意味着要强加先验知识。例如,权重的L2惩罚意味着权重为高斯先验。正则化程度的提高实质上表明您的先验知识越来越确定,并使您的结果偏向于先验知识。因此,您可以执行此操作,它的过拟合程度会降低,但偏置输出可能会降低。显然,解决方案是更好的先验知识。对于图像识别,这意味着有关问题统计信息的结构化先验。这个方向的问题是您要施加很多领域专业知识,而避免强加人类专业知识是您使用深度学习的原因之一。


+1表示偏见。为什么不用偏见和方差来解释整个事情呢?“过度拟合”没有精确的数学定义,表示不存在二分法(“过度拟合” /“非过度拟合”)。
乔什

2

为了阐明我的想法:假设我们使用大型Deep NNet来尝试对数据建模,但是数据集很小,实际上可以通过线性模型建模。那么为什么网络权重不会以一种神经元模拟线性回归而所有其他神经元收敛为零的方式收敛呢?为什么正则化对此没有帮助?

可以像这样训练神经网络。如果使用正确的L1正则化,则许多权重可以归零,这将使神经网络的行为类似于1个左右线性回归神经元和许多其他零个神经元的串联。是的-L1 / L2正则化或类似的正则化可用于限制神经网络的大小或表示能力。

实际上,模型本身的大小是一种正则化-如果您将模型放大,则意味着您要注入有关该问题的先验知识,即问题非常复杂,因此它需要具有较高表示能力的模型。如果将模型缩小,则意味着您需要注入知识,即问题很简单,因此模型不需要太多容量。

这意味着L2正则化将不会使网络像您所描述的那样“稀疏”,因为L2正则化会注入先验知识,即每个神经元(权重)的贡献应该很小,但不应为零。因此,网络将使用每个神经元,而不是仅使用少量神经元。


1

大号2大号1个

这里的关键是,正规化并不总是有用。相反,对可能应该为真的东西进行正则化非常有帮助,但是朝错误的方向进行正则化显然很不好。

大号2

但是现在假设我们的数据是馈入深度神经网络的猫的图像。如果实际上“尖耳朵”对识别猫非常有帮助,也许我们希望减少惩罚以赋予这种更大的预测能力。但是我们不知道它将在网络中的何处代表!我们仍然可以引入惩罚,以使系统的一小部分不支配整个网络,但是在此之外,很难以有意义的方式引入正则化。

总而言之,将先前的信息整合到我们不了解的系统中非常困难。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.