torch.Tensor和torch.tensor的区别
介绍
在PyTorch 中,torch.Tensor
是主要的tensor类,所有的tensor都是torch.Tensor
的实例。
torch.Tensor
是torch.FloatTensor
的别名。
而torch.tensor
是一个函数,返回的是一个tensor,在ptorch官方文档中,描述如下:
torch.tensor(data, dtype=None, device=None, requires_grad=False) → Tensor
Constructs a tensor with data.
区别1
所以需要注意的一点是:
torch.Tensor(data)
是将输入的data转化torch.FloatTensor
torch.tensor(data)
:(当你未指定dype
的类型时)将data转化为torch.FloatTensor
、torch.LongTensor
、torch.DoubleTensor
等类型,转化类型依据于data的类型或者dtype
的值
区别2
tensor_without_data = torch.Tensor()
可以创建一个空的FloatTensor
而当你使用tensor_without_data = torch.tensor()
时候则会报错。