RNN的变种们:GRULSTM双向RNN

news/2024/7/2 2:23:45/文章来源:https://blog.csdn.net/pearl8899/article/details/139721751

上篇笔记记录到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.luyixian.cn/news_show_1092845.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

适用于Mac的免费外置硬盘数据恢复软件

“我有一个 1 TB 的外置硬盘,它被意外格式化了。我尝试从中恢复丢失的数据。我把它连接到我的Mac,但里面什么也没找到。我正在寻找适用于Mac的免费外置硬盘数据恢复软件,例如奇客数据恢复Mac版或其他Mac数据恢复免费软件来扫描它并恢复数据。…

[信号与系统]模拟域中的一阶低通滤波器和二阶滤波器

前言 不是学电子出身的,这里很多东西是问了朋友… 模拟域中的一阶低通滤波器传递函数 模拟域中的一阶低通滤波器的传递函数可以表示为: H ( s ) 1 s ω c H(s) \frac{1}{s \omega_c} H(s)sωc​1​ 这是因为一阶低通滤波器的设计目标是允许低频信…

测绘行业解决方案-地形测量与实景三维

应用场景 - 地形测量 业务挑战 • 地形测量需要大量外业作业, 成本居高不下 • 传统采集方式采集效率低,工期长, 无法及时交付 • 传统测绘成果局限于数字线划图,无法直观展示地形地貌 无人机优势 • 能进行 1:500 免像控地形测量 • …

基于Python+Flask+MySQL+HTML的B站数据可视化分析系统

FlaskMySQLVue 基于PythonFlaskMySQLHTML的B站数据可视化分析系统 项目采用前后端分离技术,项目包含完整的前端HTML,以及Flask构成完整的前后端分离系统 爬虫文件基于selenium,需要配合登录账号 简介 主页 登录页面,用户打开浏…

深入解析 iOS 应用启动过程:main() 函数前的四大步骤

深入解析 iOS 应用启动过程:main() 函数前的四大步骤 背景描述:使用 Objective-C 开发的 iOS 或者 MacOS 应用 在开发 iOS 应用时,我们通常会关注 main() 函数及其之后的执行逻辑,但在 main() 函数之前,系统已经为我们…

[C++][设计模式][桥模式]详细讲解

目录 1.动机2.模式定义3.要点总结4.代码感受1.代码一2.代码二 1.动机 由于某些类型的固有的实现逻辑,使得它们具有两个变化的维度, 乃至多个纬度的变化如何应对这种“多维度的变化”?如何利用面向对象技术来使得类型可以轻松地沿着两个乃至多…

芒果YOLOv10改进64:主干Backbone篇RepVGG结构:简单但功能强大的卷积神经网络架构

💡本篇内容:YOLOv10改进RepVGG结构:简单但功能强大的卷积神经网络架构 💡🚀🚀🚀本博客 改进源代码改进 适用于 YOLOv10 按步骤操作运行改进后的代码即可 💡本文提出改进 原创 方式:二次创新,YOLOv10 应部分读者要求,新增一篇RepVGG 论文理论部分 + 原创最…

企业运维六边形战士 质量稳定 效率为王

随着信息化的不断深入和扩展,企业IT系统的复杂性和设备多样性日益增加。为了保障业务的高可用性和连续性,企业需要一个全面、高效、智能的一体化运维管理平台。在用户市场的推动下,LinkSLA智能运维管家展现出【六边形战士】的优质属性&#x…

UE4_材质_雨滴涟漪效果ripple effect_ben教程

学习笔记,不喜勿喷!侵权立删,祝愿生活越来越好! 雨水落下时会产生这些非常漂亮的同心环波纹,我们要做的第一件事是创建一个单个的圆环遮罩动画,我们希望环在开始的时候在中心很小,然后放大&…

基于自编码器的心电信号异常检测(Pytorch)

代码较为简单,很容易读懂。 # Importing necessary libraries for TensorFlow, pandas, numpy, and matplotlib import tensorflow as tf import pandas as pd import numpy as np import matplotlib.pyplot as plt import copy# Importing the PyTorch library im…

基于STM32的智能仓库管理系统

目录 引言环境准备智能仓库管理系统基础代码实现:实现智能仓库管理系统 4.1 数据采集模块4.2 数据处理与分析4.3 通信模块实现4.4 用户界面与数据可视化应用场景:仓库管理与优化问题解决方案与优化收尾与总结 1. 引言 智能仓库管理系统通过使用STM32嵌…

智能AI在线人工智能对话源码系统 完整的代安装码+搭建部署教程

系统概述 智能 AI 在线人工智能对话源码系统是一款前沿的技术解决方案,它融合了人工智能的强大能力,为用户提供了一个高效、智能的对话平台。该系统基于先进的算法和模型,能够理解用户的输入,并以高度准确和自然的方式进行回应。…

2024全新升级!MindManager思维导图软件,让思维无限延伸

Hey朋友们✨!今天要给大家安利一款我超级喜欢的办公神器——MindManager2024思维导图最新版本!如果你跟我一样,经常需要整理思路、规划工作或学习计划,那么你一定不能错过它!🎉 MindManager思维导图工具绿…

【linux学习十七】文件服务管理

一、FTP FTP server:FTP(File Transfer Protocol,文件传输协议 )是 TCP/IP 协议组中的协议之一 软件包:vsftpd/安装 yum -y install vsftpd//准备文件 touch /var/ftp/abc.txt //注释:FTP服务器的主目录:“/var/ftp/”,是FTP程序分享内容的本机目录…

Mac环境 aab包转apks,并安装apks

一、下载下载bundletool工具 Releases google/bundletool GitHub 二、将下载bundletool.jar包、aab、keystore文件全部放到同一个目录下 例如我全部放到download目录下 转换命令行: java -jar bundletool-all-1.16.0.jar build-apks --modeuniversal --bundle…

Shell脚本 循环语句、函数、数组

目录 Shell循环语句 概念 for循环 语法格式 批量创建用户并设置初始密码示例 批量删除用户示例操作步骤 巡检测试主机连通性示例 while循环 语法格式 批量创建、删除用户示例 随机数 控制随机数范围 0 ~ 999 0 ~ 99 0 ~ 9 使用while和随机数实现猜价格示例 un…

docker将容器打包提交为镜像,再打包成tar包

将容器打包成镜像可以通过以下步骤来实现。这里以 Docker 为例,假设你已经安装了 Docker 并且有一个正在运行的容器。 1. 找到正在运行的容器 首先,你需要找到你想要打包成镜像的容器的 ID 或者名字。可以使用以下命令查看所有正在运行的容器&#xff…

八、yolov8模型预测和模型导出(目标检测)

模型查看 模型预测 模型导出 模型训练完成后,找到训练文件生成文件夹,里面包含wights、过程图、曲线图。 模型预测 1、在以下文件夹中放入需要预测的图; 2、找到detect文件下的predict.py文件,修改以下内容。 3、右键点击…

BL104应用在智慧零售多协议采集监控远程实时查看

在智慧零售领域,如今的市场竞争日益激烈,传统的零售模式已经难以满足消费者对服务和体验的高需求。智能化技术的引入,尤其是基于物联网的解决方案,成为提升零售业务效率和服务质量的关键。钡铼BL104 Modbus转MQTT网关作为一种先进…

JSAPI微信支付提示缺少total_fee

微信小程序云开发中使用微信支付。莫名其妙的报错: 这个报错严重图文不符,驴唇不对马嘴,难排查,很恶心。 原因可能是: 1、在微信支付中关联appid; 2、在小程序云开发控制台中授权: