您现在的位置是:首页 >技术教程 >LSTM-理解 Part-1(RNN:循环神经网络)网站首页技术教程
LSTM-理解 Part-1(RNN:循环神经网络)
在之前博主写过涉及到LSTM的博客见下:
机器学习 Pytorch实现案例 LSTM案例(航班人数预测)
该项目原始的博客版本是:
Time Series Prediction using LSTM with PyTorch in Python
循环神经网络RNN:Recurrent Neural Networks
人类的思维不是每秒都从零开始。当你阅读这篇文章时,你会根据之前的理解来理解每个单词。你不会抛弃所有的思考,然后重新开始思考。你的思想是持久的。
传统的神经网络无法做到这一点,这似乎是一个很大的缺点。例如,想象一下,你想对电影中每个时间点发生的事件进行分类。传统的神经网络如何利用关于电影中先前事件的推理来指导后来的事件是不清楚的。
循环神经网络解决了这个问题。它们是带有循环结构的网络,允许信息持续存在。
Recurrent Neural Networks have loops[循环]
在上面的图中,神经网络的一个块 A A A 接收一些输入 x t x_t xt 并输出一个值 h t h_t ht。循环结构允许信息从网络的一个步骤传递到下一个步骤。
这些循环使得循环神经网络看起来有点神秘。然而,如果你再仔细思考一下,就会发现它们并不比普通神经网络不同。可以将循环神经网络看作是多个相同网络的副本,每个副本向后继节点传递一条消息。考虑一下如果我们展开循环结构会发生什么:
图中 t t t 时刻的 A A A 中包含了 0 0 0 至 t − 1 t-1 t−1 时刻中 A A A 自身的信息,也包含了输入 x t x_t xt 的信息
这种类似链条的结构揭示了循环神经网络与序列和列表密切相关。它们是用于此类数据的神经网络的自然架构。
它们确实被广泛使用!在过去的几年中,人们在各种问题上应用循环神经网络取得了惊人的成功:语音识别,语言建模,翻译,图像字幕等等。这个列表还可以继续下去。我将把关于使用循环神经网络可以实现的惊人成就的讨论留给 Andrej Karpathy 的博客文章《循环神经网络的不合理有效性》。但它们确实非常惊人。
这些成功的关键是使用 “LSTM”,这是一种非常特殊的循环神经网络,对于许多任务来说比标准版本要好得多。几乎所有基于循环神经网络的令人兴奋的结果都是通过它们实现的。这篇文章将探讨这些 LSTMs。
Reference
YouTube视频:Illustrated Guide to LSTM’s and GRU’s: A step by step explanation