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新手中常见的疑惑及解答
Jun 14 Python
Python对列表去重的多种方法(四种方法)
Dec 05 Python
python3.x实现发送邮件功能
May 22 Python
解决DataFrame排序sort的问题
Jun 07 Python
python把数组中的数字每行打印3个并保存在文档中的方法
Jul 17 Python
Python面向对象程序设计示例小结
Jan 30 Python
Python进阶之@property动态属性的实现
Apr 01 Python
Python3.5装饰器原理及应用实例详解
Apr 30 Python
快速解决vue.js 模板和jinja 模板冲突的问题
Jul 26 Python
如何在Cloud Studio上执行Python代码?
Aug 09 Python
如何通过命令行进入python
Jul 06 Python
matplotlib.pyplot.plot()参数使用详解
Jul 28 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 文本文件的读取效率
2012/02/10 PHP
PHP优于Node.js的五大理由分享
2012/09/15 PHP
ThinkPHP表单令牌错误的相关解决方法分析
2016/05/20 PHP
实例讲解PHP中使用命名空间
2019/01/27 PHP
javascript引用对象的方法代码
2007/08/13 Javascript
jQuery创建插件的代码分析
2011/04/14 Javascript
jquery 多行文本框(textarea)高度变化
2013/07/03 Javascript
一个获取第n个元素节点的js函数
2014/09/02 Javascript
Nodejs为什么选择javascript为载体语言
2015/01/13 NodeJs
jQuery+CSS3实现树叶飘落特效
2015/02/01 Javascript
node.js请求HTTPS报错:UNABLE_TO_VERIFY_LEAF_SIGNATURE\的解决方法
2016/12/18 Javascript
Vuex之理解Getters的用法实例
2017/04/19 Javascript
CSS3+JavaScript实现翻页幻灯片效果
2017/06/28 Javascript
vue2.0 axios前后端数据处理实例代码
2017/06/30 Javascript
jquery 输入框查找关键字并提亮颜色的实例代码
2018/01/23 jQuery
解决layui上传文件提示上传异常,实际文件已经上传成功的问题
2018/08/19 Javascript
Python FTP操作类代码分享
2014/05/13 Python
浅析Python中的赋值和深浅拷贝
2017/08/15 Python
python使用turtle库与random库绘制雪花
2018/06/22 Python
对numpy中向量式三目运算符详解
2018/10/31 Python
浅谈python3 构造函数和析构函数
2020/03/12 Python
离线状态下在jupyter notebook中使用plotly实例
2020/04/24 Python
python如何调用百度识图api
2020/09/29 Python
Python tkinter之ComboBox(下拉框)的使用简介
2021/02/05 Python
用pip给python安装matplotlib库的详细教程
2021/02/24 Python
结合CSS3的新特性来总结垂直居中的实现方法
2016/05/30 HTML / CSS
佐卡伊官网:中国知名珠宝品牌
2017/02/05 全球购物
荷兰超市:DEEN
2018/03/14 全球购物
行政助理的职责
2013/11/14 职场文书
青年志愿者活动总结
2014/04/26 职场文书
公开承诺书格式
2014/05/21 职场文书
员工工作能力评语
2014/12/31 职场文书
2015初中政教处工作总结
2015/07/21 职场文书
大学校园餐饮创业计划书
2019/08/07 职场文书
Python采集爬取京东商品信息和评论并存入MySQL
2022/04/12 Python
Ubuntu Server 安装Tomcat并配置systemctl
2022/04/28 Servers