LSTM和GRU网络的介绍和区别

版权声明:本博客属于shawroad所有,引用必须标明引用本博客地址。 https://blog.csdn.net/shawroad88/article/details/89472668

目录

 LSTM

 GRU

 最后说一下LSTM和GRU的区别


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 包装起来。

这里总结的还不到位,后面会补充。。。 

猜你喜欢

转载自blog.csdn.net/shawroad88/article/details/89472668