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

零基础-动手学深度学习-9.3. 深度循环神经网络

感觉这个网络的话其实在上一章看LSTM的时候就能感觉到不一样的事情了,你明显能感觉到诶我引入一个关于Ct的一个状态就好像是在往另外一个方向延展,那么你就会想如果往那边延展特别特别多会怎么样呢?没错这就是深度的循环网络了。

9.3.1. 函数依赖关系

9.3.2. 简洁实现

实现多层循环神经网络所需的许多逻辑细节在高级API中都是现成的。 简单起见,我们仅示范使用此类内置函数的实现方式。 以长短期记忆网络模型为例, 该代码与之前在 9.2节中使用的代码非常相似, 实际上唯一的区别是我们指定了层的数量, 而不是使用单一层这个默认值。 像往常一样,我们从加载数据集开始。

import torch
from torch import nn
from d2l import torch as d2lbatch_size, num_steps = 32, 35
train_iter, vocab = d2l.load_data_time_machine(batch_size, num_steps)

像选择超参数这类架构决策也跟 9.2节中的决策非常相似。 因为我们有不同的词元,所以输入和输出都选择相同数量,即vocab_size。 隐藏单元的数量仍然是。 唯一的区别是,我们现在通过num_layers的值来设定隐藏层数。

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)

9.3.3. 训练与预测

由于使用了长短期记忆网络模型来实例化两个层,因此训练速度被大大降低了。

num_epochs, lr = 500, 2#两层上在overfitting上更加合适一点
d2l.train_ch8(model, train_iter, vocab, lr*1.0, num_epochs, device)输出:perplexity 1.0, 186005.7 tokens/sec on cuda:0
time traveller for so it will be convenient to speak of himwas e
travelleryou can show black is white by argument said filby

一般对角线上会做并行,这样非常快。

9.3.4. 小结

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

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

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

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

相关文章:

  • 流程图使用规范
  • Android 之 面试八股文
  • GCC与NLP实战:编译技术赋能自然语言处理
  • 解决GitHub无法打开
  • idea开发工具中git如何忽略编译文件build、gradle的文件?
  • 复杂井眼测量中,陀螺定向和磁通门定向哪个更胜一筹?
  • 幕后英雄 —— Background Scripts (Service Worker)
  • 浅析 Berachain v2 ,对原有 PoL 机制进行了哪些升级?
  • 我的世界Java版1.21.4的Fabric模组开发教程(十七)自定义维度
  • 比较一下XGBoost与LSTM、GRU、Transformer数据格式方面的核心区别
  • 零基础-动手学深度学习-9.1. 门控循环单元(GRU)及代码实现
  • Docker国内可用镜像列表(长期免费)
  • 接入小甲鱼数字人API教程【详解】
  • Next.js 样式:CSS 模块、Sass 等
  • ENSP 中静态路由负载分担
  • vue3接收SSE流数据进行实时渲染日志
  • RabbitMQ-日常运维命令
  • CS231n2017 Assignment3 RNN、LSTM部分
  • 3深度学习Pytorch-神经网络--全连接神经网络、数据准备(构建数据类Dataset、TensorDataset 和数据加载器DataLoader)
  • PID基础知识
  • 关于其他副脑类 GPTs 市场现状及研究报告
  • mysql全屏终端全量、部分备份、恢复脚本
  • Python面试题及详细答案150道(16-30) -- 数据结构篇
  • 分布式微服务--GateWay(过滤器及使用Gateway注意点)
  • 告别YAML,在SpringBoot中用数据库配置替代配置文件
  • word生成问题总结
  • 【遥感图像入门】近三年遥感图像建筑物细粒度分类技术一览
  • Day116 若依融合mqtt
  • 界面组件DevExpress WPF中文教程:网格视图数据布局 - 紧凑模式
  • 音视频时间戳获取与同步原理详解