主要是处理序列数据时用到的方法。

其对应的模型为:

机器学习(十九)——循环神经网络(RNN)

其对应的函数方法为:

 机器学习(十九)——循环神经网络(RNN)机器学习(十九)——循环神经网络(RNN)

其运算过程,主要是上一个节点的运算结果与本节点的输入值加权求和,经过一个**函数,形成输出值。

RNN在使用过程中会形成相应的变种:

第一种:双向RNN,即RNN在运算的过程中会记录网络的返回值。

 机器学习(十九)——循环神经网络(RNN)机器学习(十九)——循环神经网络(RNN)

每个节点在计算最终输出结果时有四部分组成:

Ø  正向上一个节点的计算结果、正向本节点的输入值;

Ø  反向上一个节点的计算结果、反向本节点的输入值;

第二种:LSTM长短期记忆网络:

长短时记忆网络的思路比较简单。原始RNN的隐藏层只有一个状态,即h,它对于短期的输入非常敏感。那么,假如我们再增加一个状态,即c,让它来保存长期的状态。

 机器学习(十九)——循环神经网络(RNN)机器学习(十九)——循环神经网络(RNN)

新加的状态C称为单元状态,是用来记忆长期的计算结果的。

LSTM的关键,就是怎样控制长期状态C。在这里,LSTM的思路是使用三个控制开关。

第一个开关:负责控制继续保存长期状态C;

第二个开关:负责控制把即时状态输入到长期状态C;

第三个开关:负责控制是否把长期状态c作为当前的LSTM的输出。

三个开关的作用如下图所示:

机器学习(十九)——循环神经网络(RNN)

具体的前向计算步骤为:

机器学习(十九)——循环神经网络(RNN)

机器学习(十九)——循环神经网络(RNN)

机器学习(十九)——循环神经网络(RNN)

机器学习(十九)——循环神经网络(RNN)

机器学习(十九)——循环神经网络(RNN)

机器学习(十九)——循环神经网络(RNN)

机器学习(十九)——循环神经网络(RNN)

机器学习(十九)——循环神经网络(RNN)

机器学习(十九)——循环神经网络(RNN)

机器学习(十九)——循环神经网络(RNN)

机器学习(十九)——循环神经网络(RNN)

机器学习(十九)——循环神经网络(RNN)

机器学习(十九)——循环神经网络(RNN)

机器学习(十九)——循环神经网络(RNN)

机器学习(十九)——循环神经网络(RNN)