torch.Tensor
torch.Tensor
是一种包含单一数据类型元素的多维矩阵。torch.Tensor
是默认的tensor类型(torch.FlaotTensor
)的简称
Torch定义了七种CPU tensor类型和八种GPU tensor类型:
Data tyoe | CPU tensor | GPU tensor |
---|---|---|
32-bit floating point | torch.FloatTensor |
torch.cuda.FloatTensor |
64-bit floating point | torch.DoubleTensor |
torch.cuda.DoubleTensor |
16-bit floating point | N/A | torch.cuda.HalfTensor |
8-bit integer (unsigned) | torch.ByteTensor |
torch.cuda.ByteTensor |
8-bit integer (signed) | torch.CharTensor |
torch.cuda.CharTensor |
16-bit integer (signed) | torch.ShortTensor |
torch.cuda.ShortTensor |
32-bit integer (signed) | torch.IntTensor |
torch.cuda.IntTensor |
64-bit integer (signed) | torch.LongTensor |
torch.cuda.LongTensor |
根据可选择的大小和数据新建一个tensor
如果没有提供参数,将会返回一个空的零维张量。如果提供了
numpy.ndarray
,torch.Tensor
或torch.Storage
,将会返回一个有同样参数的tensor.如果提供了python序列,将会从序列的副本创建一个tensor。
-
class torch.Tensor
class torch.Tensor(sizes)
class torch.Tensor(size)
class torch.Tensor(sequence or list)
class torch.Tensor(ndarray)
class torch.Tensor(tensor)
class torch.Tensor*(storage)
Numpy array转换为Tensor
tensor = torch.from_numpy(np.array())
Tensor转换为Numpy array
np.array = tensor.numpy()
Tensor返回一个数值
torch.Tensor.item()
: 是得到一个元素张量里面的元素值(只能是一个值,比如loss,acc)
Tensor返回一个列表
tolist()
将对象转为指定类型
type(new_type=None, async=False)
Variable
Variable API
几乎和 Tensor API
一致 (除了一些in-place
方法,这些in-place
方法会修改 required_grad=True
的 input
的值)。多数情况下,将Tensor
替换为Variable
,代码一样会正常的工作。由于这个原因,我们不会列出Variable
的所有方法,你可以通过torch.Tensor
的文档来获取相关知识。
- detach(): Returns a new Variable, detached from the current graph.
参考:
Pytorch Docs
网友评论