谁能告诉我为什么LSTM被称为长和短两种内存? 我知道在LSTM中,它们存储了以前状态的一些数据。 但是,如果将其存储为短时间,则为何将其称为长期存储器,如果将其存储为长时间,则为何将其称为短期存储器。 令人困惑!
答案 0 :(得分:1)
长期短期记忆意味着在长期时间段内存储短期数据。
以一段文字为例。 “巴尼是一只大红狗,耳朵很小,尾巴又长又黑。他今年 12 岁”。如果您的任务是找出第二句话中“他”指的是什么,您可以将这些数据发送到 LSTM 网络,然后它会单独分析每个单词。单个单词的计算是短期记忆。然而,每个单词(隐藏状态)的计算,就像你说的,在分析下一个单词时会被传递和包含。 LSTM 网络改进了标准 RNN,能够为许多状态存储这些数据,因此可以在 长时间 时间段内存储短期数据(单个词的计算)(将隐藏状态传递到下一个字)。
可能一个普通的 RNN 可以处理上面的例子,但是如果你输入一个 100 个单词的文本,一个普通的 RNN 将无法存储所有数据,导致梯度消失或爆炸。所以 RNN 能够存储短期数据,就像 LSTM 一样,只是 LSTM 可以在更长时间段(通常是时间)内完成。
答案 1 :(得分:0)
通用RNN能够学习短期依赖性。
LSTM是RNN的一种特殊类型,它具有一种机制来避免梯度消失的问题并学习长期依赖性。它仍然能够学习短期依赖关系,因此命名为“长期-短期记忆”。