目录
LSTM
首先看一下LSTM的结构:
我们将结构拆开看:
遗忘门:
就是将上一层的输出,和本层的输入联合起来乘个权重,加个偏置。最后经过一个sigmoid。。sigmoid函数值为0代表忘记
记忆门:
C_{t-1}就是来自上一层记忆,我们现在要计算本层传给下一层的记忆 C_t
输出门:
本层的输出 h_t
GRU
GRU网络只有两个门,分别是更新门和重置门。 也就是图中 Zt 和 Rt 的计算。
更新门:是用来控制前一个时刻的信息被带入到当前时刻状态的程度。 更新门的值越大说明前一时刻的状态信息带入越多
重置门:用于控制忽略前一时刻的状态信息的程度,重置门的值越小说明忽略得越多。
首先看一下GRU网络结构:
然后我们看一下它各个门的计算
最后说一下LSTM和GRU的区别:
- 1:GRU参数比LSTM少,所以容易收敛。 数据集大的情况下,LSTM的表达性能还是比GRU好。
- 2:在一般数据集上 GRU和LSTM的性能差不多
- 3:从结构上来说,GRU只有两个门(update和reset),LSTM有三个门(forget,input,output),GRU直接将hidden state 传给下一个单元,而LSTM则用memory cell 把hidden state 包装起来。
这里总结的还不到位,后面会补充。。。