函数调用形式:torch.unsqueeze(input, dim) → Tensor

  • 功能: 在指定位置 dim 插入一个大小为1的维度
  • input: old tensor
  • dim: 插入维度的位置。
  • dim 范围为:[-input.dim() - 1, input.dim() + 1)。
  • 当 dim 为负数时,表示从后向前计数(即,dim == -1 和 dim == input.dim() 等效)。
  • return: new tensor

详情见pytorch官方文档:unsqueeze()函数

代码如下:

import torchprint('============= unsqueeze() 函数用法 ===============')
x = torch.tensor([[1,2,3], [4,5,6]])
print('\nx : ', x,'\nx.shape : ', x.shape, # (2, 3)'\nx.dim : ', x.dim()    # 2
)y = torch.unsqueeze(x, 0) # 在第 0 维插入
print('\ny : ', y,'\ny.shape : ', y.shape, # (1, 2, 3)'\ny.dim : ', y.dim()    # 3
)z1 = torch.unsqueeze(x, 1) # 在第 1 维插入
print('\nz1 : ', z1,'\nz1.shape : ', z1.shape, # (2, 1, 3)'\nz1.dim : ', z1.dim()    # 3
)z2 = torch.unsqueeze(x, 2)    # 在第 2 维插入(原tensor维度最右边)
print('\nz2 : ', z2,'\nz2.shape : ', z2.shape, # (2, 3, 1)'\nz2.dim : ', z2.dim()
)z3 = torch.unsqueeze(x, -1) # 负号代表从后向前加维度,-1表示在最后一个维度后面加一个为1的维度。**z3 -> -1 与 z2 -> input.dim() 等效。**
print('\nz3 : ', z3,'\nz3.shape : ', z3.shape,'\nz3.dim : ', z3.dim()
)

输出结果如下:

xx :  tensor([[1, 2, 3],[4, 5, 6]])
x.shape :  torch.Size([2, 3])
x.dim :  2y :  tensor([[[1, 2, 3],[4, 5, 6]]])
y.shape :  torch.Size([1, 2, 3])
y.dim :  3z1 :  tensor([[[1, 2, 3]],[[4, 5, 6]]])
z1.shape :  torch.Size([2, 1, 3])
z1.dim :  3z2 :  tensor([[[1],[2],[3]],[[4],[5],[6]]])
z2.shape :  torch.Size([2, 3, 1])
z2.dim :  3z3 :  tensor([[[1],[2],[3]],[[4],[5],[6]]])
z3.shape :  torch.Size([2, 3, 1])
z3.dim :  3

torch.unsqueeze(input, dim)函数相关推荐

  1. pytorch torch.cumsum(input, dim, out=None)函数(沿轴逐级累加)

    torch.cumsum(input, dim, out=None) → Tensor 返回输入沿指定维度的累积和.例如,如果输入是一个N元向量,则结果也是一个N元向量,第i 个输出元素值为 yi=x ...

  2. torch.gather(input, dim, index, *, sparse_grad=False, out=None) → Tensor

    torch.gather(input, dim, index, *, sparse_grad=False, out=None) → Tensor 沿dim指定的轴聚集值. 对于三维张量,输出由以下公式 ...

  3. Pytorch中torch.unsqueeze()和torch.squeeze()函数解析

    一. torch.squeeze()函数解析 1. 官网链接 torch.squeeze(),如下图所示: 2. torch.squeeze()函数解析 torch.squeeze(input, di ...

  4. torch unsqueeze()详解

    Torch官网解释: torch.unsqueeze(input, dim) → Tensor Returns a new tensor with a dimension of size one in ...

  5. pytorch torch.unsqueeze

    squeeze的反向操作,增加size=1的维度 应用 >>> x = torch.tensor([1, 2, 3, 4]) >>> torch.unsqueeze ...

  6. pytorch每日一学47(torch.unsqueeze())在指定维度上增加一个大小为1的维度

    第47个方法 torch.unsqueeze(input, dim) → Tensor 很明显这个方法是与 torch.squeeze()进行相反的操作,torch.squeeze()是将移出tens ...

  7. torch.unsqueeze官方文档解读

    文章目录 前言 1. 功能介绍 2. 参数说明 3. 代码举例 前言 本文是对torch.unsqueeze官方文档的解读,加入部分代码示例,方便理解. 1. 功能介绍 torch.unsqueeze ...

  8. torch.unsqueeze和 torch.squeeze() 详解

    1. torch.unsqueeze 详解 torch.unsqueeze(input, dim, out=None) 作用:扩展维度 返回一个新的张量,对输入的既定位置插入维度 1 注意: 返回张量 ...

  9. 【终于有人搞懂了】详解 torch.unsqueeze() 和 torch.squeeze()

    详解 torch.unsqueeze 和 torch.squeeze 1. 入门测试 2. 深入研究 2.1 torch.unsqueeze 详解 2.2 unsqueeze_和 unsqueeze ...

最新文章

  1. PYTHON的函数对参数解析分析
  2. Java NIO3:缓冲区Buffer
  3. 我的2021年终总结:初为人父,从头再来
  4. strtolower_PHP strtolower()函数与示例
  5. Hi Windows Live Writer
  6. 工作的思考十四:增强看待问题(BUG)的敏锐度
  7. struts中获取多选按钮html:checkbox的值
  8. Mac下安装jdk,并编写hello world
  9. 20个开发人员非常有用的Java功能代码(二)
  10. 数据库三大范式及五大约束
  11. SQL Server 数据库无法重命名的解决
  12. i5 1340p和r7 7735h差距 酷睿i51340p和锐龙r77735h对比
  13. java获取excel嵌入对象_EXCEL,使用嵌入对象(.dot)作为报告模板
  14. JVM--GC相关记录
  15. SQL Server decimal 和 numeric 区别
  16. dede后台登陆后一片空白的解决办法汇总
  17. IO进程——系统IO与文件IO
  18. 上千年等待终唤“热潮“,汉服的未来会一帆风顺吗?
  19. 左支座零件的机械加工工艺规程及工艺装备设计(设计说明书+CAD图纸+任务书+工序卡+过程卡+文献+翻译)
  20. 华为9306查看光功率

热门文章

  1. python调用google翻译_python调用百度翻译、谷歌翻译
  2. 家庭网络文件共享的几种方式
  3. bzoj2215[POI2011]Conspiracy
  4. 【C语言】常见关键字
  5. 微信赚钱,应用开放平台
  6. istio-code
  7. 一男子连开28个黄网被捕,网友:就这点钱,你还是找个班上吧
  8. 剑指Offer-66:构建乘积数组
  9. 剑指Offer对答如流系列 - 构建乘积数组
  10. 如何在HTML做个按钮