快捷方式

torch.Tensor.expand

Tensor.expand(*sizes) Tensor

返回 self 张量的新视图,其中大小为 1 的维度被扩展到更大的尺寸。

将 -1 作为维度大小表示不改变该维度的大小。

张量也可以扩展到更多的维度,新的维度将添加到前面。对于新维度,大小不能设置为 -1。

扩展张量不会分配新的内存,而只是在现有张量上创建一个新视图,其中大小为 1 的维度通过将 stride 设置为 0 扩展到更大的尺寸。任何大小为 1 的维度都可以扩展到任意值而无需分配新的内存。

参数

*sizes (torch.Sizeint...) – 期望的扩展大小

警告

扩展张量的多个元素可能指向同一个内存位置。因此,原地操作(特别是向量化操作)可能导致不正确的行为。如果需要写入张量,请先对其进行克隆。

示例

>>> x = torch.tensor([[1], [2], [3]])
>>> x.size()
torch.Size([3, 1])
>>> x.expand(3, 4)
tensor([[ 1,  1,  1,  1],
        [ 2,  2,  2,  2],
        [ 3,  3,  3,  3]])
>>> x.expand(-1, 4)   # -1 means not changing the size of that dimension
tensor([[ 1,  1,  1,  1],
        [ 2,  2,  2,  2],
        [ 3,  3,  3,  3]])

文档

查阅 PyTorch 的完整开发者文档

查看文档

教程

获取面向初学者和高级开发者的深度教程

查看教程

资源

查找开发资源并获得问题解答

查看资源