Keras LSTM:dropout vs recurrent_dropout

时间:2018-04-20 11:07:25

标签: deep-learning keras lstm recurrent-neural-network dropout

我发现这篇文章向this提出了类似的问题。

但我只是想要澄清一下,最好是链接到某种Keras文档,说明不同之处。

在我看来,dropout在神经元之间起作用。并且recurrent_dropout在时间步之间运行每个神经元。但是,我没有任何基础。

Keras webite上的文档根本没用。

1 个答案:

答案 0 :(得分:3)

Keras LSTM文档包含高级解释:

  

dropout :在0和1之间浮动。为输入的线性变换而下降的单位的分数。

     

recurrent_dropout :在0和1之间浮动。线性转换的单位的分数   经常性的状态。

但这完全对应于您所指的the answer

  

在输入和/或输出上应用常规丢失,表示从x_th_t的垂直箭头。 ...

     

经常性辍学掩模(或“掉落”)经常性单位之间的连接;这将是你图片中的水平箭头。

如果您对公式级别的详细信息感兴趣,最好的方法是检查源代码:keras/layers/recurrent.py,查找rec_dp_mask(循环丢失掩码)和dp_mask。一个影响h_tm1(前一个内存单元格),另一个影响inputs