首先说一句,对于理解RNN这个概念,上策是先从数学角度理解,然后再画图理解。在这个前提下,一切上来就放图的书、论文、教程都是耍流氓。
循环神经网络是一种神经网络,那数学上神经网络是什么?是函数。普通神经网络可以抽象成输入层,隐层,输出层。隐层不管内部有几层,总体都可以抽象成“一个”隐层。隐层是一个函数,以输入层的数据作为输入,通过计算得到输出。输出层是一个函数,以隐层的输出作为输入,通过计算得到最终该神经网络的输出。一个神经网络是一个函数,该函数是隐层和输出层的复合函数。
RNN的特殊之处在于,它隐层的输入除了输出层,还有上一个时间点(上一次更新)的隐层的输出。严格地,在每个时间的点 t ,隐层
ht=f(ht−1,xt)
其中, f 是一个非线性激活函数,简单的