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实现的ini文件操作类分享
Nov 20 Python
Python使用Matplotlib实现Logos设计代码
Dec 25 Python
Python实现合并同一个文件夹下所有txt文件的方法示例
Apr 26 Python
Python minidom模块用法示例【DOM写入和解析XML】
Mar 25 Python
Python实现打砖块小游戏代码实例
May 18 Python
PyQt5 在label显示的图片中绘制矩形的方法
Jun 17 Python
python多线程同步之文件读写控制
Feb 25 Python
python 采用paramiko 远程执行命令及报错解决
Oct 21 Python
PyQt5 closeEvent关闭事件退出提示框原理解析
Jan 08 Python
Python+appium框架原生代码实现App自动化测试详解
Mar 06 Python
使用Python对Dicom文件进行读取与写入的实现
Apr 20 Python
Python3.9.0 a1安装pygame出错解决全过程(小结)
Feb 02 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输出控制功能在简繁体转换中的应用
2006/10/09 PHP
php 自写函数代码 获取关键字 去超链接
2010/02/08 PHP
php入门学习知识点二 PHP简单的分页过程与原理
2011/07/14 PHP
php 实现简单的登录功能示例【基于thinkPHP框架】
2019/12/02 PHP
javascript iframe内的函数调用实现方法
2009/07/19 Javascript
javascript instanceof 内部机制探析
2010/10/15 Javascript
JS中批量给元素绑定事件过程中的相关问题使用闭包解决
2013/04/15 Javascript
jQuery随机切换图片的小例子
2013/04/18 Javascript
jQuery Ajax异步处理Json数据详解
2013/11/05 Javascript
javascript 面向对象封装与继承
2014/11/27 Javascript
node.js中的http.response.writeHead方法使用说明
2014/12/14 Javascript
jQuery中map()方法用法实例
2015/01/06 Javascript
Javascript实现的简单右键菜单类
2015/09/23 Javascript
Angularjs实现多个页面共享数据的方式
2016/03/29 Javascript
vue中用动态组件实现选项卡切换效果
2017/03/25 Javascript
微信小程序 swiper组件构建轮播图的实例
2017/09/20 Javascript
vue计算属性和监听器实例解析
2018/05/10 Javascript
vue data变量相互赋值后被实时同步的解决步骤
2020/08/05 Javascript
举例详解Python中threading模块的几个常用方法
2015/06/18 Python
python连接mysql实例分享
2016/10/09 Python
PyQt5实现下载进度条效果
2018/04/19 Python
浅析python3中的os.path.dirname(__file__)的使用
2018/08/30 Python
influx+grafana自定义python采集数据和一些坑的总结
2018/09/17 Python
python创建学生管理系统
2019/11/22 Python
英国高档时尚男装购物网站:MR PORTER
2016/08/09 全球购物
意大利高端时尚买手店:Stefania Mode
2018/03/01 全球购物
法国票务网站:Ticketmaster法国
2018/07/09 全球购物
凯蒂·佩里个人女鞋品牌:Katy Perry Collections
2019/04/04 全球购物
介绍一下linux的文件系统
2012/03/20 面试题
出生医学证明样本
2014/01/17 职场文书
行政主管职责范本
2014/03/07 职场文书
西安兵马俑导游词
2015/02/02 职场文书
青岛海底世界导游词
2015/02/11 职场文书
计划生育个人总结
2015/03/02 职场文书
2015秋季开学典礼主持词
2015/07/16 职场文书
MySQL深分页问题解决思路
2022/12/24 MySQL