Mxnet (20): 循环神经网络(RNN)下

本文详细介绍了循环神经网络(RNN)的概念,包括不含隐藏状态的神经网络、具有隐藏状态的RNN,并通过MXNet实现了一个简单的RNN模型,涵盖one-hot编码、参数初始化、模型构建、预测、梯度裁剪和困惑度计算等关键步骤。
摘要由CSDN通过智能技术生成

4. 循环神经网络

循环神经网络,通过潜在自回归模型,使用隐藏状态来存储之前的信息。隐藏层和隐藏状态是指两个非常不同的概念。如所解释的,隐藏层是在从输入到输出的路径上从视图中隐藏的层。从技术上讲,隐藏状态是在给定步骤中我们所做的任何事情的输入,并且只能通过查看先前时间步骤中的数据来计算它们。递归神经网络(RNN)是具有隐藏状态的神经网络。

4.1 不含隐藏状态的神经网络

之前使用MLP就是不含隐藏状态的神经网络,可以随机选择特征标签对,并通过自动区分和随机梯度下降来学习网络参数。

4.2 具有隐藏状态的循环神经网络

当我们具有隐藏状态时,情况完全不同。与多层感知机相比,隐藏变量能够捕捉截至当前时间步的序列的历史信息,就像是神经网络当前时间步的状态或记忆一样。由于隐藏状态在当前时间步的定义使用了上一时间步的隐藏状态,上式的计算是循环的。使用循环计算的网络即循环神经网络(recurrent neural network)。

在这里插入图片描述

上图中展示了循环神经网络在3个相邻时间步的计算逻辑。在时间步 t ,隐藏状态的计算可以看成是将输入 X t X_t Xt 和前一时间步隐藏状态 H t − 1 H_{t−1} Ht1 连结后输入一个激活函数为 ϕ 的全连接层。该全连接层的输出就是当前时间步的隐藏状态 H t H_t Ht ,且模型参数为 W x h W_{xh} Wxh W h h W_{hh} Whh 的连结,偏差为 b h b_h bh 。当前时间步 t 的隐藏状态 H t H_t Ht 将参与下一个时间步 t+1 的隐藏状态 H t + 1 H_{t+1} Ht+1 的计算,并输入到当前时间步的全连接输出层。

隐藏状态中 X t W x h + H t − 1 W h h X_tW_{xh}+H_{t−1}W_{hh} XtWxh+Ht1Whh 的计算等价于 X t X_t Xt H t − 1 H_{t−1} H

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值