RNN循环神经网络简述

RNN循环神经网络简述

By:Yang Liu
1.什么是RNN
循环神经网络(Recurrent Neural Network, RNN)是一类以序列(sequence)数据为输入,在序列的演进方向进行递归(recursion)且所有节点(循环单元)按链式连接的递归神经网络(recursive neural network)。
2.RNN的结构
经典结构
RNN循环神经网络简述_第1张图片
循环结构:
RNN循环神经网络简述_第2张图片
按时间线展开如下图:
RNN循环神经网络简述_第3张图片
Xt:表示t时刻的输入,ot:表示t时刻的输出,St:表示t时刻的记忆
用公式可表示为:
RNN循环神经网络简述_第4张图片
3.RNN的作用
(1)RNN引入定向循环,能够处理那些输入之间前后关联的问题。打破了传统神经网络结构层与层之间全连接,每层节点之间无连接的转态,不在是输入-隐层-输出的模式。
(2)多输入多输出,可用于机器翻译。
(3)单输入多输出,可用于看图说话。
(4)多输入单输出,可用于分类。
如:计算视频中每一帧的分类标签。输入为字符,输出为下一个字符的概率。
4.RNN的特点
(1)隐层节点之间可以互连也可以自连
(2)网络共享权重U、V、W
(3)RNN网络中,每一步的输出不是必须的,每一步的输入也不是必须的。
5.RNN的小结
RNN主要用于处理序列数据;例如,如果你想写一个文档,单词的顺序很重要,当前的单词肯定取决于以前的单词。
思想上认为当前的输出与前面的输入也有关系,具体做法是网络会对前面的信息进行记忆,并应用于当前输出的计算中,即隐层之间的节点不再无连接,并且隐层的输入不仅包括输入层的输出,还包括上一时刻隐层的输出。
RNN训练主要采用BP误差反向传播算法、梯度下降算法。
参考文献:
(1)https://blog.csdn.net/john_bh/article/details/80353436
(2)https://blog.csdn.net/zhaojc1995/article/details/80572098
(3)https://blog.csdn.net/qq_39422642/article/details/78676567
(4)https://zhuanlan.zhihu.com/p/30844905

你可能感兴趣的:(神经网络,机器学习,算法)