nn.Flatten()函数详解及示例
torch.nn.Flatten(start_dim=1, end_dim=- 1)
作用:将连续的维度范围展平为张量。 经常在nn.Sequential()中出现,一般写在某个神经网络模型之后,用于对神经网络模型的输出进行处理,得到tensor类型的数据。
有俩个参数,start_dim和end_dim,分别表示开始的维度和终止的维度,默认值分别是1和-1,其中1表示第一维度,-1表示最后的维度。结合起来看意思就是从第一维度到最后一个维度全部给展平为张量。(注意:数据的维度是从0开始的,也就是存在第0维度,第一维度并不是真正意义上的第一个)
同理,如果我这么写:
self.flat = nn.Flatten(start_dim=2, end_dim=3)
那么意思就是从第二维度开始,到第三维度全部给展平,也就是将2、3两个维度展平。
官网给出的示例:
input = torch.randn(32, 1, 5, 5)
# With default parameters
m = nn.Flatten()
output = m(input)
output.size()
#torch.Size([32, 25])
# With non-default parameters
m = nn.Flatten(0, 2)
output = m(input)
output.size()
#torch.Size([160, 5])
#开头的代码是注释
整段代码的意思是:给定一个维度为(32,1,5,5)的随机数据。
1.先使用一次nn.Flatten(),使用默认参数:
m = nn.Flatten()
也就是说从第一维度展平到最后一个维度,数据的维度是从0开始的,第一维度实际上是数据的第二个位置代表的维度,也就是样例中的1。
因此进行展平后的结果也就是[32,1×5×5]➡[32,25]
2.接着再使用一次指定参数的nn.Flatten(),即
m = nn.Flatten(0, 2)
也就是说从第0维度展平到第2维度,0~2,对应的也就是前三个维度。
因此结果就是[32×1×5,5]➡[160,5]
因此进行展平后的结果也就是[32,1*5*5]➡[32,25]
nn.Flatten()函数详解及示例相关推荐
- pytorch之torch.nn.Conv2d()函数详解
文章目录 一.官方文档介绍 二.torch.nn.Conv2d()函数详解 参数详解 参数dilation--扩张卷积(也叫空洞卷积) 参数groups--分组卷积 三.代码实例 一.官方文档介绍 官 ...
- nn.Linear()函数详解
nn.Linear()函数详解 torch.nn.Linear(in_features, out_features, bias=True, device=None, dtype=None)[原文地址] ...
- waitpid函数详解+应用示例
来源:微信公众号「编程学习基地」 文章目录 waitpid函数的使用 waitpid()函数定义 参数详解 使用示例 waitpid函数的使用 当用fork启动一个新的子进程的时候,子进程就有了新的生 ...
- torch.flatten()函数详解
自己的理解: 介绍torch.flatten()函数的具体使用方法1.首先创建一个三维张量2.调用torch.flatten()函数 import torchx = torch.randn(2, 3, ...
- 【PyTorch】nn.Conv2d函数详解
文章目录 1. 函数语法格式 2. 参数解释 3. 尺寸关系 4. 使用案例 5. nn.functional.conv2d 1. 函数语法格式 CONV2D官方链接 torch.nn.Conv2d( ...
- C语言scanf函数详解和示例
文章目录 一.数据输入 二.断章取义 三.scanf输入 1.输入整数 2.输入字符 3.输入浮点数 4.输入字符串 5.输入多个内容 6.示例(book13.c) 四.注意事项 五.获取视频教程 六 ...
- C语言printf函数详解和示例
文章目录 1.类型符(type) 2.宽度(width) 3.对齐标志(flags) 4.精度(prec) 5.格式化输出到字符串 6.获取视频教程 7.版权声明 C语言格式化输出的函数有printf ...
- php pack方法,php pack()函数详解与示例
手册: pack (PHP 3, PHP 4, PHP 5) pack -- Pack data into binary string 说明 string pack ( string format [ ...
- tf.nn.bidirectional_dynamic_rnn()函数详解
转载自:https://blog.csdn.net/zhylhy520/article/details/86364789 首先我们了解一下函数的参数 bidirectional_dynamic_rnn ...
最新文章
- [转化率预估-1]引言
- gdb php-fpm,使用 gdb 调试 php-fpm 异常错误
- python3 dict 转 json 不ascii转码 去除空格
- ROS服务通信机制原理及示例代码
- 业务专题篇:用户使用路径分析
- (三)opencv_py之阈值处理
- java jnlp被阻止_JNLP应用程序Web服务访问被拒绝 - java.io.FilePermission
- python_线程、进程和协程
- padding影响整个div的实际宽度
- angular 模块构建_如何通过11个简单的步骤从头开始构建Angular 8应用
- 6.边缘检测:梯度——回顾、简化的图像、边缘概念_1
- vnpy学习_03学习推荐
- ❤️和广告说再见,将“沉浸式阅读”进行到底❤️
- jQuery基础资料(三)
- 关于双层原子台阶的形成机制
- 数据结构——线性表的链式存储
- 怎样在计算机上登录qq音乐,如何使用手机控制电脑qq音乐播放
- 3分钟,把你的安卓手机/平板变成你的电脑副屏
- 北京市工作居住证的申请与办理
- JAVA开发运维(nginx工作原理)
热门文章
- 人工智能时代是什么时代?
- c语言单片机程序设计例,51单片机C语言程序设计经典实例(第2版)
- firewall添加白名单_详解firewall的规则设置与命令(白名单设置)
- 四、Python数据挖掘(Pandas库)
- Visual Studio Code (echarts)数据可视化,设置数据缩放区间为20到40,设置标题字体大小,颜色以及是否加粗,设置柱状图颜色
- ubuntu 下最简单的歌词软件osdlyric (with banshee)
- 天龙DBP-1611UD蓝光播放机回顾
- 【日常折腾】Y7000P触控板失灵这件事
- CPU, GPU, FPGA计算能力
- 导出到word时,报错,com组件错时,酱紫弄——————从同事那里抄滴