循环神经网络RNN
详细代码实现见同专栏下博文
-
给网络增加短期记忆能力的方法
- 延时神经网络:
- 在前馈网络中的每个非输出层都添加一个延时器,记录神经元的最近几次活性值。
- 在第 t 个时刻,第 𝑙 层神经元的活性值依赖于第 𝑙 − 1 层神经元的最近𝐾 个时刻的活性值,即 𝒉𝑡(𝑙) = 𝑓(𝒉𝑡(𝑙−1) ,𝒉𝑡-1(𝑙−1) , ⋯ , 𝒉𝑡−𝐾(𝑙−1)),其中𝒉𝑡(𝑙) ∈ ℝ𝑀𝑙 表示第 𝑙 层神经元在时刻 𝑡 的活性值。
- 有外部输入的非线性自回归模型NARX
- 自回归模型AR:用一个变量 𝒚𝑡 的历史信息来预测自己. 𝒚𝑡 = 𝑤0 + ∑ 𝑤𝑘𝒚𝑡−𝑘 + 𝜖𝑡 ,其中𝐾为超参数,𝑤0 , ⋯ , 𝑤𝐾 为可学习参数,𝜖𝑡 ∼ 𝒩(0, 𝜎2 )为第𝑡 个时刻的噪声, 方差和时间无关。
- NARX是自回归模型的扩展:在每个时刻 𝑡 都有一个外部输入𝒙𝑡,产生一个输出𝒚𝑡,NARX通过一个延时器记录最近𝐾𝑥次的外部输入和最近𝐾𝑦次的输出,第 t 个时刻的输出 𝒚𝑡 为 𝒚𝑡 = 𝑓(𝒙𝑡 , 𝒙𝑡−1, ⋯ , 𝒙𝑡−𝐾𝑥 , 𝒚𝑡−1, 𝒚𝑡−2, ⋯ , 𝒚𝑡−𝐾𝑦 ),其中𝑓(⋅)表示非线性函数,可以是一个前馈网络,𝐾𝑥 和𝐾&#x
- 延时神经网络: