1

我正在使用 LSTM 和 tensorflow 的翻译模型训练会话代理。我使用批量训练,导致每个 epoch 开始后训练数据的困惑度显着下降。这种下降可以通过我批量读取数据的方式来解释,因为我保证我的训练数据中的每个训练对每个时期都只处理一次。当一个新的 epoch 开始时,模型在之前的 epoch 中所做的改进将在再次遇到训练数据时显示其收益,表示为图中的下降。其他批处理方法,例如 tensorflow 的翻译模型中使用的方法,不会导致相同的行为,因为它们的方法是将整个训练数据加载到内存中,并从中随机选择样本。

在此处输入图像描述

步骤,困惑

  • 330000, 19.36
  • 340000, 19.20
  • 350000, 17.79
  • 360000, 17.79
  • 370000, 17.93
  • 380000, 17.98
  • 390000, 18.05
  • 400000, 18.10
  • 410000, 18.14
  • 420000, 18.07
  • 430000, 16.48
  • 440000, 16.75

(从 perplexity 中截取的小片段显示在 350000 和 430000 处下降。在下降之间,perplexity 略有上升)

但是,我的问题是关于下跌后的趋势。从图中可以清楚地看出,困惑度略有上升(对于 step ~350000 之后的每个 epoch),直到下一次下降。有人可以就为什么会发生这种情况给出答案或理论吗?

4

1 回答 1

0

这将是典型的过度拟合。

于 2017-08-15T18:48:01.960 回答