Stanford 深度自然语言处理 学习笔记(八)

Stanford 深度自然语言处理 学习笔记(八)

概率越大,越有可能是正确的表达。

Stanford 深度自然语言处理 学习笔记(八)

 

RNN

Stanford 深度自然语言处理 学习笔记(八)

 

关于梯度

Stanford 深度自然语言处理 学习笔记(八)

Stanford 深度自然语言处理 学习笔记(八)

Stanford 深度自然语言处理 学习笔记(八)

当t-k足够大且βWβh比1小或比1大时,指数(βWβh)t−k很容易为较小或较大的值。由于词距较远的交叉熵误差通过t-k来评估。当梯度消失时,在迭代t中词距较远的词对于预测下一个词的贡献度将会逐渐下降。 
在实验过程中,一旦梯度值增长很大,就会很容易探测到其引起的溢出(如:无穷与非数值);这就是梯度爆炸问题。然而,当梯度值接近于零时。对于语料集中词距较远的词,它将大大降低模型的学习质量并且梯度还会不断衰减;这就是剃度弥散问题。

解决方案:当梯度爆炸时截断梯度(当梯度大于一定阈值的的时候,将它截断为一个较小的数);为了解决梯度弥散的问题,第一种方法是将随机初始化Stanford 深度自然语言处理 学习笔记(八)改为一个有关联的矩阵初始化,第二种方法是使用ReLU(Rectified Linear Units)代替sigmoid函数,ReLU的导数不是0就是1,因此,神经元的梯度将始终为1,而不会当梯度传播了一定时间之后变小。

(参见 寒小阳的博客

Stanford 深度自然语言处理 学习笔记(八)

Stanford 深度自然语言处理 学习笔记(八)