CNN训练损失在纪元末期会定期增加

时间:2020-02-29 14:33:28

标签: machine-learning deep-learning pytorch cnn sgd

我正在与Adam一起在PyTorch中训练CNN,初始学习率为1e-5。我的纪元中有5039个样本,批次大小为1。我观察到,在纪元末期,我有规律的训练损失峰值模式。这是训练损失的图: enter image description here

从图中可以看到尖峰的清晰图案,这些尖峰恰好发生在时代的尽头。我的时代包含5039个样本。有趣的是,尖峰不仅会下降,有时还会上升。

我不认为的是

  • 如果没有洗牌,就可以解释这些峰值。 数据集。但是,我会在每个时期重新整理我的数据集。

  • 当最后一批时间为 比其他批次小,导致不同程度的 失利 (Why does my training loss have regular spikes?)。 但是,这不是我的情况,因为我的批处理大小为1。

一个潜在的技巧可能是在更新步骤之前应用渐变裁剪。但是,对于我来说,这似乎不是一个好方法。

  1. 您对这种尖峰模式的原因有何看法?
  2. 多么糟糕 有这种模式吗?

0 个答案:

没有答案