当前位置: 首页 > news >正文

RNN的变种们:GRULSTM双向RNN

上篇笔记记录到RNN的一个缺点:训练时会出现梯度消失,解决的办法是找到一个更优的计算单元。这里也有GRU和LSTM。

GRU(Gated Recurrent Unit)门控训练网络

什么是门控机制?就是对当前的输入进行一个筛选。门打开,信息进来,继续往下传,如果门关闭,信息就停留再此,不可以往下传。它决定了会有哪些信息往下传。

GRU有两个门,一个是更新门,一个是重置门,他的作用就是hi 或者hi-1和当前信息的比重问题,

从直观上来说,重置门决定了如何将新的输入信息与前面的记忆相结合,更新门定义了前面记忆保存到当前时间步的量。如果我们将重置门设置为 1,更新门设置为 0,那么我们将再次获得标准 RNN 模型。使用门控机制学习长期依赖关系的基本思想和 LSTM 一致,但还是有一些关键区别:

  • GRU 有两个门(重置门与更新门),而 LSTM 有三个门(输入门、遗忘门和输出门)。
  • GRU 并不会控制并保留内部记忆(c_t),且没有 LSTM 中的输出门。
  • LSTM 中的输入与遗忘门对应于 GRU 的更新门,重置门直接作用于前面的隐藏状态。
  • 在计算输出时并不应用二阶非线性。

GRU 是标准循环神经网络的改进版,但到底是什么令它如此高效与特殊?

为了解决标准 RNN 的梯度消失问题,GRU 使用了更新门(update gate)与重置门(reset gate)。基本上,这两个门控向量决定了哪些信息最终能作为门控循环单元的输出。这两个门控机制的特殊之处在于,它们能够保存长期序列中的信息,且不会随时间而清除或因为与预测不相关而移除。

更新门帮助模型决定到底要将多少过去的信息传递到未来,或到底前一时间步和当前时间步的信息有多少是需要继续传递的。

重置门主要决定了到底有多少过去的信息需要遗忘。

LSTM

长短期记忆网络(long short-term memory network)。LSTM 会以一种非常精确的方式来传递记忆——使用了一种特定的学习机制:哪些部分的信息需要被记住,哪些部分的信息需要被更新,哪些部分的信息需要被注意。与之相反,循环神经网络会以一种不可控制的方式在每一个时间步骤都重写记忆。这有助于在更长的时间内追踪信息。

双向RNN

不仅需要前面的信息,还需要后面的信息,

总结

参考

1.经典必读:门控循环单元(GRU)的基本概念与原理 | 机器之心

2.LSTM入门必读:从入门基础到工作方式详解 | 机器之心

http://www.lryc.cn/news/376067.html

相关文章:

  • Linux网络-HttpServer的实现
  • GPT-4o的综合评估与前景展望
  • 私人云盘(自动云同步)
  • 【CMake】Linux 下权限丢失与软链接失效问题
  • 内部类介绍
  • 【CVPR2021】LoFTR:基于Transformers的无探测器的局部特征匹配方法
  • 总结一下 C# 如何自定义特性 Attribute 并进行应用
  • 三种暴露方法和引入方式
  • “Git之道:掌握常用命令,轻松管理代码“
  • Linux vim 文本编辑 操作文本 三种模式
  • JavaFX DatePicker
  • 开展“安全生产月”活动向媒体投稿的好方法找到了
  • 商讯杂志商讯杂志社商讯编辑部2024年第10期目录
  • 在VS Code中快速生成Vue模板的技巧
  • 新火种AI|Sora发布半年之后,AI视频生成领域风云再起
  • 《UNIX环境高级编程》第三版(电子工业出版社出品)——两年磨一剑的匠心译作
  • 【RK3588/算能/Nvidia智能盒子】AI“值守”,规范新能源汽车充电站停车、烟火及充电乱象
  • 使用ReentrantLock和ThreadPoolExecutor模拟抢课
  • VirtFuzz:一款基于VirtIO的Linux内核模糊测试工具
  • 统计学一(术语,正态)
  • CleanMyMac X for Mac系统优化垃圾清理软件卸载 工具(小白轻松上手,简单易学)
  • 从0开始开发一个简单web界面的学习笔记(HTML类)
  • 【机器学习】对大规模的文本数据进行多标签的分类处理
  • C++之std::type_identity
  • 头歌资源库(10)拼数字
  • 虚谷数据库-定时作业
  • AWD攻防比赛流程手册
  • Golang的json解析--Gjson库的使用举例
  • 基于Langchain构建本地大型语言模型(LLM)问答系统的经验分享
  • 对抗式生成模仿学习(GAIL)