【问题标题】:Change shape of pytorch tensor改变pytorch张量的形状
【发布时间】:2022-01-16 13:49:27
【问题描述】:

我有一个 pytorch 张量,其形状为:torch.size([6000, 30, 30, 9]),我想将其转换为形状:torch.size([6000, 8100]),这样我就可以从包含 30 个元素的 6000 个元素开始,这些元素又包含 30 个元素,而这些元素又包含 9元素 6000 个元素包含 8100 个元素。如何实现?

【问题讨论】:

    标签: numpy pytorch


    【解决方案1】:

    假设您有一个形状为 torch.size([6000, 30, 30, 9]) 的张量 x。在 Pytorch 中,要将其形状更改为 torch.size([6000, 8100]),可以使用函数 view 或 reshape 保持张量的第一个维度(6000)并展平其余维度(30,30 ,9) 如下:

    import torch
    
    x= torch.rand(6000, 30, 30, 9)
    print(x.shape) #torch.Size([6000, 30, 30, 9])
    x=x.view(6000,-1) # or x= x.view(x.size(0),-1)
    print(x.shape) #torch.Size([6000, 8100])
    
    x= torch.rand(6000, 30, 30, 9)
    print(x.shape) #torch.Size([6000, 30, 30, 9])
    x=x.reshape(6000,-1) # or x= x.reshape(x.size(0),-1)
    print(x.shape) #torch.Size([6000, 8100])
    

    【讨论】:

      猜你喜欢
      • 2020-10-04
      • 1970-01-01
      • 2021-07-22
      • 2019-02-21
      • 2022-12-12
      • 1970-01-01
      • 2018-11-20
      • 2021-02-26
      • 1970-01-01
      相关资源
      最近更新 更多