循环序列模型 —— 1.12 深层循环神经网络

要学习非常复杂的函数,通常我们会把RNN的多个层堆叠在一起,构建更深的模型。
在这里插入图片描述
一个标准的神经网络,首先是输入x,然后堆叠上隐藏层,隐含层中应该有激活值,比如说第一层是 a < 1 > a^{<1>} a<1>,接着堆叠上下一层激活值 a < 2 > a^{<2>} a<2>,可以再加一层 a < 3 > a^{<3>} a<3>,然后得到预测值 y ^ \hat{y} y^
在这里插入图片描述
深层的RNN网络和这个有点像,用这个手画的网络,然后把它按时间展开就可以了,如下图是我们一直见到的标准的RNN,只是这里的符号稍微改了一下,不再用原来的 a < 0 > a^{<0>} a<0>表示0时刻的激活值了,而是加上一个方括号 [ 1 ] [1] [1]来表示这是第一层,所以现在用 a [ 1 ] < 0 > a^{[1]<0>} a[1]<0> a [ l ] < t > a^{[l]<t>} a[l]<t> l l l表示第 l l l层, t t t表示第 t t t个时间点。

然后我们把这些堆叠在上面,例如得到一个有三个隐层的新的网络,我们看一个具体的例子,看看这个值 a [ 2 ] < 3 > a^{[2]<3>} a[2]<3>是怎么算的。激活值 a [ 2 ] < 3 > a^{[2]<3>} a[2]<3>有两个输入,一个是 a [ 2 ] < 2 > a^{[2]<2>} a[2]<2>,一个是 a [ 1 ] < 3 > a^{[1]<3>} a[1]<3>,计算的时候用激活函数,作用于权重矩阵,权重矩阵就是 W a W_a Wa,因为计算的是激活值a的值,计算公式为 a [ 2 ] < 3 > = g ( W a [ 2 ] [ a [ 2 ] < 2 > , a [ 1 ] < 3 > ] + b a [ 2 ] ) a^{[2]<3>}=g(W_a^{[2]}[a^{[2]<2>},a^{[1]<3>}]+b_a^{[2]}) a[2]<3>=g(Wa[2][a[2]<2>,a[1]<3>]+ba[2])公式中的参数 W a [ 2 ] W_a^{[2]} Wa[2]和参数 b a [ 2 ] b_a^{[2]} ba[2]在这一层的计算都是一样的。相对应地第一层,也有自己的参数 W a [ 1 ] W_a^{[1]} Wa[1]和参数 b a [ 1 ] b_a^{[1]} ba[1]

由于深层的RNN模型训练需要很多计算资源,需要很长时间。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值