深度学习--递归神经网络RNN和LSTM

RNN:递归神经网络

深度学习--递归神经网络RNN和LSTM

深度学习--递归神经网络RNN和LSTM
RNN在自然语言处理方面较好。
深度学习--递归神经网络RNN和LSTM
通常情况下只需要最后一个结果。

递归神经网络的反向传播:
深度学习--递归神经网络RNN和LSTM
只要有路线,就需要把梯度传导下去。

深度学习--递归神经网络RNN和LSTM

存在缺点:
1、当输入较大时,网络结构比较大,反向梯度传播计算会很慢。
2、当梯度计算为0时,参数就无法传递了,也就是会出现梯度消失。
3、较前的输入可能信息价值不高,可能对训练造成影响,需要预处理

LSTM 长短记忆网络

LSTM会去遗忘一些数据

深度学习--递归神经网络RNN和LSTM
深度学习--递归神经网络RNN和LSTM

例如:C会使值为0的信息剔除,0.5的保留部分,0.8的保留大部分,1 的保留全部

深度学习--递归神经网络RNN和LSTM
门单元

深度学习--递归神经网络RNN和LSTM
利用sigmoid函数筛选数据

深度学习--递归神经网络RNN和LSTM
ft和Ct-1组合决定前一层需要丢弃的信息
深度学习--递归神经网络RNN和LSTM

it和Ct ~ 通过乘法门单元☉组合,决定当前层xt要保留下的的信息。然后再与前一层保留下来的(Ct-1☉ft)通过加法门单元组合形成(it☉Ct~)⊕(Ct-1☉ft)=Ct。

深度学习--递归神经网络RNN和LSTM

深度学习--递归神经网络RNN和LSTM
核心是控制参数C的更新,从开始到结束要不断更新Ct

深度学习--递归神经网络RNN和LSTM

LSTM网络比RNN应用更广泛