循环网络
循环网络(Recurrent Networks,简称RNN)
在时间维度上,每一个时间步处理时,采用共享的权重
用于序列建模预测问题:
- 手写识别handwriting recognition
- 语音识别speech recognition
- 诗歌填词poem compose
- 股价预测stock price
- 天气预测weather forecast
- 机器翻译machine translation
- 图片注释image caption
…
用于序列建模预测问题。
循环网络结构
- y是训练目标
- L是损失函数
- o是输出
- h是状态(隐藏单元)
- x是输入
计算图的时间步上展开,循环神经网络是不同的时间步上采用相同的U、V、W参数
- 输入到隐藏的连接由权重矩阵U 参数化
- 隐藏到输出的连接由权重矩阵V 参数化
- 隐藏到隐藏的循环连接由权重矩阵W 参数化
Bidirectional RNN
双向RNN 结合时间上从序列起点开始移动的RNN 和另一个时间上从序列末尾开始移动的RNN。
双向RNN,其中h(t) 代表通过时间向前移动的子RNN 的状态,g(t) 代表通过时间向后移动的子RNN 的状态。
输出单元o(t) 能够计算同时依赖于过去和未来且对时刻t 的输入值最敏感的表示
用于手写识别和语音识别