假设我正在训练一个神经网络(例如卷积网络或 LSTM)。
一般来说,训练时间越长(epochs 越多)会导致更好的准确性,尽管有时会以过度拟合为代价。
另一种方法是复制数据。同样,如果我有 1000 个示例,我可以将它们复制 10 次并将它们随机化,神经网络将学习得更好(但同样,它可能无法很好地泛化)。
在训练神经网络的学习方面,复制数据和添加 epoch 之间有什么区别吗?
假设我正在训练一个神经网络(例如卷积网络或 LSTM)。
一般来说,训练时间越长(epochs 越多)会导致更好的准确性,尽管有时会以过度拟合为代价。
另一种方法是复制数据。同样,如果我有 1000 个示例,我可以将它们复制 10 次并将它们随机化,神经网络将学习得更好(但同样,它可能无法很好地泛化)。
在训练神经网络的学习方面,复制数据和添加 epoch 之间有什么区别吗?
最明显的区别是,通过添加 epoch,您(仍然)永远不会在同一批次中获得两次相同的观察结果,而复制数据时并非如此。
我不是 NN 方面的专家,但似乎如果您不在重复数据中引入任何噪声,那么您还不如添加 epoch。
当然,如果你在一个 epoch 上拟合两个模型,
模型 1:使用您的 n=1000 观察值
模型 2:使用您的 n*10 = 10,000 次观察(有重复)
您的第二个模型很可能会返回较低的损失值。但是,更公平的比较是用 10 个 epoch 训练模型 1,以便在这两种情况下,您将网络暴露给您的观察的总次数相同。