反馈RNN和LSTM/GRU的区别

机器算法验证 神经网络 lstm 循环神经网络 格鲁
2022-01-22 18:19:33

我正在尝试了解要应用于时间序列数据的不同循环神经网络 (RNN) 架构,但我对描述 RNN 时经常使用的不同名称感到有些困惑。长短期记忆(LSTM)和门控循环单元(GRU)的结构本质上是一个带有反馈回路的RNN吗?

4个回答

所有 RNN 在循环层中都有反馈循环。这使他们可以随着时间的推移将信息保存在“内存”中。但是,训练标准 RNN 来解决需要学习长期时间依赖性的问题可能很困难。这是因为损失函数的梯度随时间呈指数衰减(称为梯度消失问题)。LSTM 网络是一种 RNN,除了标准单位外,还使用特殊单位。LSTM 单元包括一个“记忆单元”,可以在记忆中长时间保存信息。一组门用于控制信息何时进入内存、何时输出以及何时被遗忘。这种架构让他们学习更长期的依赖关系。GRU 类似于 LSTM,但使用了简化的结构。

这篇论文给出了一个很好的概述:

钟等人。(2014 年)门控循环神经网络对序列建模的实证评估。

标准 RNN(循环神经网络)存在梯度消失和爆炸的问题。LSTM(长短期记忆)通过引入新的门(例如输入门和遗忘门)来处理这些问题,这可以更好地控制梯度流并更好地保留“长期依赖关系”。RNN 中的长距离依赖是通过增加 LSTM 中的重复层数来解决的。

循环神经网络

RNN 架构

长短期记忆体LSTM 架构

更多细节:了解 LSTM

LSTM 通常被称为花哨的 RNN。Vanilla RNN 没有细胞状态。它们只有隐藏状态,这些隐藏状态用作 RNN 的记忆。

同时,LSTM 同时具有单元状态和隐藏状态。细胞状态具有向细胞移除或添加信息的能力,由“门”控制。并且由于这个“细胞”,理论上 LSTM 应该能够处理长期依赖(实际上很难做到)。

TL;博士

我们可以说,当我们从 RNN 转移到 LSTM(长短期记忆)时,我们正在引入越来越多的控制旋钮,它们根据训练的权重控制输入的流动和混合。因此,在控制输出方面带来了更大的灵活性。因此,LSTM 为我们提供了最大的控制能力,从而获得了更好的结果。但也带来了更多的复杂性和运营成本。

参考


[注意]:

GRU 比 LSTM 更好,因为它易于修改并且不需要内存单元,因此比 LSTM 更快地训练并根据性能给出。实际上,关键的区别不止于此:长短期 (LSTM) 感知器是使用动量和梯度下降算法组成的。


这张图片展示了它们之间的区别:

在此处输入图像描述