(深层与双向)循环神经网络

news2024/12/25 9:03:49

一、深层循环神经网络

1、对于循环神经网络

2、对于深层,要得到更多的非线性,就像多层感知机(MLP)。

(1)浅层与深层对比

        这是具有𝐿个隐藏层的深度循环神经网络, 每个隐状态都连续地传递到当前层的下一个时间步和下一层的当前时间步。

(2)公式

        隐藏层:

        

        输出层:

        

3、总结

(1)在深度循环神经网络中,隐状态的信息被传递到当前层的下一时间步和下一层的当前时间步。

(2)有许多不同风格的深度循环神经网络, 如长短期记忆网络、门控循环单元、或经典循环神经网络。,这些模型在深度学习框架的高级API中都有涵盖。

(3)深度循环神经网络需要大量的调参(如学习率和修剪) 来确保合适的收敛,模型的初始化也需要谨慎。

(4)深度循环神经网络使用多个隐藏层来获得更多的非线性

二、双向循环神经网络

1、应用

2、双向RNN

(1)前向和反向隐状态的更新

(2)将前向隐状态𝐻→𝑡 和反向隐状态𝐻←𝑡连接起来, 获得需要送入输出层的隐状态𝐻𝑡。在具有多个隐藏层的深度双向循环神经网络中, 该信息作为输入传递到下一个双向层。 

(3)输出层

(4)一个前向RNN隐藏层,一个后向RNN隐藏层,合并两个隐状态得到输出

(5)适合对一个句子做特征提取而不适合做推理,因为看不到未来

3、总结

(1)在双向循环神经网络中,每个时间步的隐状态由当前时间步的前后数据同时决定。

(2)双向循环神经网络与概率图模型中的“前向-后向”算法具有相似性。

(3)双向循环神经网络主要用于序列编码和给定双向上下文的观测估计。

(4)由于梯度链更长,因此双向循环神经网络的训练代价非常高。

三、代码

1、深度循环神经网络

import torch
from torch import nn
from d2l import torch as d2l

batch_size, num_steps = 32, 35
train_iter, vocab = d2l.load_data_time_machine(batch_size, num_steps)

vocab_size, num_hiddens, num_layers = len(vocab), 256, 2
num_inputs = vocab_size
device = d2l.try_gpu()
lstm_layer = nn.LSTM(num_inputs, num_hiddens, num_layers)
model = d2l.RNNModel(lstm_layer, len(vocab))
model = model.to(device)

num_epochs, lr = 500, 2
d2l.train_ch8(model, train_iter, vocab, lr*1.0, num_epochs, device)

2、双向循环神经网络的错误应用:因为我们不能用这个做预测,只能用于提取特征

import torch
from torch import nn
from d2l import torch as d2l

# 加载数据
batch_size, num_steps, device = 32, 35, d2l.try_gpu()
train_iter, vocab = d2l.load_data_time_machine(batch_size, num_steps)
# 通过设置“bidirective=True”来定义双向LSTM模型
vocab_size, num_hiddens, num_layers = len(vocab), 256, 2
num_inputs = vocab_size
lstm_layer = nn.LSTM(num_inputs, num_hiddens, num_layers, bidirectional=True)
model = d2l.RNNModel(lstm_layer, len(vocab))
model = model.to(device)
# 训练模型
num_epochs, lr = 500, 1
d2l.train_ch8(model, train_iter, vocab, lr, num_epochs, device)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1953424.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【QT】QT 系统相关(事件、文件、多线程、网络、音视频)

一、Qt 事件 1、事件介绍 事件是应用程序内部或者外部产生的事情或者动作的统称。在 Qt 中使用一个对象来表示一个事件。所有的 Qt 事件均继承于抽象类 QEvent。事件是由系统或者 Qt 平台本身在不同的时刻发出的。当用户按下鼠标、敲下键盘,或者是窗口需要重新绘制…

《python程序语言设计》第6章14题 估算派值 类似莱布尼茨函数。但是我看不明白

这个题提供的公式我没看明白,后来在网上找到了莱布尼茨函数 c 0 for i in range(1, 902, 100):a (-1) ** (i 1)b 2 * i - 1c a / bprint(i, round(4 / c, 3))结果 #按题里的信息,但是结果不对,莱布尼茨函数到底怎么算呀。

【计算机网络】TCP协议详解

欢迎来到 破晓的历程的 博客 ⛺️不负时光,不负己✈️ 文章目录 1、引言2、udp和tcp协议的异同3、tcp服务器3.1、接口认识3.2、服务器设计 4、tcp客户端4.1、客户端设计4.2、说明 5、再研Tcp服务端5.1、多进程版5.2、多线程版 5、守护进程化5.1、什么是守护进程5.2…

Javascript面试基础6(下)

获取页面所有checkbox 怎样添加、移除、移动、复制、创建和查找节点 在JavaScript中,操作DOM(文档对象模型)是常见的任务,包括添加、移除、移动、复制、创建和查找节点。以下是一些基本的示例,说明如何执行这些操作&a…

【网络世界】HTTP协议

目录 🌈前言🌈 📁 概念 📁 URL 📂 urlencode 和 urldecode 📁 协议格式 📁 方法 📂 GET/get 📂 POST/post 📁 常见的报头 📁 状态码 &…

Web3 职场新手指南:从技能到素养,求职者如何脱颖而出?

随着 2024 年步入下半年,Web3 行业正在经历一系列技术革新。通过改进的跨链交互机制和兼容性,逐步消除市场碎片化的问题。技术的进步为开发者和用户都打开了新的前景。然而,复杂的技术和快速变化的市场环境也让许多新人望而却步。求职者如何找…

编译固件 -- 自用

编译环境 先安装编译环境 git clone <编译仓库路径> git checkout <编译主分支> 更新/下载 然后就是一样的更新下载 ./scripts/feeds update -a ./scripts/feeds install -a 然后直接编译 feeds/puppies/rom/scripts/make.sh 对应型号 make Vs 这里的对应型号可…

gitee的fork

通过fork操作&#xff0c;可以复制小组队长的库。通过复制出一模一样的库&#xff0c;先在自己的库修改&#xff0c;最后提交给队长&#xff0c;队长审核通过就可以把你做的那一份也添加入库 在这fork复制一份到你自己的仓库&#xff0c;一般和这个项目同名 现在你有了自己的库…

Footprint Analytics 助力 Core 区块链实现数据效率突破

Core 是一个基于比特币并兼容 EVM 的 Layer 1 区块链&#xff0c;正通过其创新解决方案引革新特币金融。作为首个引入非托管 BTC 质押协议及全球首个发行收益型 BTC ETP 产品的区块链&#xff0c;Core 站在了区块链技术的最前沿。通过利用超过 50% 的比特币挖矿哈希算力&#x…

24暑假算法刷题 | Day22 | LeetCode 77. 组合,216. 组合总和 III,17. 电话号码的字母组合

目录 77. 组合题目描述题解 216. 组合总和 III题目描述题解 17. 电话号码的字母组合题目描述题解 77. 组合 点此跳转题目链接 题目描述 给定两个整数 n 和 k&#xff0c;返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何顺序 返回答案。 示例 1&#xff1a; 输…

python爬虫入门小案例

python爬虫 以下内容仅供学习交流,请勿用作其他用途,若涉及隐私和版权问题,请及时联系我删除 闲来无事,学了学爬虫小知识,适合入门,文笔拙劣,还望见谅 爬虫是什么: 爬取网页上的文字,图片,视频,音频 自动化操作浏览器,比如填写表单,打卡,提高工作效率爬虫的注意事项: 爬虫…

lua 游戏架构 之 游戏 AI (九)ai_mgr Ai管理

定义ai_mgr的类&#xff0c;用于管理游戏中实体的AI组件。 先定义 AI行为枚举和优先级&#xff1a; lua 游戏架构 之 游戏 AI &#xff08;八&#xff09;ai_tbl 行为和优先级-CSDN博客https://blog.csdn.net/heyuchang666/article/details/140712839?spm1001.2014.3001.55…

MySQL环境的配置文件json

突然了解到&#xff0c;使用json文件去进行环境的配置&#xff0c;这样修改参数的时候就只需要去改json文件中的内容&#xff0c;不需要去修改代码中的内容&#xff0c;其他人的MySQL和我的MySQL也不同&#xff0c;这时其他人只需要修改json文件中的内容&#xff0c;清晰明了&a…

基于微信小程序+SpringBoot+Vue的核酸检测服务系统(带1w+文档)

基于微信小程序SpringBootVue的核酸检测服务系统(带1w文档) 基于微信小程序SpringBootVue的核酸检测服务系统(带1w文档) 在目前的情况下&#xff0c;可以引进一款医院核酸检测服务系统这样的现代化管理工具&#xff0c;这个工具就是解决上述问题的最好的解决方案。它不仅可以实…

2024年开发者最爱用的Bug跟踪工具

国内外主流的10款BUG管理软件对比&#xff1a;PingCode、Worktile、禅道&#xff08;ZenTao&#xff09;、Bugzilla、Tapd、CODING、Teambition、Testin、Tower、乐道。 在软件开发的世界里&#xff0c;管理和跟踪Bug是一个让许多开发者头疼的问题。选择一个合适的Bug管理工具不…

C++题目_逃生路线总数(dfs)

题目描述 2021年夏天&#xff0c;LSH开开心心的骑着电动车出去玩&#xff0c;结果一不留神&#xff0c;他骑着电动车进入了一只恶犬的领地。恶犬发现它的领地被LSH侵犯了&#xff0c;立马去追LSH&#xff0c;准备咬他一大口。LSH慌忙逃窜&#xff0c;但是他的电动车电量即将耗…

电力电子中的电大、电小尺寸?

01 前言 大家好&#xff0c;这期我们聊一下电力电子中的电大尺寸和电小尺寸。对于大部分电力电子应用工程师来说&#xff0c;可能并不太清楚电尺寸的概念。因为要谈到电尺寸就要考虑电信号的传播速度&#xff0c;一般会在高频、超高频电路中有所涉及&#xff0c;而大部分硅基…

【优秀python系统毕设】基于Python flask的气象数据可视化系统设计与实现,有LSTM算法预测气温

第一章 绪论 1.1 研究背景 在当今信息爆炸的时代&#xff0c;气象数据作为重要的环境信息资源&#xff0c;扮演着关键的角色。然而&#xff0c;传统的气象数据呈现方式存在信息量庞大、难以理解的问题&#xff0c;限制了用户对气象信息的深入理解和利用。因此&#xff0c;基…

[算法题]非对称之美

题目链接: 非对称之美 题目要求求最长非回文子字符串的长度, 那么如果字符串本身不是回文串, 那么长度就是该字符串本身的长度: 如果字符串本身是一个回文串, 那么只需把该字符串去掉一个字母后, 该字符串就不是回文串了, 长度也就是原本的长度减 1, 即: 所以想要求最长非回文…

BCH码误码率ber性能仿真(MATLAB)

BCH码 不同于奇偶校验码只能检验数据传输是否出错&#xff0c;BCH码可以实现对数据的检验和纠错 BCH&#xff08;n&#xff0c;k&#xff09;中的n代表总码元&#xff0c;k代表有效码元&#xff0c;相应的n-k即代表纠错码元 本文着重比较分析BCH(255,207),BCH(255,131),BCH(255…