神经网络记忆数据意味着什么

数据挖掘 神经网络 深度学习
2021-09-20 01:44:12

我在很多地方都看到,有时神经网络只是简单地记住训练数据。这实际上意味着什么?

神经网络由一堆权重组成,这些权重根据输入数据进行训练和输出。它会为不同的输入输出不同的东西。这种记忆在哪里发挥作用?

2个回答

记忆与过拟合相同。内存由您的权重隐式表示。如果您的网络确实有足够的参数,它将能够记忆/过拟合。

为了理解我所说的过度拟合和记忆的意思,让我们看看多项式回归

yn=w0+w1xn+w2xn2+ε.

我们有三个系数。如果我们只有三个数据点(它们并不完全位于一条线上),我们可以拟合一个二次回归方程而不会出现任何错误。因此,该模型将通过使用三个系数来记忆数据。我们的损失为零,但如您所知,这个结果也很可能使模型过度拟合数据。

如果您有一个非常复杂的机器学习模型(即具有大量参数的模型)并且您尝试在相当小的数据集(即很少的样本)上对其进行训练,那么该模型具有记忆这些样本的能力。这意味着它将学习一组权重,对于每个输入样本,它将准确预测其标签!这很明显,因为模型的训练损失为零

这被称为过度拟合,这是一个问题,因为虽然模型在训练集上表现得很好,但它不能对看不见的数据进行泛化。

如果您想了解如何防止这种情况,我建议您阅读这篇文章