1. 导入pytorch包

    1
    import torch
  2. 创建一个空的5x3张量

    1
    a = torch.empty(5, 3)
    2
    a

    运行结果

    1
    tensor([[1.0286e-38, 1.0653e-38, 1.0194e-38],
    2
            [8.4490e-39, 1.0469e-38, 9.3674e-39],
    3
            [9.9184e-39, 8.7245e-39, 9.2755e-39],
    4
            [8.9082e-39, 9.9184e-39, 8.4490e-39],
    5
            [9.6429e-39, 1.0653e-38, 1.0469e-38]])
  1. 创建一个随机初始化的5x3张量

    1
    a = torch.rand(5,3)
    2
    a

    运行结果

    1
    tensor([[0.4531, 0.1300, 0.1161],
    2
            [0.6124, 0.3364, 0.9940],
    3
            [0.1615, 0.7629, 0.1061],
    4
            [0.1500, 0.1394, 0.9641],
    5
            [0.5013, 0.4010, 0.6922]])
  1. 创建一个5x3的0张量,类型为long

    1
    a = torch.zeros(5,3, dtype=torch.long)
    2
    a

    运行结果

    1
    tensor([[0, 0, 0],
    2
            [0, 0, 0],
    3
            [0, 0, 0],
    4
            [0, 0, 0],
    5
            [0, 0, 0]])
  1. 直接从数组创建张量

    1
    a = [0,0,0,0,0]
    2
    a = torch.Tensor(a)
    3
    a

    运行结果

    1
    tensor([0., 0., 0., 0., 0.])
  1. 创建一个5x3的单位张量,类型为double

    1
    a = torch.ones(5,3,dtype=torch.double)
    2
    a

    运行结果

    1
    tensor([[1., 1., 1.],
    2
            [1., 1., 1.],
    3
            [1., 1., 1.],
    4
            [1., 1., 1.],
    5
            [1., 1., 1.]], dtype=torch.float64)
  1. 从已有的张量创建相同维度的新张量,并且重新定义类型为float

    1
    b = torch.rand_like(a, dtype=torch.float)
    2
    b

    运行结果

    1
    tensor([[0.1447, 0.6513, 0.7169],
    2
            [0.7925, 0.5198, 0.7343],
    3
            [0.5184, 0.9191, 0.6490],
    4
            [0.1417, 0.1059, 0.5941],
    5
            [0.7550, 0.1228, 0.0218]])
  1. 打印一个张量的维度

    1
    print(b.shape)

    运行结果

    1
    2
    torch.Size([5, 3])
  1. 将两个张量相加

    1
    a = torch.rand(5,3)
    2
    b = torch.ones(5,3)
    3
    c = a + b
    4
    c

    运行结果

    1
    tensor([[1.8228, 1.9480, 1.4438],
    2
            [1.8308, 1.6466, 1.2891],
    3
            [1.5888, 1.2120, 1.1263],
    4
            [1.1515, 1.4744, 1.4247],
    5
            [1.7548, 1.6201, 1.2788]])
  1. 取张量的第一列

    1
    c[:,0]

    运行结果

    1
    Out[10]:
    2
    tensor([1.8228, 1.8308, 1.5888, 1.1515, 1.7548])