有时我们想要丢弃记忆单元或单元状态中的信息,并将其替换为更新、更相关的信息。同时,我们还不希望向网络释放不必要的信息,以免使其余的递归网络产生混淆。为解决此问题,我们为 LSTM 单元设计了一个遗忘门,遗忘门可删除自循环单元中的信息以为新的记忆腾出空间。删除信息时,遗忘门不会向网络释放信息,因而可避免潜在的混淆事故。遗忘门通过将记忆单元的值乘以 0(删除)和 1(保留所有内容)之间的某个数值来实现此目的。确切值则由当前输入和前一时间步的 LSTM 单元输出确定。
在其他情况下,记忆单元还包含需为许多时间步保留的值。为此,LSTM 模型增加了另一个门(即输入门或写入门),此门可以关闭以防止新信息流入记忆单元(参见图 1)。如此便可保护记忆单元中的数据,直至需要调用时为止。
另一个门则通过将记忆单元的输出乘以 0(无输出)和 1(保留输出)之间的某个数值,以此操控记忆单元的输出(参见图 1)。如果多个记忆互相竞争,此输出门便可能发挥作用。