深度学习:循环神经网络—RNN的原理

传统神经网络存在的问题?  

无法训练出具有顺序的数据。模型搭建时没有考虑数据上下之间的关系。

RNN神经网络

RNN(Recurrent Neural Network,循环神经网络)是一种专门用于处理序列数据的神经网络。在处理序列输入时具有记忆性,可以保留之前输入的信息并继续作为后续输入的一部分进行计算。

RNN的工作原理

隐藏状态更新

输出计算

RNN特点:引入了隐状态h(hidden state)的概念,隐状态h可以对序列形的数据提取特征,接着再转换为输出。

        将初始隐藏状态 h0​ 与参数矩阵 W 相乘,将第一个词向量 x1​ 与参数矩阵U 相乘,两个结果相加,并加上偏置 b。重复上述步骤,将 h1​ 与 W 相乘,将 x2 与 U相乘,相加后加上偏置 b,再通过激活函数 f得到 h2。

        将隐藏状态 ht与一个参数矩阵 V 相乘,然后加上一个偏置 c

        在计算时,每一步使用的参数U、W、b都是一样的,也就是说每个步骤的参数都是共享的,

        RNN结构中输入是x1, x2, .....xn,输出为y1, y2, ...yn,也就是说,输入和输出序列必须要是等长的

RNN的局限:

记忆能力有限, 梯度消失和梯度爆炸,难以捕捉到长期依赖关系

原因是:梯度会随着时间的推移不断下降减少,而当梯度值变得非常小时,就不会继续学习。​

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值