我正在训练一个 2 层、1024 个节点,在自然文本上丢失 0.5 RNN。具体来说,我正在使用karpathy 的 char-rnn,我发现它在我的大多数用例中都能很好地工作。然而,有时,在训练的后期,我的错误会急剧增加,我不知道为什么会这样。
问题是特别问我为什么观察到错误的急剧增加,以及在实践中如何处理。除了采用最后一个已知的好模型之外,还可以做些什么来防止这种情况发生?
我正在训练一个 2 层、1024 个节点,在自然文本上丢失 0.5 RNN。具体来说,我正在使用karpathy 的 char-rnn,我发现它在我的大多数用例中都能很好地工作。然而,有时,在训练的后期,我的错误会急剧增加,我不知道为什么会这样。
问题是特别问我为什么观察到错误的急剧增加,以及在实践中如何处理。除了采用最后一个已知的好模型之外,还可以做些什么来防止这种情况发生?
最可能的原因是学习率太高,尤其是学习率调度程序。相对较高的学习率会导致模型离开早期训练的最优值。