循环神经网络(RNN)模型与前向反向传播算法,LSTM模型笔记

循环神经网络(RNN)模型与前向反向传播算法,LSTM模型笔记
输出和模型间有反馈的神经网络:循环神经网络(Recurrent Neural Networks),广泛用于自然语言处理中的语音识别、手写识别以及机器翻译等领域。
特点:
1.隐藏状态h由输入x和前一隐藏状态hi-1共同决定。
2.模型的线性关系参数U、W、V矩阵在整个RNN网络中共享,从而体现了RNN模型的循环反馈思想。
在语音识别、手写识别以及机器翻译等领域实际应用比较广泛的是基于RNN模型的LSTM
模型。
Long Short-Term Memory(LSTM),可以避免常规RNN的梯度消失。
梯度消失:神经网络主要的训练方法是BP算法(error BackPropagation,误差逆传播),BP算法的基础是导数的链式法则,也就是多个导数的乘积。而sigmoid的导数最大为0.25,且大部分数值都被推向两侧饱和区域,这就导致大部分数值经过sigmoid激活函数之后,其导数都非常小,多个小于等于0.25的数值相乘,其运算结果很小。随着神经网络层数的加深,梯度后向传播到浅层网络时,基本无法引起参数的扰动,也就是没有就将loss的信息传递到浅层网络,这样网络就无法训练学习了。这就是所谓的梯度消失。梯度消失的解决方法有:
a.使用其他激活函数如ReLU等。
b.层归一化处理
c.优化权重初始化方式
d.构建新颖的网络结构,如highway net,而capsule net意图取消BP学习过程,釜底抽薪。
LSTM在每个序列的索引位置t时刻向前传播多了另一个隐藏状态,我们称为细胞状态(Cell State),除了细胞状态,LSTM还多出了一些结构称之为门控结构(GATE)。LSTM在每个序列索引位置t的门一般包括遗忘门,输入门和输出门三种。
遗忘门(forget gate):在LSTM中即以一定的概率控制是否遗忘上一层的隐藏细胞状态。输出代表了遗忘上一层隐藏细胞状态的概率。
输入门(input gate):负责处理当前序列位置的输入。第一部分使用sigmoid激活函数,第二部分使用了tanh激活函数,两者的结果后面会相乘再去更新细胞状态。Hadamard积即为矩阵乘积。
输出门(output gate)。
参考blog:
https://www.cnblogs.com/pinard/p/6509630.html
https://www.cnblogs.com/pinard/p/6519110.html

猜你喜欢

转载自www.cnblogs.com/yy1921rz/p/10964085.html
今日推荐