Understanding LSTM(理解长短期记忆网络)

http://colah.github.io/posts/2015-08-Understanding-LSTMs/

这篇文章用形象的图片结合实例阐述了 LSTM(长短期记忆网络) 出现的背景以及它的工作方式。

LSTM 可以解决 RNN(循环神经网络)无法「记住」距离当前处理 Seq 较远的内容这个问题。比如「我出生在中国,......,我能熟练讲__」,如果让它填空的话,没有 LSTM,RNN 可能无法知道应该填什么,因为「中国」这个 Context 距离比较远,在处理「我能熟练讲」这个序列时,有可能已经丢失了这个重要的 Context。有了 LSTM 就可以解决这个问题。

LSTM 也有跟 RNN 类似的链状结构,也会接收前一个 layer 的输入,结合当前在 Process 的 word,通过 sigmoidtanh 这样的激活函数的组合来决定应该「遗忘」哪些 context,「记住」哪些新的 context,进而产生一个新的 context,再传给下一层。当 RNN 要进行预测时,就可以将这个 context 也考虑进来。以上面的例子来说,中国 会包含在 context 里,这样的话,就很容易推断出待填充的内容是「普通话」。

LSTM 的能力好像是从一个大的信息体中,抽取关键信息,因此也可以用来描述图像,或者归纳文章等场景。

❤️