循环神经网络
绪论
1 循环神经网络的应用
- 视觉问答
- 语音问答
- 机器翻译
- 股票预测
- 作词机
- 作诗
- 模仿写论文
- 模仿写代码
2 循环神经网络vs卷积神经网络
- 传统神经网络、卷积神经网络,输入和输出之间是相互独立的
- RNN可以更好的处理具有时序关系的任务
- RNN通过其循环结构引入“记忆”的概念
- 输出不仅依赖于输入,还依赖于“记忆”
- 将同一个结构循环利用
基本组成结构
1 基本结构
隐层的数据被存入一个“记忆”单元中。
存在“记忆”中的数据会被作为另一个输入与原始输入一起输入到神经网络中。
RNN的基本结构:
- 两种输入——正常输入,记忆单元的输入
- 两种输出——正常输出,更新记忆单元的值
- 一种函数
2 深度RNN
3 双向RNN
4 结构总结
- 隐层状态h可以被看作是“记忆”,因为它包含了之前时间点上的相关信息
- 输出y不仅由当前的输入所决定,还会考虑到之前的“记忆”,由两者共同决定。
- RNN在不同时刻共享同一组参数(U,W,V),极大的减小了需要训练和预估的参数量
5 BPTT算法
在RNN的基础上,引入了误差反传播的方式。
同样,误差反向传播的方式是链式反向对参数求偏导,但由于RNN结构中“记忆”的形式,所以求导的形式与之前有些不同的地方。
循环神经网络的变种
1 传统RNN的问题
2 LSTM(长短期记忆模型)
LSTM拥有三个门(遗忘门,输入门,输出门)来保护和控制细胞状态