NLP深度学习 —— CS224学习笔记9

2.1梯度爆炸或消失

计算RNN的误差,我们计算每一步的误差并累加

每一步的误差通过微分链法则进行

在[k, t]时间区间内对于所有隐藏层的计算

每个是h的雅各宾矩阵

NLP深度学习 —— CS224学习笔记9_第1张图片

结合上述表达,我们得到

beta_w和beta_h代表两个矩阵范式的上限值。每个t时间戳偏分梯度的的范式

两个矩阵的范式通过L2正则来计算。

容易变得很大或很小,导致梯度爆炸或消失。

2.2解决方法

为解决梯度爆炸问题,Mikolov提出的方法简单直接,当梯度变大时进行剪切

NLP深度学习 —— CS224学习笔记9_第2张图片

为解决梯度消失问题,第一是矩阵初始化时进行仔细选择,而不是随机初始化。

第二是使用ReLU而不是sigmoid函数,这样微分要么0要么1,梯度在微分为1的神经元流动,反向传播时不会减弱。

你可能感兴趣的:(NLP)