基本应用
语音问答、机器翻译、股票预测、作词机、作诗、模仿写论文、写代码、图像理解、视觉问答
VS卷积神经网络
传统和卷积神经网络,输入输出相互独立
RNN可以更好处理具有时序关系的任务,通过其循环结构引入“记忆”概念。
? 输出不仅依赖于输入,还依赖“记忆”,将同一个结构循环利用
基本结构
隐层的数据被存入一个记忆单元
存在记忆中的数据会被作为另一个输入于原视输入一起输入到神经网络中
基本结构:两种输入、两种输出、一种函数
U:从输入到隐藏状态;W:从前已隐藏状态到下一隐藏状态;V:从隐藏状态到输出
f被不断重复利用;模型所需要的学习参数是固定的;无论输出,只需要一个函数f
深度RNN 双向RNN
BPTT算法
传统RNN的问题
当循环神经网络在时间维度上非常深的时候,会导致梯度消失(
大部分情况,长时依赖问题)或者梯度爆炸(很少,但对优化过程影响很大,模型训练不稳定)的问题
梯度爆炸改进:
梯度消失改进:
改进模型
LSTM,GRU
LSTM——Long Short-term Memory长短期记忆模型
遗忘门:
Sigmoid函数
初始化技巧:将输入门的bias置为整数(例如1或5),这样模型刚开始训练时的forget gate的值接近于1,不会发生梯度消失。
基于attention的RNN
受人类注意力机制启发,将注意力集中到应该集中的位置
原文:https://www.cnblogs.com/jiang-sy/p/13546831.html