为更新数据训练神经网络

Training neural network for updated data

我有一个在某些数据集上训练过的神经网络。假设数据集最初有 10k 个数据点,现在又添加了 100 个数据点。有没有办法让我的神经网络无需从头开始训练就可以学习整个(更新的)数据集?此外,灾难性干扰是否适用于此?我知道当 NN 尝试学习 "new information" 时,灾难性干扰适用,但我不确定 "updated (due to insertions) information" 是否算作 "new information"。

确实,不幸的是灾难性干扰(或遗忘)适用于您的情况。 但是有一个深度学习的分支专注于这个问题,叫做 Continual Learning

Online Learning 指适应增量可用/连续输入数据流的模型。

灾难性干扰确实是个问题,具体取决于您的模型、数据和问题。

如果您假设:

  1. 你的新数据 D2 是 i.i.d,从与原始数据集 D1
  2. 相同的分布中采样
  3. 您的原始模型是使用 'mini-batches' 数据集
  4. 训练的
  5. D2 的大小 >= 使用的小批量的大小

您可以将 D2 拆分成新的 mini-batches 并从您停止的地方继续训练。

但如果不是这种情况,它确实很可能容易受到灾难性遗忘的影响,因为任务名义上是相同的,但领域(数据的基本分布)正在发生变化。在这种情况下,如果对整个(更新的)数据集进行再训练不可行,您将需要研究 Continual Learning 专门用于缓解这种情况的方法。