GRU网络
一:GRU简介
GRU玩咯是对LSTM网络的简化,GRU使记忆体ht融合了长期记忆和短期记忆,ht包含了过去信息ht-1和现在信息h`t,现在信息是过去信息ht-1过重置门与当前输入共同决定,两个门限的取值范围也是0到1之间。前向传播时,直接使用这个记忆体更新公式就可以算出每个时刻的ht值了。公式如下:
- 更新门:zt = α(Wz[ht-1, xt])
- 重置门:rt = α(Wr[ht-1, xt])
- 记忆体:ht = (1-zt) * ht-1 + zt * h`t
- 候选隐藏层:h`t = tanh(W[rt * ht-1, xt])
二:Tensorflow描述GRU层
tf.keras.layers.GRU(记忆体个数,return_sequences=是否返回输出)
# return_sequences = True 各时间步输出ht
# return_sequendes = False 仅最后时间步输出ht
# 一般最后一层用False,中间层用True