利用循环神经网络对序列数据进行建模
长短期记忆单元(LSTM)
LSTM最初是为了克服梯度消失问题而提出的。LSTM的基本构建块是记忆单元,它本质上代表或取代了标准RNN的隐藏层。
在每个记忆单元中,有一个循环边,其权重 $w = 1$,这有助于克服梯度消失和梯度爆炸问题。与这个循环边相关的值统称为单元状态。现代LSTM单元的展开结构中,前一个时间步的单元状态 $C(t - 1)$ 经过修改得到当前时间步的单元状态 $C(t)$,且不直接与任何权重因子相乘。记忆单元中的信息流动由几个计算单元(通常称为门)控制。
在LSTM单元中,有三种不同类型的门:
- 遗忘门($f_t$) :允许记忆单元重置单元状态,避免其无限增长。它决定哪些信息可以通过,哪些信息需要抑制。计算公式为:$f_t = \sigma(W_{xf}x(t) + W_{hf}h(t - 1) + b_f)$。遗忘门并非原始LSTM单元的一部分,是后来为改进原始模型而添加的。
- 输入门($i_t$)和候选值($\tilde{C}_t$) :负责更新单元状态。计算公式分别为:$i_t = \sigma(W_{xi}x(t) + W_{hi}h(t - 1) + b_i)$,$\tilde{C} t = \tanh(W {xc}x(t) + W_{hc}h(t - 1) + b_c)$。时间 $t$ 的单元状态计算公式为:$C(t) = (C(t - 1) \odot f_t) \oplus (i_t \odot \tilde{C} t)$。
- 输出门($o_t$)
超级会员免费看
订阅专栏 解锁全文
9421

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



