欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Pytorch tensor维度理解

程序员文章站 2022-06-11 22:09:13
...

三维:

import torch
from torch.autograd import Variable
##单位矩阵来模拟输入
input = torch.ones(1, 5, 5)
input = Variable(input)

输出:

tensor([[[1., 1., 1., 1., 1.],
         [1., 1., 1., 1., 1.],
         [1., 1., 1., 1., 1.],
         [1., 1., 1., 1., 1.],
         [1., 1., 1., 1., 1.]]])

调整括号得到如下形式:

[
    [
        [1., 1., 1., 1., 1.],
        [1., 1., 1., 1., 1.],
        [1., 1., 1., 1., 1.],
        [1., 1., 1., 1., 1.],
        [1., 1., 1., 1., 1.]
    ]
]

如上为三维向量, 即(1,5,5)是包含了1个5行5列的矩阵;第一个数字即指包含几个二维矩阵

四维:

input = torch.ones(1, 1, 5, 5)
input = Variable(input)

输出:

tensor([[[[1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.]]]])

调整括号得到如下形式:

[
    [
        [
            [1., 1., 1., 1., 1.],
            [1., 1., 1., 1., 1.],
            [1., 1., 1., 1., 1.],
            [1., 1., 1., 1., 1.],
            [1., 1., 1., 1., 1.]
        ]
    ]
]

如上为四维向量, 即(1, 1, 5, 5)是在三维的基础上增加了一维, 即一个四维向量

input1 = torch.ones(1, 2, 5, 5)
input1 = Variable(input1)

输出:

tensor([[[[1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.]],

         [[1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.]]]])
[
    [
        [
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.]
        ],

        [
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.],
          [1., 1., 1., 1., 1.]
        ]
    ]
]

如上为四维向量, 即(1, 2, 5, 5)是在三维的基础上增加了一维

相关标签: Pytorch