『RNN 监督序列标注』笔记-第四章 LSTM(Long Short-Term Memory)
标准 RNN 在实际使用中能够有效利用的上下文范围很有限,这是由于经过若干次迭代,隐含层权重值要么消失要么爆炸。Long Short-Term Memory (LSTM)结构解决了这一问题。
网络结构
LSTM 具有记忆单元,每个单元含有记忆细胞和3个倍增单元(输入、输出以及遗忘门)。如图所示 :
展示了一个 LSTM 网络结构,包含4个输入,5个输出,2个 LSTM 记忆细胞。
预处理的影响
LSTM 用于解决长时间范围上下文信息,如果能够找到从长时间范围依赖信号到短时间范围依赖信号之间的转换关系,就没有必要使用 LSTM,可以直接使用隐马尔科夫模型。
网络公式
脚标
ι , ϕ , ω
分别代表输入、遗忘和输出门。
w i j
是从
i
到 j 的权重连接。在
t
时刻神经元 j 的输入定义为
a t j
,而
j
的激活值定义为 b t j 。脚标
c
代表了 C 个记忆细胞中的一个。从
c
细胞到输入、遗忘和输出门的窥视孔权重 依次为 w c ι , w c ϕ , w c ω 。
s t c
为细胞
c
在时间步 t 下的状态。
f
为门激活函数, g 和
h
分别为输入和输出激活函数。 I , K , H 分别为输入、输出数量以及隐藏层细胞数。
G
代表输入到隐藏层的总数,包含了细胞输入和门输入,以 g 进行索引。对于每个记忆单元只有一个细胞的情况,
G
等于 4 H 。其中有
δ t j = d e f ∂ ∂ a t j
前向过程
输入门
a t ι = ∑ i = 1 I w i ι x t i + ∑ h = 1 H w h ι b t − 1 h + ∑ c = 1 C w c ι s t − 1 c b t ι = f ( a t ι )
遗忘门
a t ϕ = ∑ i = 1 I w i ϕ x t i + ∑ h = 1 H w h ϕ b t − 1 h + ∑ c = 1 C w c ϕ s t − 1 c b t ϕ = f ( a t ϕ )
细胞状态
a t c = ∑ i = 1 I w i c x t i + ∑ h = 1 H w h c b t − 1 h s t c = b t ϕ s t − 1 c + b t ι g ( a t c )
输出门
a t ω = ∑ i = 1 I w i ω x t i + ∑ h = 1 H w h ω b t − 1 h + ∑ c = 1 C w c ω s t c b t ω = f ( a t ω )
细胞输出
b t c = b t ω h ( s t c )
反向过程
ε t c = d e f ∂ ∂ b t c ε t s = d e f ∂ ∂ s t c
细胞输出
ε t c = ∑ k = 1 K w c k δ t k + ∑ g = 1 G w c g δ t + 1 g
输出状态
δ t w = f ′ ( a t w ) ∑ c = 1 C h ( s t c ) ε t c
细胞状态
ε t s = b t w h ′ ( s t c ) ε t c + b t + 1 ϕ ε t + 1 s + w c ι δ t + 1 ι + w c ϕ δ t + 1 ϕ + w c ω δ t ω
细胞残差
ε t s = b t w h ′ ( s t c ) ε t c + b t + 1 ϕ ε t + 1 s + w c ι δ t + 1 ι + w c ϕ δ t + 1 ϕ + w c ω δ t ω δ t c = b t ι g ′ ( a t c ) ε t s
遗忘门
δ t ϕ = f ′ ( a t ϕ ) ∑ c = 1 C s t − 1 c ε t s
输入门
δ t ι = f ′ ( a t ι ) ∑ c = 1 C g ( a t c ) ε t s