Keras:LSTM丢失与LSTM重复丢失之间的差异

Alo*_*orz 52 lstm keras dropout

从Keras文档:

dropout:浮点数介于0和1之间.为输入的线性变换而下降的单位的分数.

recurrent_dropout:浮点数在0和1之间.对于循环状态的线性变换,单位的分数下降.

任何人都可以指出每个辍学下面的图像在哪里发生?

在此输入图像描述

Mic*_*tti 56

我建议采取一看(第一部分)本文.在输入和/或输出上应用常规丢失,表示从x_t和到的垂直箭头h_t.在您的情况下,如果将其作为参数添加到图层,它将掩盖输入; 您可以在重复图层之后添加Dropout图层以屏蔽输出.循环辍学掩模(或"掉落")循环单元之间的连接; 这将是你图片中的水平箭头.

这张照片取自上面的论文.在左侧,输入和输出经常丢失.在右边,定期辍学PLUS反复辍学:

这张照片取自上面的论文. 在左侧,输入和输出经常丢失. 在右边,定期辍学PLUS反复辍学.

(在这种情况下忽略箭头的颜色;在论文中,他们进一步指出在每个时间步长保持相同的辍学掩模)

  • 并且似乎在层上单独应用了(常规)dropout =参数,而在单独层上则应用了dropout。这些方法之间的有效区别是什么? (3认同)

小智 10

上面的答案强调了一种循环 dropout 方法,但 tensorflow 和 keras 不使用该方法。张量流文档

Keras/TF 指的是Semeniuta 等人提出的循环方法。另外,请检查下面比较不同循环 dropout 方法的图像。上面答案中提到的Gal 和 Ghahramani方法排在第二位,而 Semeniuta 方法是最正确的。

在此处输入图片说明