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

成都专业网站建设公司如何写网站优化方案

成都专业网站建设公司,如何写网站优化方案,电脑在哪网站接做扇子单,中企动力网站建设合同文章目录 循环神经网络的简洁实现1. 定义模型2. 训练与预测 循环神经网络的简洁实现 # 使用深度学习框架的高级API提供的函数更有效地实现相同的语言模型 import torch from torch import nn from torch.nn import functional as F from d2l import torch as d2lbatch_size, …

文章目录

    • 循环神经网络的简洁实现
      • 1. 定义模型
      • 2. 训练与预测

循环神经网络的简洁实现

# 使用深度学习框架的高级API提供的函数更有效地实现相同的语言模型
import torch 
from torch import nn
from torch.nn import functional as F
from d2l import torch as d2lbatch_size, num_steps = 32, 35
train_iter, vocab = d2l.load_data_time_machine(batch_size, num_steps)

1. 定义模型

构造一个具有256个隐藏单元的单隐藏层的循环神经网络层rnn_layer

# 构造一个具有256个隐藏单元的单隐藏层的循环神经网络层rnn_layer
num_hiddens =256
rnn_layer = nn.RNN(len(vocab), num_hiddens)

使用张量初始化状态,形状为(隐藏层数,批量大小,隐藏单元数)

# 使用张量初始化状态,形状为(隐藏层数,批量大小,隐藏单元数)
state = torch.zeros((1, batch_size, num_hiddens))
state.shape

在这里插入图片描述
通过一个隐状态和一个输入,可以用更新后的隐状态计算输出。

# 通过一个隐状态和一个输入,可以用更新后的隐状态计算输出。
# rnn_layer的“输出”(Y)不涉及输出层的计算: 它是指每个时间步的隐状态,这些隐状态可以用作后续输出层的输入。
X = torch.rand(size=(num_steps, batch_size, len(vocab)))
Y, state_new = rnn_layer(X, state)
Y.shape, state_new.shape

在这里插入图片描述为一个完整的循环神经网络模型定义了一个RNNModel类,rnn_layer只包含隐藏的循环层,我们还需要创建一个单独的输出层。

# 为一个完整的循环神经网络模型定义了一个RNNModel类
# rnn_layer只包含隐藏的循环层,我们还需要创建一个单独的输出层
#save
class RNNModel(nn.Module):"""循环神经网络模型"""def __init__(self, rnn_layer, vocab_size, **kwargs):super(RNNModel, self).__init__(**kwargs)self.rnn = rnn_layerself.vocab_size = vocab_sizeself.num_hiddens = self.rnn.hidden_size# 如果RNN是双向的(之后将介绍),num_directions应该是2,否则应该是1if not self.rnn.bidirectional:self.num_directions = 1self.linear = nn.Linear(self.num_hiddens, self.vocab_size)else:self.num_directions = 2self.linear = nn.Linear(self.num_hiddens * 2, self.vocab_size)def forward(self, inputs, state):X = F.one_hot(inputs.T.long(), self.vocab_size)X = X.to(torch.float32)Y, state = self.rnn(X, state)# 全连接层首先将Y的形状改为(时间步数*批量大小,隐藏单元数)# 它的输出形状是(时间步数*批量大小,词表大小)。output = self.linear(Y.reshape((-1, Y.shape[-1])))return output, statedef begin_state(self, device, batch_size=1):if not isinstance(self.rnn, nn.LSTM):# nn.GRU以张量作为隐状态return torch.zeros((self.num_directions * self.rnn.num_layers, batch_size, self.num_hiddens), device=device)else:# nn.LSTM以元组作为隐状态return (torch.zeros((self.num_directions * self.rnn.num_layers, batch_size, self.num_hiddens), device=device),torch.zeros((self.num_directions * self.rnn.num_layers,batch_size, self.num_hiddens), device=device))

2. 训练与预测

在训练模型之前,基于一个具有随机权重的模型进行预测。

# 在训练模型之前,基于一个具有随机权重的模型进行预测。
device = d2l.try_gpu()
net = RNNModel(rnn_layer, vocab_size=len(vocab))
net = net.to(device)
d2l.predict_ch8('time traveller', 10, net, vocab, device)

在这里插入图片描述
使用之前的超参数调用train_ch8,并且使用高级API训练模型

# 使用之前的超参数调用train_ch8,并且使用高级API训练模型
num_epochs, lr = 500, 1
d2l.train_ch8(net, train_iter, vocab, lr, num_epochs, device)

在这里插入图片描述

http://www.yayakq.cn/news/371111/

相关文章:

  • 重庆南川网站制作公司推荐无觅wordpress
  • 做ppt哪些网站的图片质量高wordpress博客位置
  • 陕西省建设厅网站ca验证失败网站名称和域名不一致
  • 开发区网站建设工作管理办法上海市干部公示
  • 个人做网站需要备案吗成为架构师有多难
  • 嘉兴微信网站川畅联系 做网站多少钱
  • 个人工作室 网站建设广东省建设网站
  • 承德兴隆建设局网站i18n wordpress
  • wordpress 回收站在哪网站的运营维护
  • 手机零售网站 关键词网页升级访问正在跳转中
  • 营销型网站怎么收费标准做网站怎么对接国际收款商户
  • 查排名网站网站后台怎么挂广告 怎么做
  • 台州律师网站建设项目网络由箭线和节点构成
  • 网站改进建议有哪些简单网站系统
  • 长沙网站seo报价wordpress手机底部导航
  • 专业婚纱摄影网站制作上海网站设计公司有哪些
  • 5118网站是免费的吗国外网站的分析工具有哪些
  • 广告设计与制作前景seo sem是做什么的
  • 网站用什么主机no.7 wordpress个
  • 国外商品网站沈阳唐朝网络的服务内容
  • 给别人做网站别人违法经营什么网站可以做自媒体
  • 企业网站意思移动端首页尺寸
  • 政务公开加强网站建设淘宝网站首页怎么做
  • 余姚建设网站的公司深圳小程序推广
  • 长尾关键词爱站网民间it网站建设
  • 潍坊网站关键词推广网站建设与管理的通知
  • 企业门户网站中国燃气wordpress 分类 图标
  • 手机制作网站软件下载wordpress just
  • 自己有了域名 怎么做网站淘宝客网站api
  • 赢展网站建设吸引顾客的营销策略