Rethink LSTM&GRU

LSTM 设计思想

姑且不看偏置。 W W W 和 U U U 是加权的矩阵,写模型的时候用 nn.Linear(in_dim, out_dim) 就成; σ \sigma σ 是 Sigmoid 函数

  • 第一条,遗忘门,定义为 有多少内容需要被遗忘;
  • 第二条:输入门,定义为 有多少输入值有多少能进入到 RNN 模型里;
  • 第三条:输出门,定义为 有多少内容能够成为输出值

这三个 0 到 1 的值,是聚合当前的输入特征 x t x_t xt 和 上一时刻的隐藏状态 h t − 1 h_{t-1} ht−1 所计算得到的。它们表示的意思是,聚合当前的输入信息以及记忆信息(之前的信息),来决定模型不同的位置有多少比例保留下来。

  • 第四条:表示 "当前信息",使用 tanh 映射到 -1到 1之间;
  • 第五条:表示 "当前的记忆信息",根据上一时刻的信息有多少被遗忘以及当前输入有多少能进入所聚合得到;
  • 第六条:表示 隐藏状态,由当前的记忆信息的一定比例计算得到

从这六条式子中,一定要知道,LSTM 接收 3 个输入值分别为 x t x_t xt、 h t − 1 h_{t-1} ht−1 和 c t − 1 c_{t-1} ct−1
根据 LSTM 由三个输入,可以设计一个 Gate Fusion Module,输入三个 Tensor 聚合得到一个 Tensor,用 tensor. Repeat(x,y,z) 来对其维度。这样做可以简单聚合不同模态的信息

GRU

理解起来和前者的叙述类似

最终要的地方是,可以作为 Gate Fusion,所设计的 Gate Fusion 以两个 tensor 作为输入,就用 GRU 这一套计算公式,如果以三个 tensor 作为输入,就用 LSTM 这一套公式,剩下的对齐维度跑通 forward 函数就行

相关推荐
Takina~8 分钟前
python打卡day48
pytorch·python·深度学习
纨妙29 分钟前
python打卡day47
开发语言·python
沉到海底去吧Go2 小时前
【PDF识别改名】PDF指定区域OCR识别重命名工具使用教程和注意事项
python·pdf·ocr
面朝大海,春不暖,花不开3 小时前
管理数据洪流:自动化处理与归档每日数据文件的策略与实践
运维·python·自动化
YYXZZ。。3 小时前
PyTorch——搭建小实战和Sequential的使用(7)
人工智能·pytorch·python
四川兔兔4 小时前
pytorch 与 张量的处理
人工智能·pytorch·python
AI蜗牛之家7 小时前
Qwen系列之Qwen3解读:最强开源模型的细节拆解
人工智能·python
whyeekkk7 小时前
python打卡第48天
开发语言·python
Eiceblue10 小时前
Python读取PDF:文本、图片与文档属性
数据库·python·pdf
weixin_5275504010 小时前
初级程序员入门指南
javascript·python·算法