RNN-LSTM-GRU

本文介绍了循环神经网络(RNN)、长短期记忆网络(LSTM)和门控循环单元(GRU),探讨了深度RNN、双向RNN及梯度裁剪。LSTM通过输入门、遗忘门和输出门解决梯度消失问题,而GRU利用重置门和更新门进行信息管理。这些门控机制在序列建模任务中表现出色。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

循环神经网络(Recurrent Neural Network, RNN)

这里写图片描述

假设 XtRn×d X t ∈ R n × d 是序列中时间步 t 的小批量输入 HtRn×h H t ∈ R n × h 该时间步的隐藏层变量。跟多层感知机不同在于这里我们保存上一时间步的隐藏变量 Ht1 H t − 1 并引入一个新的权重参数 WhhRh×h W h h ∈ R h × h ,它用来描述在当前时间步如何使用上一时间步的隐藏变量。具体来说,当前隐藏变量的计算由当前输入和上一时间步的隐藏状态共同决定:

Ht=ϕ(XtWxh+Ht1Whh+bh), H t = ϕ ( X t W x h + H t − 1 W h h + b h ) ,

这里隐藏变量捕捉了截至当前时间步的序列历史信息,就像是神经网络当前时间步的状态或记忆一样,因此也称之为隐藏状态。

Ot=HtWhy+by. O t = H t W h y + b y .

def rnn(inputs, state, params):
    # inputs 和 outputs 皆为 num_steps 个形状为(batch_size, vocab_size)的矩阵。
    W_xh, W_hh, b_h, W_hy, b_y = params
    H, = state
    outputs = []
    for X in inputs:
        H = nd.tanh(nd.dot(X, W_xh) + nd.dot(H, W_hh) + b_h)
        Y = nd.dot(H, W_hy) + b_y
        outputs.append(Y)
    return outputs, (H,)

深度循环神经网络

这里写图片描述

H(1)t=ϕ(XtW(1)xh+H(1)t1W(1)hh+b(1)h), H
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值