tensor.squeeze()和tensor.unsqueeze()

示例文件 test.py

import torch

A = torch.arange(6)
A = A.reshape(1, 1, 2, 3, -1)

B = A.squeeze()
print(A)
print(B)

C = B.unsqueeze(0)
D = B.unsqueeze(1)
E = B.unsqueeze(2)
print(C)
print(D)
print(E)

终端命令行和运行结果

<user>python test.py
tensor([[[[[0],
           [1],
           [2]],

          [[3],
           [4],
           [5]]]]])
tensor([[0, 1, 2],
        [3, 4, 5]])
tensor([[[0, 1, 2],
         [3, 4, 5]]])
tensor([[[0, 1, 2]],

        [[3, 4, 5]]])
tensor([[[0],
         [1],
         [2]],

        [[3],
         [4],
         [5]]])

从运算结果来看:

1)tensor.squeeze() 将输入张量形状中的1去除并返回。如果输入是形如(A×1×B×1×C×1×D),那么输出形状就为: (A×B×C×D)。

2)tensor.unsqueeze() 扩展维度,返回一个新的张量,对输入的既定位置插入维度1。

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值