在处理时序数据,已经有RNN循环神经网络和GRU神经网络两个比较经典的网络。当然还有一种LSTM神经网络,长短期记忆神经网络。
从发展历史来看,是现有LSTM再有GRU的,但是从复杂度来看,LSTM比GRU更加复杂。
先来回忆一下GRU,其有两个门(更新门和重置门),有一个记录历史信息的向量 H t H_t Ht。
而LSTM就更加复杂了,无论是在门的数量上还是记录历史信息的向量上。
LSTM神经网络
其一共有3个门,2个状态。

控制门
遗忘门
这个与GRU中的重置门非常类似,含义也是大致相同。
F t = Θ ( X t ⋅ W x f + H t − 1 ⋅ W h f + b f ) F_t = \Theta\left(X_t\cdot W_{xf} + H_{t - 1}\cdot W_{hf} + b_f\right) Ft=Θ(Xt⋅Wxf+Ht−1⋅Whf+bf)
而后, F t F_t Ft作用于记忆 C t − 1 C_{t-1} C

本文详细介绍了LSTM(长短期记忆网络)和GRU(门控循环单元)两种时序数据处理的神经网络结构。相较于GRU的两个门(重置门和更新门),LSTM拥有三个门(遗忘门、输入门和输出门)以及两个状态(记忆状态和隐状态),使其在处理长期依赖问题时更为强大。LSTM的复杂性在于其额外的控制门,这允许更精细地管理信息流。文章还给出了使用PyTorch实现LSTM的代码示例,包括如何初始化网络状态。

1万+

被折叠的 条评论
为什么被折叠?



