为什么太多的时期会导致过度拟合?

时间:2018-12-27 09:22:02

标签: machine-learning gradient-descent

我正在阅读python的深度学习书。 在阅读了第4章“对抗过度拟合”之后,我有两个问题。

  1. 为什么增加时期数会导致过度拟合? 我知道增加纪元数会涉及到更多的梯度下降尝试,这会导致过度拟合吗?

  2. 在过度拟合的过程中,准确性会降低吗?

2 个答案:

答案 0 :(得分:5)

我不确定您正在阅读哪本书,因此在我专门回答问题之前,一些背景信息可能会有所帮助。

首先,增加时期数并不一定会导致过度拟合,但确实可以。如果学习率和模型参数较小,则可能需要花费很多时间才能导致可测量的过度拟合。也就是说,通常需要进行更多培训。

为使问题更清晰,重要的是要记住,我们最常使用神经网络来构建可用于预测的模型(例如,预测图像是否包含特定对象或变量值将在下一步)。

我们通过迭代地调整权重和偏差来构建模型,以便网络可以充当在输入数据和预测输出之间转换的功能。我们之所以选择此类模型有多种原因,通常是因为我们只是不知道函数应该/应该是什么,或者函数过于复杂而无法进行分析开发。为了使网络能够对这种复杂的功能进行建模,网络本身必须具有高度的复杂性。尽管这种复杂性非常强大,但却很危险!该模型可能变得如此复杂,以至于它可以非常精确地有效记住训练数据,但随后却无法充当有效的通用功能,无法对训练集之外的数据起作用。即它可能会过拟合。

您可以认为它有点像某人(该模型),它一次又一次地烘焙水果蛋糕(训练数据)来学习烘焙–很快,他们将能够不使用而烘焙出出色的水果蛋糕食谱(培训),但他们可能无法很好地烘烤海绵蛋糕(看不见的数据)。

回到神经网络!由于使用神经网络进行过度拟合的风险很高,因此深度学习工程师可以使用许多工具和技巧来防止过度拟合,例如使用辍学。这些工具和窍门统称为“规则化”。

这就是为什么我们使用涉及测试数据集的开发和培训策略的原因-我们假装看不见测试数据,并在培训过程中对其进行监视。您可以在下面的图表(image credit)中看到一个示例。尽管训练精度保持在最小值(通常训练精度会不断提高),但在大约50个星期之后,随着模型开始“记忆训练集”,测试准确性开始提高。

Example of Overfitting

因此,回答您的问题:

  1. 允许模型继续训练(即,更多的时期)会增加权重和偏差的调整风险,以至于模型在看不见(或测试/验证)的数据上表现不佳。该模型现在只是“存储训练集”。

  2. 连续的纪元可能会很好地提高训练的准确性,但这并不一定意味着该模型对新数据的预测将是准确的–通常情况实际上会变得更糟。为了防止这种情况,我们使用测试数据集并在训练过程中监控测试准确性。这样一来,我们就可以更明智地决定模型是否对于看不见的数据变得更加准确。

我们可以使用称为 early stop 的技术,通过这种技术,一旦测试精度在少数时间段内停止提高后,就停止训练模型。提前停止可以被认为是另一种正则化技术。

答案 1 :(得分:0)

更好的尝试(大量的epochs)可以让你在理想情况下非常接近损失函数的全局最小值,现在由于我们对测试数据一无所知,所以精确地拟合模型以预测类别训练数据的标签可能会导致模型失去泛化能力(对未见数据的错误)。在某种程度上,毫无疑问我们想从训练数据中学习输入-输出关系,但我们不能忘记,最终目标是让模型在看不见的数据上表现良好。因此,保持接近但不要非常接近全局最小值是一个好主意。 但是,我们仍然可以问,如果我达到了全局最小值会怎样,那会有什么问题,为什么会导致模型在看不见的数据上表现不佳? 对此的答案可能是,为了达到全局最小值,我们将尝试拟合最大数量的训练数据,这将导致一个非常复杂的模型(因为不太可能有选定的更简单的空间分布幸运的是,我们可以获得的列车数据数量)。但是我们可以假设的是,大量看不见的数据(比如面部识别)将具有更简单的空间分布,并且需要一个更简单的模型来进行更好的分类(我的意思是整个看不见的数据世界,肯定会有一个模式我们不能仅仅因为我们可以以训练数据的形式访问其中的一小部分而观察到)

如果你从一个分布中增量地观察点(比如 50,100,500, 1000 ...),我们肯定会找到数据复杂的结构,直到我们观察到足够多的点(最大值:整个分布),但是一旦我们观察到足够多的点,我们就可以期望观察到数据中存在的更简单的模式,这些模式可以轻松分类。

简而言之,与整个数据集相比,一小部分训练数据应该具有复杂的结构。对训练数据的过度拟合可能会导致我们的模型在测试数据上表现更差。

在日常生活中强调上述现象的一个类似例子如下:-

假设我们一生中遇到了 N 个人,在遇到他们时我们自然会向他们学习(我们成为我们周围的人)。现在,如果我们深受每个人的影响,并试图非常密切地适应所有人的行为,我们就会发展出一种与我们遇到的人非常相似的个性,但另一方面,我们开始判断每个与我不同的人—— > 不像我们已经见过的人。变得有判断力会影响我们适应新群体的能力,因为我们非常努力地训练以尽量减少与我们已经见过的人(训练数据)的差异。在我看来,这是一个很好的例子,说明了过度拟合和总体能力损失。