【序列模型-RNN】
2018-07-17 本文已影响0人
安琪拉的小迷妹
一.为什么要用RNN
全连接/卷积神经网络:输入层-隐藏层-输出层。层与层之间是全部连接或者部分连接的,但是每层的节点之间是不连接的。这就无法解决,输出是序列的问题,例如,预测一个句子的下一个单词,“angela最新专辑是___”,在这种场景下,需要捕捉节点和节点之间的关系,因此,就出现了RNN。

在每一个时间步中,循环神经网络会传递一个激活值到下一个时间步中,用于下一时间步的计算。
X1,X2,X3对应的上面的就是不同的隐藏层,通过激活值a产生联系。
二.RNN前向传播

前向传播两个参数


三.反向传播
定义一个损失函数,例如是分类的,用交叉熵损失,如下:

四.不同类型的RNN




五.语言模型
作用:评估各个句子中各个单词出现的可能性。
六.新序列采样
作用:在完成一个序列模型的训练之后,如果我们想要了解这个模型学到了什么,其中一种非正式的方法就是进行一次新序列采样(sample novel sequences)
七.RNN梯度消失

八.GRU


九.LSTM

笔记:
RNN单元 GRU LSTM


