LSTM

一般结构

LSTM学习总结

Forget Gate Layer

Detail

ft=σ(Wf[ht1,xt]+bf) f_{t}=\sigma (W_{f}*[h_{t-1},x_{t}]+b_f)
决定信息保留程度,“1”代表完全保留,“0”代表完全舍弃

Input Gate Layer

Detail

it=σ(Wi[ht1,xt]+bi) i_t=\sigma (W_i*[h_{t-1},x_t]+b_i)
Ct=tanh(Wi[ht1,xt]+bi) C_t^{'}=tanh (W_i*[h_{t-1},x_t]+b_i)

Next

Ct=ftCt1+itCt C_t=f_t*C_{t-1}+i_t*C_t{'}

Output Gate Layer

Detail

ot=σ(Wo[ht1,xt]+bo) o_t=\sigma (W_o*[h_{t-1},x_t]+b_o)
ht=ottanh(Ct) h_t=o_t*tanh (C_t)

一些变形

Ct1C_{t-1}考虑进来

ft=σ(Wf[ht1,xt,Ct1]+bf) f_{t}=\sigma (W_{f}*[h_{t-1},x_{t},C_{t-1}]+b_f)
it=σ(Wi[ht1,xt,Ct1]+bi) i_t=\sigma (W_i*[h_{t-1},x_t,C_{t-1}]+b_i)
ot=σ(Wo[ht1,xt,Ct1]+bo) o_t=\sigma (W_o*[h_{t-1},x_t,C_{t-1}]+b_o)

默认it=1fti_t=1-f_t

Ct=ftCt1+(1ft)CtC_t=f_t*C_{t-1}+(1-f_t)*C_t{'}
LSTM学习总结

Gated Recurrent Unit(GRU)

特点

  1. 使用update gate代替forget & input gate
  2. 合并cell state 和 hidden state

Details

LSTM学习总结

From

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

相关文章: