PyTorch中squeeze()和unsqueeze()详解

pytorch中squeeze()和unsqueeze()作用


squeeze()

squeeze() 用于在张量的指定维度插入新的维度 (为1) 得到维度提升的张量。

unsqueeze()

unsqueeze() 用于移除指定或者所有维度大小为1的维度,从而得到维度减小的新张量。


演示代码:

import torch

a=torch.arange(0,6)
b=a.view(2,3) # 维度:2*3
print("b",b)

c=b.unsqueeze(0) # 维度:1*2*3
print("c",c)

d=c.unsqueeze(2) # 维度:1*2*1*3
print("d",d)

e=d.squeeze(0) # 维度:2*1*3
print("e",e)

f=e.squeeze(0) # 维度:2*1*3
print("f",f)

结果显示:

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

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

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

        [[3, 4, 5]]])
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

袁博特

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值