torch.Tensor 是一种包含单一数据类型元素的多维矩阵。Torch 定义了七种 CPU tensor类型和八种 GPU tensor 类型:
torch.Tensor 是默认的 tensor 类型(torch.FloatTensor)的简称。
一个张量 tensor 可以从 Python 的 list 或序列构建:
例子:
>>> torch.FloatTensor([[1, 2, 3], [4, 5, 6]])
1 2 3
4 5 6
[torch.FloatTensor of size 2x3]
一个空张量 tensor 可以通过规定其大小来构建:
例子:
>>> torch.IntTensor(2, 4).zero_()
0 0 0 0
0 0 0 0
[torch.IntTensor of size 2x4]
可以用 python 的索引和切片来获取和修改一个张量 tensor 中的内容:
例子:
>>> x = torch.FloatTensor([[1, 2, 3], [4, 5, 6]])
>>> print(x[1][2])
6.0
>>> x[0][1] = 8
>>> print(x)
1 8 3
4 5 6
[torch.FloatTensor of size 2x3]
每一个张量 tensor 都有一个相应的 torch.Storage 用来保存其数据。类tensor 提供了一个存储的多维的、横向视图,并且定义了在数值运算。
注:会改变tensor的函数操作会用一个下划线后缀来标示。比如,torch.FloatTensor_()会在原地计算绝对值,并返回改变后的tensor,而tensor.FloatTensor.abs()将会在一个新的tensor中计算结果。
class torch.Tensor
class torch.Tensor(*sizes)
class torch.Tensor(size)
class torch.Tensor(sequence)
class torch.Tensor(ndarray)
class torch.Tensor(tensor)
class torch.Tensor(storage)
根据可选择的大小和数据新建一个 tensor。如果没有提供参数,将会返回一个空的零维张量。如果提供了 numpy.ndarray,torch.Tensor 或 torch.Storage将会返回一个有同样参数的 tensor. 如果提供了 python 序列,将会从序列的副本创建一个 tensor。
abs()–>Tensor请查看 torch.abs()
abs_() –>Tensor abs() 的 in-place 运算形式
acos() –>Tensor 请查看 torch.acos()
acos_() –>Tensor:acos() 的 in-place 运算形式
add(value) 请查看 torch.add()
add_(value) add() 的 in-place 运算形式
addbmm(beta=1, mat, alpha=1, batch1, batch2) –>Tensor 请查看 torch.addbmm()
addbmm_(beta=1, mat, alpha=1, batch1, batch2) –>Tensor addbmm() 的 in-place 运
算形式
addcdiv(value=1, tensor1, tensor2) –>Tensor 请查看 torch.addcdiv()
addcdiv_(value=1, tensor1, tensor2) –>Tensor addcdiv() 的 in-place 运算形式
addcmul(value=1, tensor1, tensor2) –>Tensor 请查看 torch.addcmul()
addcmul_(value=1, tensor1, tensor2) –>Tensor addcmul() 的 in-place 运算形式
addmm(beta=1, mat, alpha=1, mat1, mat2) –>Tensor 请查看 torch.addmm()
addmm_(beta=1, mat, alpha=1, mat1, mat2) –>Tensor addmm() 的 in-place 运算形式
addmv(beta=1, tensor, alpha=1, mat, vec) –>Tensor 请查看 torch.addmv()
addmv_(beta=1, tensor, alpha=1, mat, vec) –>Tensor addmv() 的 in-place 运算形式
addr(beta=1, alpha=1, vec1, vec2) –>Tensor 请查看 torch.addr()
addr_(beta=1, alpha=1, vec1, vec2) –>Tensor addr() 的 in-place 运算形式
apply_(callable) –>Tensor 将函数 callable 作用于 tensor 中每一个元素,并将每个元 素用callable函数返回值替代。
该函数只能在 CPU tensor 中使用,并且不应该用在有较高性能要求的代码块。
本文介绍了PyTorch中的张量概念及其基本操作方法。详细解释了如何创建不同类型的张量,包括从列表构建张量及创建空张量等。此外,还说明了如何通过索引和切片来访问和修改张量中的数据。

3万+

被折叠的 条评论
为什么被折叠?



