我知道 LSTM 循环神经网络有一个遗忘门、输入门和输出门。
但是,我不明白下面的等式如何计算“忘记”信息(来自 Chris Olah 的LSTM 帖子)
这个遗忘门如何决定从先前的单元状态中丢弃哪些信息?换句话说,忘记了什么。
在我看来,这个等式只需要从当前状态和从之前的状态。
有人能解释一下这个方程是如何作为一个遗忘门来保留或丢弃细胞状态的吗?
我知道 LSTM 循环神经网络有一个遗忘门、输入门和输出门。
但是,我不明白下面的等式如何计算“忘记”信息(来自 Chris Olah 的LSTM 帖子)
这个遗忘门如何决定从先前的单元状态中丢弃哪些信息?换句话说,忘记了什么。
在我看来,这个等式只需要从当前状态和从之前的状态。
有人能解释一下这个方程是如何作为一个遗忘门来保留或丢弃细胞状态的吗?
的方程和值本身并不能完全解释门。您需要查看下一步的第一个术语:
向量即遗忘门的输出,用作与前一个单元状态的元素相乘. 正是在这个阶段,个体的元素被“记住”或“被遗忘”。
由于 sigmoid 函数,向量表现得像每个元素的二元分类器,饱和值倾向于选择不修改在所有(价值)或“忘记”之前的值是什么(值)。当然中间值也是可能的,简单地记住和忘记值之间的类比就不那么直接了。
与遗忘或记忆的类比有助于理解在多个时间步上保留梯度的改进。对于任何步骤,其中一个元素接近(因此先前时间步长的影响被“记住”),然后相应的梯度元素从到保持不变,避免在更简单的 RNN 架构中看到的梯度损失(尤其是与饱和值相关的)。一旦前一个元素在被“遗忘”,则时间步之间的误差梯度连接被切断。