Pytorch(一)数据类型与张量形状
回顾一下pytorch,顺便记录一下
import torch
import numpy as np
a = torch.FloatTensor([[1, 2], [3, 4], [5, 6]]) # 第一种创建指定张量的方法
print(a)
print("a.shape:", a.shape) # 打印形状
#tensor([[1., 2.],[3., 4.],[5., 6.]])
# a.shape: torch.Size([3, 2])
a1 = torch.tensor([[1, 2], [3, 4], [4, 5]], dtype=torch.float) # 第二种创建指定张量的方法(推荐)
print(a1)
#tensor([[1., 2.],[3., 4.],[5., 6.]])
print("a.size:", a.size())
# a.size: torch.Size([3, 2])
print("a.dtype:", a.dtype) # 打印数据类型
# a.dtype: torch.float32
print("a.numel:", a.numel()) # 返回元素的个数
# a.numel: 6
b = a.view(1, -1)
print('b:', b)
# b: tensor([[1., 2., 3., 4., 5., 6.]])
print('b.shape:', b.shape) # view方法,被赋值的张量大小必须与原张量相同,相当于numpy中的reshape
# b.shape: torch.Size([1, 6])
c = a.resize_(2, 4) # resize可以随即大小并保留之前的值
print('c:', c)
# c: tensor([[1.0000e+00, 2.0000e+00, 3.0000e+00, 4.0000e+00],[5.0000e+00, 6.0000e+00, 1.2121e+04, 7.1846e+22]])
print('c.shape:', c.shape)
# c.shape: torch.Size([2, 4])