AI技术百科
小小程序员
2021-05-15 23:43:30
循环神经网络( Recurrent Neural Network)
循环神经网络(RNN)有两个强大的属性可以计算任何计算机计算出来的东西:(1)允许存储大量有效信息的分布式隐藏状态(2)用复杂的方式允许更新隐藏状态的非线性动态。RNN强大的计算能力和梯度消失(或爆炸)使其很难训练。通过多层反向传播时,若权重很小,则梯度呈指数缩小;若权重很大,则梯度呈指数增长。典型的前馈神经网络的一些隐藏层可以应对指数效应,另一方面,在长序列RNN中,梯度容易消失(或爆照),即使有好的初始权重,也很难检测出当前依赖于多个时间输入的目标输出因此很难处理远程依赖性。
学习RNN的方法如下:
长短期记忆:用具有长期记忆值的小模块制作RNN。
Hessian Free Optimization:使用优化器处理梯度消失问题。
回声状态网络:初始化输入→隐藏和隐藏→隐藏和输出→隐藏链接,使隐藏状态有一个巨大的弱耦合振荡器储备,可以选择性的由输入驱动。
用动量初始化:和回声状态网络一样,再用动量学习所有连接。