nn.RNN解析

以下是RNN的计算公式,t时刻的隐藏状态H(t)等于前一时刻隐藏状态H(t-1)乘以参数矩阵,再加t时刻的输入x(t)乘以参数矩阵,最后再通过激活函数,等到t时刻隐藏状态。

下图是输出input和初始化的隐藏状态,当参数batch_first = True时候,输入是(batch_size,Sequence_length,input_size),参数batch_first = False的时候,输入是
(Sequence_length,batch_size,input_size)

h_0就是初始时刻的隐藏状态hidden state,一般情况下,输入是(D*num_layers,N,H_out)

  • D:如果是双向RNN则为2,如果是单向RNN则为1
  • num_layers: 是RNN的层数
  • N:Batch_size 大小
  • H_in :input size
  • H_out : hidden_size
    写到这里也就把RNN的传入参数给将明白了,主要就是初始隐藏态和input

    输出
  • 输出分别输出最后一个时刻的隐藏态以及所有时刻隐藏态的堆叠,作为输出outputs
  • outputs: 当batch_first = True时,输出为(batch_size,Sequence_length,hidden_size * D);当batch_first = False 的时候,输出为(Sequence_length,Batch_size,hidden_size*D)
  • h_n: 输出为(D*num_layers,Batch_size,hidden_size)
  • 参数 D 同上面一样,这里不在赘述。

    示例:

    RNN 返回值中 outputs 和 hidden_n的关系
    由下图可知,outputs最后一个时间步的输出就是hidden_n
相关推荐
Keep_Trying_Go几秒前
基于无监督backbone无需训练的类别无关目标统计CountingDINO算法详解
人工智能·python·算法·多模态·目标统计
爱思德学术14 分钟前
中国计算机学会(CCF)推荐学术会议-C(软件工程/系统软件/程序设计语言):IEEE COMPSAC 2026
人工智能·区块链·软件工程
拖拖76529 分钟前
打破固定输出的边界:深入解读 Pointer Networks (Ptr-Nets)
人工智能
sy1341081919544 分钟前
AI服务器设备中ISO系列信号隔离器应用场景
运维·服务器·人工智能
nvd111 小时前
FastMCP 开发指南: 5分钟入门
人工智能·python
wp123_11 小时前
反激应用1:1贴片耦合电感选择:Coilcraft LPD3015-473MR vs 国产兼容 TONEVEE CDD3015-473M
人工智能·制造
不错就是对1 小时前
【agent-lightning】 - 2_使用 Agent-lightning 训练第一个智能体
人工智能·深度学习·神经网络·自然语言处理·chatgpt·transformer·vllm
zhengfei6111 小时前
AI渗透工具—Shannon完全自主的AI渗透测试工具
人工智能·深度学习·web安全·知识图谱·测试覆盖率·安全性测试·威胁分析
愚公搬代码1 小时前
【愚公系列】《AI+直播营销》004-重视直播营销,打造直播竞争力(直播活动的基本原理)
人工智能
哥本哈士奇1 小时前
简单的神经网络计算过程 - 正负判断
人工智能·深度学习·神经网络