NNDL 作业10:第六章课后题(LSTM | GRU)

目录

习题6-3 当使用公式(6.50)作为循环神经网络的状态更新公式时,分析其可能存在梯度爆炸的原因并给出解决方法.

习题6-4 推导LSTM 网络中参数的梯度,并分析其避免梯度消失的效果.

习题6-5推导GRU网络中参数的梯度,并分析其避免梯度消失的效果. (选做)

附加题 6-1P 什么时候应该用GRU?什么时候用LSTM?

参考


习题6-3 当使用公式(6.50)作为循环神经网络的状态更新公式时,分析其可能存在梯度爆炸的原因并给出解决方法.

 1.梯度爆炸问题:令z_{k}=Uh_{k-1}+Wx_{k}+b为在第k时刻函数g(\cdot )的输入,在计算误差项\delta_{t, k}=\frac{\partial \mathcal{L}_{t}}{\partial z_{k}}时,梯度可能会过大,从而导致梯度爆炸问题

2.记忆容量问题:随着h_{t}不断积累存储新的输入信息,会发生饱和现象。假设g(\cdot )为Logistic,则随着时间t的增长,h_{t}会变得越来越大,从而导致h变得饱和,也就是说,隐状态h_{t}可以存储的信息是有限的,随着记忆单元存储的内容越来越多,其丢失的信息也越来越多。

为了解决这些问题,可以通过引入门控来进一步改进模型

习题6-4 推导LSTM 网络中参数的梯度,并分析其避免梯度消失的效果.

其中E为损失函数,由于LSTM中通过门控机制解决梯度问题,遗忘门,输入门和输出门是非0就是1的,并且三者之间都是相加关系,梯度能够很好的在LSTM传递,减轻了梯度消失发生的概率,门为0时,上一刻的信息对当前时刻无影响,没必要接受传递更新参数了。
 

习题6-5推导GRU网络中参数的梯度,并分析其避免梯度消失的效果. (选做)

 

所谓防止梯度消失,其实就是防止时间距离过大的两层神经元的参数w之间的联系过少,即d_{w_{j}}/d_{w_{i}}过小,j和i的距离很大。

GRU向前传播

我们可以看到,差别就是r和z的出现,**r是重置门,决定遗忘先前信息的程度。z是更新门,它决定了要忘记哪些信息以及哪些新信息需要被添加。**在添加这两个门之前,我们是完全接受h_{t}而不再使用h_{t-1}的,但是因为有了z门,我们对h_{t-1}也赋予了话语权,这是最重要的,前面的激活值可以直接参与影响后面的激活值,即h_{t-1}可以直接影响h_{t}

假如使用原始的结构的话,可以说影响很小,但是使用了GRU之后,我们可以看到上面,我们完全可以使中间经过的层的z等于0,这样的话,就可以使得d_{w_{i}} 直接影响d_{w_{j}}

附加题 6-1P 什么时候应该用GRU?什么时候用LSTM?

LSTM是一种拥有三个“门”结构的特殊网络结构,包括遗忘门信息增强门以及输出门,如下图所示:

 LSTM循环体的结构组成,具体公式如下所示:

GRU可以看成是LSTM的变种,GRU把LSTM中的遗忘门和输入门用更新门来替代。 把cell state和隐状态\small h_t进行合并,在计算当前时刻新信息的方法和LSTM有所不同。 GRU更新\small h_t的过程如下图诉所示:

LSTM和GRU之间的区别

  1. GRU和LSTM的性能在很多任务上不分伯仲。
  2. GRU 参数更少因此更容易收敛,但是数据集很大的情况下,LSTM表达性能更好。
  3. 从结构上来说,GRU只有两个门,LSTM有三个门,GRU直接将hidden state 传给下一个单元,而LSTM则用memory cell 把hidden state 包装起来。

LSTM 能够解决循环神经网络因长期依赖带来的梯度消失和梯度爆炸问题,但是 LSTM 有三个不同的门,参数较多,训练起来比较困难。GRU只含有两个门控结构,且在超参数全部调优的情况下,二者性能相当,但是 GRU 结构更为简单,训练样本较少,易实现。

参考

NNDL 作业10:第六章课后题(LSTM | GRU)_HBU_David的博客-CSDN博客

LSTM和GRU如何选择?RNN模型超详细介绍_Yunlord的博客-CSDN博客_什么时候应该用gru? 什么时候用lstm?

GRU神经网络-介绍_平清盛_v2的博客-CSDN博客_gru神经网络

彻底看懂RNN,LSTM,GRU,用数学原理解释梯度消失或者梯度爆炸_sherlock31415931的博客-CSDN博客

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值