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实现获取某天是某个月中的第几周
Feb 11 Python
python循环监控远程端口的方法
Mar 14 Python
详解Python如何获取列表(List)的中位数
Aug 12 Python
Python实现的用户登录系统功能示例
Feb 05 Python
python实现随机梯度下降法
Mar 24 Python
Python中dict和set的用法讲解
Mar 28 Python
django 邮件发送模块smtp使用详解
Jul 22 Python
python sqlite的Row对象操作示例
Sep 11 Python
Pytorch使用MNIST数据集实现基础GAN和DCGAN详解
Jan 10 Python
Python ATM功能实现代码实例
Mar 19 Python
Python模拟登录和登录跳转的参考示例
Oct 30 Python
详解Flask开发技巧之异常处理
Jun 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中文本数据翻页(留言本翻页)
2006/10/09 PHP
PHP获得数组交集与差集的方法
2015/06/10 PHP
javascript背投广告代码的完善
2008/04/08 Javascript
javascript 字符串连接的性能问题(多浏览器)
2008/11/18 Javascript
jQuery 版元素拖拽原型代码
2011/04/25 Javascript
javascript获取文档坐标和视口坐标
2015/05/26 Javascript
学习JavaScript正则表达式
2015/11/13 Javascript
原生JS实现图片轮播效果
2016/12/26 Javascript
求js数组的最大值和最小值的四种方法
2017/03/03 Javascript
整理关于Bootstrap模态弹出框的慕课笔记
2017/03/29 Javascript
jquery将标签元素的高设为屏幕的百分比
2017/04/19 jQuery
Vue computed计算属性的使用方法
2017/07/14 Javascript
AngularJS 购物车全选/取消全选功能的实现方法
2017/08/14 Javascript
基于vue2.0实现仿百度前端分页效果附实现代码
2018/10/30 Javascript
layui点击数据表格添加或删除一行的例子
2019/09/12 Javascript
Python面向对象特殊成员
2017/04/24 Python
Python使用functools实现注解同步方法
2018/02/06 Python
Python排序算法之选择排序定义与用法示例
2018/04/29 Python
Python列表(list)所有元素的同一操作解析
2019/08/01 Python
python3.5 cv2 获取视频特定帧生成jpg图片
2019/08/28 Python
pandas和spark dataframe互相转换实例详解
2020/02/18 Python
python matplotlib.pyplot.plot()参数用法
2020/04/14 Python
详解CSS3媒体查询响应式布局bootstrap 框架原理实战(推荐)
2020/11/16 HTML / CSS
瑞士最大的图书贸易公司:Orell Füssli
2019/12/28 全球购物
JAVA和C++区别都有哪些
2015/03/30 面试题
杭州龙健科技笔试题.net部分笔试题
2016/01/24 面试题
百度JavaScript笔试题
2015/01/15 面试题
应聘医药代表职位求职信
2013/10/21 职场文书
会计专业推荐信
2013/10/29 职场文书
自荐书模板
2013/12/19 职场文书
前台文员我鉴定
2014/01/12 职场文书
运动会加油口号
2014/06/07 职场文书
装饰工程师岗位职责
2014/06/08 职场文书
个人年终总结结尾
2015/03/06 职场文书
2019年度行政文员工作计划范本!
2019/07/04 职场文书
Pytorch数据读取之Dataset和DataLoader知识总结
2021/05/23 Python