Pytorch 扩展Tensor维度、压缩Tensor维度的方法


Posted in Python onSeptember 09, 2020

1. 扩展Tensor维度

相信刚接触Pytorch的宝宝们,会遇到这样一个问题,输入的数据维度和实验需要维度不一致,输入的可能是2维数据或3维数据,实验需要用到3维或4维数据,那么我们需要扩展这个维度。其实特别简单,只要对数据加一个扩展维度方法就可以了。

1.1torch.unsqueeze(self: Tensor, dim: _int)

torch.unsqueeze(self: Tensor, dim: _int)

参数说明:self:输入的tensor数据,dim:要对哪个维度扩展就输入那个维度的整数,可以输入0,1,2……

1.2Code

第一种方式,输入数据后直接加unsqueeze()

扩展第一维和第二维为1

import torch


def reset_unsqueeze1():
 data = torch.rand([3, 3])
 data1 = data.unsqueeze(dim=0).unsqueeze(dim=1)
 print("data_size: ", data.shape)
 print("data: ", data)
 print("data1_size: ", data1.shape)
 print("data1: ", data1)

结果显示

Pytorch 扩展Tensor维度、压缩Tensor维度的方法

第二种方式,用torch.unsqueeze()

import torch


def reset_unsqueeze2():
 data = torch.rand([3, 3])
 data1 = torch.unsqueeze(data, dim=0)
 print("data_size: ", data.shape)
 print("data: ", data)
 print("data1_size: ", data1.shape)
 print("data1: ", data1)

结果显示

Pytorch 扩展Tensor维度、压缩Tensor维度的方法

2. 压缩Tensor维度

2.1torch.squeeze(self: Tensor, dim: _int)

这个方法刚好和torch.unsqueeze()方法效果相反,压缩Tensor维度。

2.2 Code

第一种方式,输入数据后直接加squeeze()

import torch


def reset_squeeze1():
 data = torch.rand([1, 1, 3, 3])
 data1 = data.squeeze(dim=0).squeeze(dim=1)
 print("data_size: ", data.shape)
 print("data: ", data)
 print("data1_size: ", data1.shape)
 print("data1: ", data1)

结果显示

Pytorch 扩展Tensor维度、压缩Tensor维度的方法

第二种方式,用torch.squeeze()

import torch


def reset_squeeze2():
 data = torch.rand([1, 1, 3, 3])
 data1 = torch.squeeze(data, dim=0)
 print("data_size: ", data.shape)
 print("data: ", data)
 print("data1_size: ", data1.shape)
 print("data1: ", data1)

结果显示

Pytorch 扩展Tensor维度、压缩Tensor维度的方法

到此这篇关于Pytorch 扩展Tensor维度、压缩Tensor维度的方法的文章就介绍到这了,更多相关Pytorch 扩展Tensor维度、压缩Tensor维度内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python中的函数用法入门教程
Sep 02 Python
python递归删除指定目录及其所有内容的方法
Jan 13 Python
在pycharm中使用git版本管理以及同步github的方法
Jan 16 Python
Python常用模块之requests模块用法分析
May 15 Python
django 连接数据库 sqlite的例子
Aug 14 Python
用Pytorch训练CNN(数据集MNIST,使用GPU的方法)
Aug 19 Python
python实现tail -f 功能
Jan 17 Python
Python实现FLV视频拼接功能
Jan 21 Python
python GUI库图形界面开发之PyQt5信号与槽基本操作
Feb 25 Python
python 在threading中如何处理主进程和子线程的关系
Apr 25 Python
基于django micro搭建网站实现加水印功能
May 22 Python
一文解决django 2.2与mysql兼容性问题
Jul 15 Python
Python列表推导式实现代码实例
Sep 09 #Python
利用Python中的Xpath实现一个在线汇率转换器
Sep 09 #Python
pytorch使用horovod多gpu训练的实现
Sep 09 #Python
python,Java,JavaScript实现indexOf
Sep 09 #Python
python 5个顶级异步框架推荐
Sep 09 #Python
python PyAUtoGUI库实现自动化控制鼠标键盘
Sep 09 #Python
Pytorch生成随机数Tensor的方法汇总
Sep 09 #Python
You might like
一个比较不错的PHP日历类分享
2014/11/18 PHP
thinkphp模板赋值与替换实例简述
2014/11/24 PHP
实例分析PHP中PHPMailer发邮件
2017/12/13 PHP
PHP中ltrim()函数的用法与实例讲解
2019/03/28 PHP
Laravel框架处理用户的请求操作详解
2019/12/20 PHP
php+ajax实现文件切割上传功能示例
2020/03/03 PHP
JavaScript 编程引入命名空间的方法与代码
2007/08/13 Javascript
基于jquery的图片懒加载js
2010/06/30 Javascript
Js 弹出框口并返回值的两种常用方法
2010/12/30 Javascript
一个挺有意思的Javascript小问题说明
2011/09/26 Javascript
自定义jQuery选项卡插件实例
2013/03/27 Javascript
复制js对象方法(详解)
2013/07/08 Javascript
javascript 数字格式化输出的实现代码
2013/12/10 Javascript
js实现本地时间同步功能
2017/08/26 Javascript
基于vue.js路由参数的实例讲解——简单易懂
2017/09/07 Javascript
Angular单元测试之事件触发的实现
2020/01/20 Javascript
小程序实现可拖动的悬浮按钮
2020/09/07 Javascript
[05:35]DOTA2英雄梦之声_第13期_拉比克
2014/06/21 DOTA
简单谈谈Python中的元祖(Tuple)和字典(Dict)
2017/04/21 Python
Python 实现Windows开机运行某软件的方法
2018/10/14 Python
Python 3.8正式发布重要新功能一览
2019/10/17 Python
python随机数分布random均匀分布实例
2019/11/27 Python
python3+opencv 使用灰度直方图来判断图片的亮暗操作
2020/06/02 Python
Python内置函数property()如何使用
2020/09/01 Python
Python图像读写方法对比
2020/11/16 Python
两种CSS3伪类选择器详细介绍
2013/12/24 HTML / CSS
用CSS3的box-reflect来制作倒影效果
2016/11/15 HTML / CSS
J2EE面试题
2016/03/14 面试题
工程测量与监理专业应届生求职信
2013/11/27 职场文书
班子四风对照检查材料
2014/08/21 职场文书
优秀共产党员演讲稿
2014/09/04 职场文书
2014年保洁工作总结
2014/11/24 职场文书
乔布斯辞职信(中英文对照)
2015/05/12 职场文书
2015年街道办事处团委工作总结
2015/10/14 职场文书
工作转正自我鉴定范文
2019/06/21 职场文书
Python中json.load()和json.loads()有哪些区别
2021/06/07 Python