1. 介绍
\quad 在 P y T o r c h PyTorch PyTorch 中,torch.Tensor
是一种主要的 t e n s o r tensor tensor 类型,是torch.FloatTensor()
的别名。所有的 t e n s o r tensor tensor 都是torch.Tensor
的实例。
\quad 而torch.tensor()
是一个函数,函数原型是:
torch.tensor(data, dtype=None, device=None, requires_grad=False)
\quad 其中 d a t a data data 可以是:list
、tuple
、NumPy ndarray
、scalar
和其他类型。
\quad torch.tensor
会从 d a t a data data 中的数据部分做拷贝(而不是直接引用),根据原始数据类型生成相应的torch.LongTensor
、torch.FloatTensor
和torch.DoubleTensor
或者根据 d t y p e dtype dtype 的值生成相应数据类型。
2. 区别
- t o r c h . T e n s o r ( d a t a ) torch.Tensor(data) torch.Tensor(data):将输入的
data
转化torch.FloatTensor()
- t o r c h . t e n s o r ( d a t a ) torch.tensor(data) torch.tensor(data):将
data
转化为torch.FloatTensor
、torch.LongTensor
、torch.DoubleTensor
等类型,转化类型依据于data
的类型或者dtype
的值。 - t o r c h . T e n s o r ( ) torch.Tensor() torch.Tensor() 可以创建一个空的 F l o a t T e n s o r FloatTensor FloatTensor,使用 t o r c h . t e n s o r ( ) torch.tensor() torch.tensor() 时则会报错。
\quad 当你想要创建一个空的tensor时候,可以使用如下的方法:
\quad\quadtorch.Tensor() # tensor([])
\quad\quadtorch.tensor(()) # tensor([])
\quad\quadtorch.empty([]) # tensor(0.)