pytorch 笔记:GRU

1 介绍

对于输入序列中的每个元素,每一层都计算以下函数:

  • ht​ 是t时刻 的隐藏状态
  • xt​ 是t时刻 的输入
  • ht−1​ 是 t-1时刻 同层的隐藏状态或 0时刻 的初始隐藏状态
  • rt​,zt​,nt​ 分别是重置门、更新门和新门。
  • σ 是 sigmoid 函数
  • ∗ 是 Hadamard 乘积。

在多层GRU中,第 l 层的输入x_t^{(l)}(对于 l≥2)是前一层的隐藏状态 h_t^{(l-1)}乘以概率 dropout \delta_t^{t-1}

2 基本使用方法

torch.nn.GRU(self, input_size, hidden_size, num_layers=1, bias=True, batch_first=False, dropout=0.0, bidirectional=False,    device=None, dtype=None)

3 参数说明

input_size输入 x 中预期的特征数
hidden_size隐藏状态 h 的特征数
num_layersGRU层数
bias

如果为 False,则该层不使用偏置权重bi,bh

batch_first如果为 True,则输入和输出张量以(batch, seq, feature)提供,而不是(seq, batch, feature)
dropout如果非零,则在除最后一层之外的每个 GRU 层的输出上引入一个 Dropout 层,其中 dropout 概率等于 dropout
bidirectional如果为 True,成为双向 GRU。默认值为 False

输入:input (seq_len,batch,input_size), h_0(D*num_layers,batch,hidden_size) D表示单向还是双向GRU

输出:output(seq_len,D*hidden_size),h_n(D*num_layers,batch,hidden_size)

4 举例

import torch.nn as nnrnn = nn.GRU(input_size=5,hidden_size=10,num_layers=2)input_x = torch.randn(7, 3, 5)
#seq_len,batch,input_sizeh0 = torch.randn(2, 3, 10)
#D*num_layer,batch,hidden_sizeoutput, hn = rnn(input_x, h0)
output.shape, hn.shape,output, hn
#seq_len,batch,input_size D*num_layer,batch,hidden_size
'''
(torch.Size([7, 3, 10]),torch.Size([2, 3, 10]),tensor([[[ 2.3096e-01,  4.7877e-01, -6.0747e-02,  3.1251e-01,  4.4528e-01,-2.6670e-01, -1.1168e+00,  7.3444e-01, -8.5343e-01, -8.6078e-02],[ 1.4765e+00, -4.4738e-01,  2.9812e-01, -6.6684e-01,  4.5928e-01,1.5543e+00, -2.7558e-01, -7.5153e-01,  5.0880e-01,  6.0543e-02],[ 8.9311e-01,  4.0004e-01,  1.6901e-01,  1.5932e-01, -1.2210e-01,3.0321e-01, -2.8612e-01, -1.4686e-01,  2.8579e-01,  1.1582e-02]],[[ 3.2400e-01,  4.1382e-01, -1.6979e-01,  9.6827e-02,  4.6004e-01,-4.7673e-02, -5.0143e-01,  4.6305e-01, -6.7894e-01,  8.7199e-04],[ 1.0779e+00, -1.7995e-02,  1.4842e-01, -4.0097e-01,  2.1145e-01,1.0362e+00, -3.9766e-01, -5.6097e-01,  3.0160e-01,  1.4931e-02],[ 6.1099e-01,  3.5822e-01,  9.1912e-02, -6.6886e-02,  8.1180e-02,2.2922e-01, -1.2506e-01,  2.9601e-02,  2.8049e-02, -1.5160e-02]],[[ 3.4037e-01,  3.0256e-01, -9.5463e-02, -1.0667e-01,  4.1159e-01,-1.7158e-02, -1.6656e-01,  3.3041e-01, -4.9750e-01, -9.4554e-02],[ 7.2198e-01,  1.1721e-01,  5.7578e-02, -1.4264e-01,  4.4159e-02,7.4929e-01, -2.6565e-01, -3.7547e-01,  1.3828e-01,  6.9896e-02],[ 4.5888e-01,  2.9849e-01,  1.1400e-01, -1.4953e-01,  1.8319e-01,1.2005e-01, -1.0588e-01,  1.2678e-01, -9.6599e-02, -6.3649e-02]],[[ 2.6923e-01,  1.9539e-01, -8.3442e-02, -1.0092e-01,  2.9727e-01,5.5752e-02, -1.6502e-01,  1.5522e-01, -3.3283e-01, -1.5289e-02],[ 5.0674e-01,  2.2620e-01, -1.6900e-02, -1.6849e-02,  1.3829e-01,3.0847e-01, -1.6965e-01, -1.9627e-01,  3.3316e-02,  6.3073e-02],[ 3.9663e-01,  3.0165e-01, -1.2318e-02, -1.4176e-01,  2.3552e-01,-3.8588e-02, -8.2455e-03,  1.6961e-01, -1.3624e-01, -7.3225e-03]],[[ 2.4548e-01,  1.7003e-01, -1.9854e-01, -4.2608e-02,  2.2749e-01,6.0757e-02, -7.5942e-02,  1.0205e-01, -2.2418e-01,  1.1453e-01],[ 3.5747e-01,  1.6106e-01, -2.9625e-02,  7.5182e-02,  7.6844e-02,2.4100e-01, -7.6047e-02, -6.7489e-02, -3.3757e-02,  1.1799e-01],[ 3.1698e-01,  1.8008e-01, -5.1838e-02, -9.3295e-02,  1.7627e-01,2.4971e-02, -2.4372e-02,  1.4522e-01, -1.1888e-01,  3.5780e-02]],[[ 1.8998e-01,  9.6675e-02, -9.7632e-02, -8.5483e-02,  1.2471e-01,1.4351e-01, -3.0885e-02,  1.0894e-01, -1.8797e-01,  3.5201e-02],[ 2.8278e-01,  1.7304e-01, -1.9512e-02,  7.8874e-02,  1.4434e-01,1.0537e-01, -8.5619e-02,  2.5765e-02, -9.0284e-02,  9.8876e-02],[ 2.3387e-01,  8.8567e-02, -3.5850e-02, -2.8561e-02,  1.2145e-01,1.1404e-01, -1.1314e-01,  7.1272e-02, -1.0356e-01,  7.2997e-02]],[[ 1.5414e-01,  8.1896e-02, -1.4372e-01, -4.9761e-02,  8.5839e-02,1.7213e-01, -3.9533e-02,  4.7469e-02, -1.3332e-01,  8.3625e-02],[ 2.3274e-01,  1.5516e-01, -4.0695e-02,  3.1735e-02,  1.9340e-01,4.3769e-03, -4.9590e-02,  6.0317e-02, -1.0783e-01,  4.7750e-02],[ 1.3002e-01,  1.2265e-02, -3.3010e-03,  2.6260e-02,  6.5244e-02,2.3599e-01, -2.3918e-01, -4.4371e-02, -9.0464e-02,  1.1589e-01]]],grad_fn=<StackBackward0>),tensor([[[ 0.4118, -0.0513, -0.2540, -0.2115, -0.4503,  0.0357, -0.2615,-0.2243,  0.0580, -0.1405],[ 0.2653,  0.5365, -0.5024, -0.3466, -0.1986,  0.2726, -0.1399,-0.1821, -0.3203,  0.1749],[ 0.6847, -0.2840, -0.1549,  0.3359, -0.0230, -0.0229, -0.2775,-0.1442, -0.1158, -0.2203]],[[ 0.1541,  0.0819, -0.1437, -0.0498,  0.0858,  0.1721, -0.0395,0.0475, -0.1333,  0.0836],[ 0.2327,  0.1552, -0.0407,  0.0317,  0.1934,  0.0044, -0.0496,0.0603, -0.1078,  0.0477],[ 0.1300,  0.0123, -0.0033,  0.0263,  0.0652,  0.2360, -0.2392,-0.0444, -0.0905,  0.1159]]], grad_fn=<StackBackward0>))
'''

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

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

相关文章

OpenCV 笔记(4):图像的算术运算、逻辑运算

Part11. 图像的算术运算 图像的本质是一个矩阵&#xff0c;所以可以对它进行一些常见的算术运算&#xff0c;例如加、减、乘、除、平方根、对数、绝对值等等。除此之外&#xff0c;还可以对图像进行逻辑运算和几何变换。 我们先从简单的图像加、减、逻辑运算开始介绍。后续会有…

【Git企业开发】第四节.Git的分支管理策略和bug分支

文章目录 前言一、Git的分支管理策略 1.1 Fast forward 模式和--no-ff 模式 1.2 企业分支管理策略二、bug分支三、删除临时分支四、总结总结 前言 一、Git的分支管理策略 1.1 Fast forward 模式和--no-ff 模式 通常合并分支时&#xff0c;如果可能&#xff0c;Git 会…

61. 旋转链表、Leetcode的Python实现

博客主页&#xff1a;&#x1f3c6;李歘歘的博客 &#x1f3c6; &#x1f33a;每天不定期分享一些包括但不限于计算机基础、算法、后端开发相关的知识点&#xff0c;以及职场小菜鸡的生活。&#x1f33a; &#x1f497;点关注不迷路&#xff0c;总有一些&#x1f4d6;知识点&am…

基于GEE云平台一种快速修复Landsat影像条带色差的方法

这是之前关于去除遥感影像条带的另一篇文章&#xff0c;因为出版商推迟了一年发布&#xff0c;所以让大家久等了。这篇文章的主要目的是对Landsat系列卫星因为条带拼接或者镶嵌产生的条带来进行的一种在线修复方式。 原文连接 一种快速修复Landsat影像条带色差的方法 题目&a…

ffmpeg命令帮助文档

一&#xff1a;帮助文档的命令格式 ffmpeg -h帮助的基本信息ffmpeg -h long帮助的高级信息ffmpeg -h full帮助的全部信息 ffmpeg的命令使用方式&#xff1a;ffmpeg [options] [[infile options] -i infile] [[outfile options] outfile] 二&#xff1a;将帮助文档输出到文件 …

【IDEA】设置sql提示

第一步&#xff1a;注入SQL语言 1.首先选择任意一条sql语句&#xff0c;右击&#xff0c;选择 ‘显示上下文操作’ 2.选择 ‘注入语言或引用’ 3. 往下翻&#xff0c;找到MySQL 第二步&#xff1a;配置MySQL数据库连接 1.首先点击侧边的数据库&#xff0c;再点击上面的加号 2…

中兴路由器、小米路由器无线信号强度对比

最近小米新推出的路由器小米AX3000T非常火&#xff0c;在网上看到有好多人都在安利&#xff0c;引起了我的兴趣&#xff0c;刚好老家的路由器用了这么久也是时候要换一个了&#xff0c;毕竟我妈老说上网卡??所以我立马就在PDD搞了一台回来&#xff0c;打算和我现在家里用的中…

二叉树进阶 - (C++二叉搜索树的实现)

二叉树进阶 - &#xff08;二叉搜索树的实现&#xff09; 二叉搜索树1. 二叉搜索树概念2. 二叉搜索树操作2.1 二叉搜索树的查找2.2 二叉搜索树的插入2.3 二叉搜索树的删除(重点) 3. 二叉搜索树的(代码)实现 二叉搜索树 1. 二叉搜索树概念 二叉搜索树又称二叉排序树&#xff0…

腾讯云域名备案后,如何解析到华为云服务器Linux宝塔面板

一、购买域名并且进行备案和解析&#xff0c;正常情况下&#xff0c;购买完域名&#xff0c;如果找不到去哪备案&#xff0c;可以在腾讯云上搜索“备案”关键词就会出现了&#xff0c;所以这里不做详细介绍&#xff0c;直接进行步骤提示&#xff1a; 二、申请ssl证书&#xff0…

diffusers-Load adapters

https://huggingface.co/docs/diffusers/main/en/using-diffusers/loading_adaptershttps://huggingface.co/docs/diffusers/main/en/using-diffusers/loading_adapters 有几种训练技术可以个性化扩散模型&#xff0c;生成特定主题的图像或某些风格的图像。每种训练方法都会产…

关于嵌入式rtthread系统与单片机芯片

简介 我估计已经有很久没更新了&#xff0c;近一年都在某个国企里工作&#xff0c;我做的就是嵌入式工程师的岗位&#xff0c;最近才刚刚退出来&#xff0c;想来说说自己的工作使用的软件和系统。 本身进公司的时候&#xff0c;其实做的就是写单片机的板子的程序的工作&#x…

mysql迁移data目录(Linux-Centos)

随着时间的推移&#xff0c;mysql的数据量越越大&#xff0c;使用yum默认安装的目录为系统盘 /var/lib/mysql&#xff0c;现重新挂载了一个硬盘&#xff0c;需要做数据目录的迁移到 /mnt/data/。以解决占用系统盘过高情况。 1.强烈建议这种操作。镜像一个一样的Centos系统&…

基于springboot实现游戏分享网站系统项目【项目源码+论文说明】

基于springboot实现游戏分享网站演示 摘要 网络的广泛应用给生活带来了十分的便利。所以把游戏分享管理与现在网络相结合&#xff0c;利用java技术建设游戏分享网站&#xff0c;实现游戏分享的信息化。则对于进一步提高游戏分享管理发展&#xff0c;丰富游戏分享管理经验能起到…

canvas实现环形进度条

与setTimeout和setInterval不同&#xff0c;requestAnimationFrame不需要设置时间间隔。 效果图 源代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Canvas progress</title> </head&g…

软件测试/测试开发丨ChatGPT能否成为PPT最佳伴侣

点此获取更多相关资料 简介 PPT 已经渗透到我们的日常工作中&#xff0c;无论是工作汇报、商务报告、学术演讲、培训材料都常常要求编写一个正式的 PPT&#xff0c;协助完成一次汇报或一次演讲。PPT相比于传统文本的就是有布局、图片、动画效果等&#xff0c;可以给到观众更好…

Qt 窗口无法移出屏幕

1 使用场景 设计一个缩进/展开widget的效果&#xff0c;抽屉效果。 看到实现的方法有定时器里move窗口&#xff0c;或是使用QPropertyAnimation。 setWindowFlags(Qt::Dialog | Qt::FramelessWindowHint |Qt::X11BypassWindowManagerHint&#xff09;&#xff1b; 记得在移…

linux笔记总结-基本命令

参考&#xff1a; 1.Linux 和Windows比 比较 &#xff08;了解&#xff09; 1. 记住一句经典的话&#xff1a;在 Linux 世界里&#xff0c;一切皆文件 2. Linux目录结构 /lib • 系统开机所需要最基本的动态连接共享库&#xff0c;其作用类似于Windows里的DLL文件。几 乎所有…

企业采用生成式人工智能需要考虑什么

添加图片注释&#xff0c;不超过 140 字&#xff08;可选&#xff09; 添加图片注释&#xff0c;不超过 140 字&#xff08;可选&#xff09; 最近&#xff0c;各行业采用人工智能生成内容&#xff08;AIGC&#xff09;的趋势显着。这种变革性技术的一些著名实施包括Notion AI…

玩一下Spring Boot

文章目录 1 开发环境1.1 JDK1.2 IntelliJ IDEA2 Spring Boot2.1 创建项目2.2 创建模板页面2.3 创建控制器2.4 启动项目2.5 访问页面1 开发环境 1.1 JDK 安装JDK21 配置环境变量 在命令行查看JDK版本 玩一玩jshell

Windows 11 Home 中启用 Hyper-V

Hyper-V 是微软开发的基于硬件的虚拟机管理程序。它允许用户在 Windows 操作系统之上运行不同操作系统的多个实例。目前&#xff0c;Hyper-V 也支持 Windows、Ubuntu 和其他 Linux 发行版。 如果发现像我这样电脑上启用Hyper-V选项可以按照以下步骤进行操作。 一、新建一个txt…